Azure上で動作するRAGアクセラレーター。独自のドキュメントに基づいてチャットアシスタントが回答し、出典をインライン引用で示します。
Azure-Samples/ai-rag-chat-evaluator
Azure AI Evaluate SDKとOpenAIベースの評価器を使って、RAGチャットアプリを評価するスクリプトとツール。
- スター
- 336
- フォーク
- 116
- 未解決の Issue
- 25
- 最終コミット
- 4 日前
これは何?
検索拡張生成(RAG)を使って構築したチャットアプリの回答品質を測定する、コマンドラインツールキットです。システムプロンプト、検索設定、GPTモデルのオプションなどのパラメーターによって回答は変わるため、変更のたびに正解となる質問と回答のペアと照らして評価できます。
評価ツールは稼働中のチャットエンドポイントに質問を送り、根拠性、関連性、一貫性、類似性などのGPTベースの指標と、レイテンシ、回答の長さ、引用の有無などのコードベースの指標で応答を採点します。また、ソース文書では答えられない質問も含めて正解データとなる質問セットを作成するジェネレーターも備えており、アプリが「わかりません」と答えられるかをテストできます。
結果は実行ごとに、質問ごとの詳細と要約統計を含めて保存されます。組み込みのレビューコマンドを使うと、ターミナル上で実行結果を比較し、それぞれの実行時のパラメーターを確認できます。このツールは、既定でキーなし認証を使うAzure OpenAIデプロイメント、またはopenai.comのアカウントに対応しており、azd CLIでセットアップできます。
主な機能
- 01根拠性、関連性、一貫性などのGPTベースの指標でRAGの回答を採点します。
- 02レイテンシ、回答の長さ、引用の有無などのコードベースの指標を算出します。
- 03文書では答えられない質問も含め、正解データとなる質問セットを生成します。
- 04ターミナルの差分表示で実行間の回答を比較し、変化した指標で絞り込めます。
- 05キーなし認証によるAzure OpenAI、またはopenai.comのアカウントに対応します。
ユースケース
- プロンプトや検索設定の変更で回答品質が向上するかを、デプロイ前に確認する。
- ソースに答えがないとき、RAGチャットアプリがどの程度「わからない」と認めるかを測定する。
- 質問数を絞って、開発中に簡易的な部分評価を実行する。
- 2回の実験結果を質問ごとに比較し、品質の低下を見つける。
クイックスタート
- 1
Python 3.10 以降をインストールする
- 2
Python の仮想環境を作成して有効化する
- 3
プロジェクトを仮想環境にインストールする
python -m pip install -e . - 4
サンプル設定を使って評価を実行する
python -m evaltools evaluate --config=example_config.json
使う前に知っておきたいこと
- 評価には GPT-4 クラスのモデルが必要なため、Azure OpenAI または openai.com のインスタンスが必要です。
- GPT ベースの評価器を実行するたびに、質問と使用する評価器ごとにトークン費用が発生します。
- 組み込みメトリクスは英語のプロンプトを使用するため、英語の回答にのみ適しています。
収録されている特集
トピック
よくある質問
- ai-rag-chat-evaluator とは?
- Azure AI Evaluate SDKとOpenAIベースの評価器を使って、RAGチャットアプリを評価するスクリプトとツール。 検索拡張生成(RAG)を使って構築したチャットアプリの回答品質を測定する、コマンドラインツールキットです。システムプロンプト、検索設定、GPTモデルのオプションなどのパラメーターによって回答は変わるため、変更のたびに正解となる質問と回答のペアと照らして評価できます。
- ai-rag-chat-evaluator は無料で使えますか?ライセンスは?
- ai-rag-chat-evaluator は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- ai-rag-chat-evaluator は今もメンテナンスされていますか?
- 活発にメンテナンス中。ai-rag-chat-evaluator の最終コミットは 2026年11月3日 です。
- ai-rag-chat-evaluator は何に使えますか?
- プロンプトや検索設定の変更で回答品質が向上するかを、デプロイ前に確認する。 ソースに答えがないとき、RAGチャットアプリがどの程度「わからない」と認めるかを測定する。 質問数を絞って、開発中に簡易的な部分評価を実行する。 2回の実験結果を質問ごとに比較し、品質の低下を見つける。
- ai-rag-chat-evaluator のインストール方法は?
- Python 3.10 以降をインストールする Python の仮想環境を作成して有効化する プロジェクトを仮想環境にインストールする: python -m pip install -e . サンプル設定を使って評価を実行する: python -m evaltools evaluate --config=example_config.json
- ai-rag-chat-evaluator はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/Azure-Samples/ai-rag-chat-evaluator
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
Pytestに着想を得た、RAG、エージェント、チャットボット、音声エージェントなどの指標を備える、LLMアプリ向けオープンソースPythonテストフレームワーク。
LLM-as-a-judge、ヒューリスティック、統計的な評価器でAIモデルの出力を採点するPython・TypeScriptライブラリ。
LLMアプリケーションの出力をテストするための、事前構築済み・カスタマイズ可能な評価器を備えたPythonおよびTypeScriptライブラリ。LLM-as-judgeによるスコアリングにも対応。
managed identityでAzure OpenAIを呼び出すPython製チャットWebアプリ。azdでAzure Container Appsにプロビジョニングしてデプロイできます。
生成AIで会話データや文書データを分析し、チャットでの探索と自動生成されるインサイトダッシュボードを提供するAzureベースのソリューションアクセラレーター。