RAGで社内文章をナレッジ化したい
ChatGPTを使い始めた当初から、やりたかったのが社内文章のナレッジ(知識化)です。社内には様々なドキュメントがありますが、数が増えるほど、必要な情報を選び出すのに手間がかかり、結局、死蔵されるだけになります。しかしRAGを使うことで、これらのドキュメントに日の目を見る機会を与えることができます。
語句説明
あくまでも、この記事中で用いている意味です。一般的な定義はネットで検索してください。
ナレッジ 知識のことです。この記事中では文章(ドキュメント)ファイルを示していることが多いです。
ナレッジ化 AIが理解できるような形式に変換することです。
RAG(Retrieval-Augmented Generation) 検索拡張生成機能です。ChatGPTが持っている知識に加えて、知識の拡張を行う機能です。
アシスタント この記事中では、RAGを使ったボット(bot)を指します。
ボット(bot) 人の代わりをする機能を指します。チャットボットは、人間からの問いかけに応答する機能です。
GPTs RAGの機能を簡単に実現するOpen AIのサービスです。
GTPsは簡単だけど不満もある
RAGはGTPsを使えば簡単に実現できます。しかし社内で活用しようとすると、少々使いづらい点もあります。
アカウントが必要 GTPsは無料アカウントでも利用できるようになりましたが、それでもOpenAIのアカウントが必要です。アカウントの使い回しも可能ですが、チャット履歴が残ってしまいます。プライバシーという観点からすると社員には抵抗がありそうです。
ナレッジの更新が面倒くさい ドキュメントの更新のたびに、GTPsへアップロードが必要になります。また数も20ファイルに制限されています。
OpenAI APIが、すべてを解決する
OpenAI APIを使えば、アカウントが不要になり、面倒な更新作業をプログラム化することができます。また、GTPsでは難しいWebページをナレッジ化することも可能になります。
社内のナレッジ
当社には、大きく分けて2つの文章形態があります
WORD等の文章ファイル
Notes Station 3によるWebページ(以下Notes3) QNAP NASで運用している共有ノート機能です。
当初、課題は2つあり「Notes3を、どう文章ファイルにするか?」という技術的問題と、「この2つをどう使い分けしていくか?」という運用の問題です。
前者は、Webページをマークダウン形式に変換し、ファイル化して管理することにしました。後者は、Notes3では導入的なページを作成し、文章ファイルへのリンクを作成することにしました。直接ナレッジファイルとして使わないのは、文章ファイルの多くが手順書のようなものも多く、ナレッジ化しても、チャットの回答には不向きと判断したからです。
ナレッジ管理アプリの機能
アプリでは下記の機能を持たせました。
ナレッジの場所を記録する 表示用のパス(又はURL)と、編集用のパス(又はURL)と、文責者メルアドを記録します。
OpenAI APIを用い、ナレッジ化する 更新されたファイルのみをアップロードし、ナレッジ化をおこないます。
ボット(アシスタント)とチャットします 現状では、ChatGTPからAPIで作成したアシスタントは使えませんので、専用のチャットアプリを作成する必要があります。質問は匿名でき記録も残しませんので、抵抗感の少ない仕様にしました。
回答への評価メール送信機能 回答の内容が不十分だった場合、文責者へ匿名でその旨のメール送信ができるようにしました。
出典とナレッジのリンク 文責者が評価メールを受け取っても、アシスタントの回答の引用元(出典)がわからないと、該当文章を改修できません。そこで回答と出典(ナレッジ)が辿れるような仕組みを組み込みました。
Comments