「Azure OpenAIを使用した企業文書とのチャット」

Azure OpenAIを使用した企業文書とのチャット

ChatGPTのような大規模言語モデル(LLM)は、インターネットからの大量のテキストデータで訓練されたため、数十億のパラメータ内に膨大な知識を保持しています。しかし、彼らの知識は訓練に使用されたテキストデータに基づくものであり、それ以上の情報や、例えば企業のファイアウォールの背後に保存された個人データなどは持ちません。

これまで、この知識の制約を補完する最も一般的でアクセスしやすい方法は、リトリーバル・オーグメンテッド・ジェネレーション(RAG)と呼ばれる手法です(もう一つの手法はファインチューニングです)。これは、LLMが知識を持たないテキストベースのドキュメントを外部のデータベースに保存しておき、ユーザーがLLMに質問をすると、システムがこのデータベースから関連するドキュメントを取得し、ユーザーの質問に回答するための参照としてLLMに提供することで機能します。これはコンテキスト学習と呼ばれることもあり、より直訳すると「プロンプト stuffing(プロンプト詰め)」とも言えます。ほとんどのユースケースでは、RAGの手法がLLMのファインチューニングよりも好ましいです。ファインチューニングは通常よりも複雑で、特殊なハードウェア(GPU)とスキルセット(例:機械学習)が必要であり、一般的には実装コストが高くなります。

Microsoft Azureは、企業のドキュメントの知識をLLMに付加するためにRAGの手法を活用するためのクイックスタートソリューションをリリースしました。この会話エージェントは、Azureのインフラストラクチャ(OpenAIではなく)上でホストされているOpenAI LLM(gpt-3.5/ChatGPTまたはgpt-4)をアプリケーションが補完APIエンドポイント経由で呼び出します。このアプリケーションの使用は厳格なAzureのデータ保護ポリシーによってカバーされており、したがって使用中に行われるユーザーの対話や共有されるデータは安全かつプライベートに保たれます。価格はトークンの使用量に基づいています。

以下のサンプルのチャット対話は、参照としてのサンプルドキュメント(社会保障災害融資プログラムに関するもの)を使用して、このアプリケーションを示しています。LLMは「幻想を生み出す」傾向があり、真実でないまたはでっち上げの回答を返すことが知られています。そのため、各回答は元になったソースドキュメントを参照する引用とともに返されます。これにより、ユーザーは特定の回答の信憑性を検証することができます。

Each response is accompanied by a citation (in yellow). Click to zoom.

デプロイメントオプション

このソリューションは、ウェブアプリとして、またはAzure OpenAI Chatプレイグラウンドから直接パワーバーチャルエージェント(PVA)ボットとしてデプロイすることができます。データソースを設定して、利用可能な2つのデプロイメントオプションに基づいてデプロイする必要があります。

You can set the ‘system message’ of the chatbot before deploying the app.

ウェブアプリ

ウェブアプリは、ラップトップやモバイルデバイスのブラウザからアクセスできる基本的なチャットインターフェースです。このウェブアプリは、MicrosoftからMITライセンスでオープンソースとしてリリースされており、商用利用が許可されています。GitHubのリポジトリはこちらから見つけることができます。お客様は必要に応じてアプリケーションをカスタマイズすることができます。ウェブアプリは、Azureでホストされるアプリサービスとして「そのまま」デプロイすることができます。これにより、Azureのロゴとデフォルトのカラースキームが使用されます。

Sample deployment with custom branding.

パワーバーチャルエージェント

PVAボットは企業のウェブサイトにデプロイすることができます。また、ネイティブの統合機能を備えており、SharePointサイトやMS Teamsなどの他のMS製品に簡単に埋め込むことができます。

PVA bot embedded in a sharepoint site. Image Source
PVAボットがMS Teamsに埋め込まれています。画像の出典

チャットボットのナレッジデータベースに会社の文書を読み込む

以下のドキュメントタイプをボットのデータベースに読み込むことができます:txt、PDF、Wordファイル、PowerPointファイル、HTML。このチャットボットには、企業のポリシーや契約書、操作手順など、テキスト豊かなドキュメントを使用することを推奨します。Excel/CSVや関係データベースに格納されているような表形式のデータは推奨されません。アップロードされたドキュメントは、お客様のAzure環境内のストレージブロブに保存され、同様にプライベートに保持されます。

チャットボットは、Azure Cognitive Searchサービスのインデックスからデータをクエリします。シングルロケーション(ローカルフォルダまたはAzure Blobなど)からすべてのサポートされているドキュメントタイプをインデックスに読み込む直感的なインデクサを持っています。

検索サービス(ユーザーのクエリ/入力とインデックスからの関連ドキュメントの比較に基づいてチャットボットの応答の基礎となる)は、BM25検索アルゴリズムに基づくレキシカルまたはキーワードの比較、およびコサイン類似度や内積を用いた埋め込み/ベクトルベースの検索アルゴリズムをサポートしています。また、これら2つのハイブリッドもサポートしています – フルテキスト検索とベクトル検索の組み合わせ。

参考文献:

Azure OpenAI on your data (preview)

We will continue to update VoAGI; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

AIニュース

「チャットボットを使って自動運転車の会社が車をよりスマートにする」

イギリスに拠点を置く自動運転車企業Wayveは、チャットボット技術を利用して、自動車に彼らの運転の決定について質問しています

機械学習

SalesForce AIはCodeChainを導入:代表的なサブモジュールによる自己改訂の連鎖を通じたモジュラーコード生成のための革新的な人工知能フレームワーク

“`html 人工知能の研究における重要な目標の一つは、困難な問題に対処するための有用なコンピュータプログラムを提供で...

AIニュース

「A.I.ツールが手術台で脳腫瘍を診断」

新しい研究では、より迅速かつ正確な診断方法が説明されており、これによって外科医は手術の過度な進行にどれだけ積極的に対...

AI研究

スタンフォード研究所がFlashAttention-2を発表:長い文脈の言語モデルの速度と効率の飛躍

過去の1年間、自然言語処理は著しい進歩を遂げており、長い文脈を備えた言語モデルが登場しました。これらのモデルには、32k...

AIニュース

ジェネレーティブAIアプリケーションを構築するための最高のPythonツール チートシート

「VoAGI」新しいチートシートは、OpenAIやTransformersなど、ジェネラティブAIアプリを構築するためのトップPythonライブラリ...

データサイエンス

「プロダクションに適したRAGアプリケーションの12のチューニング戦略ガイド」

「実稼働のための検索増強生成(RAG)アプリケーションのパフォーマンス向上に調整できる戦略とパラメータ」