見出し画像

LangChain の チェーン・エージェントの評価

「LangChain」の チェーン・エージェントの評価についてまとめました。

1. LangChain の チェーン・エージェントの評価

「LangChain」の「チェーン」「エージェント」の評価は、難しい課題の1つです。これには主に、以下の2つの理由があります。

・データの欠如
・評価指標の欠如

2. データの欠如

2-1. 問題

通常、チェーン・エージェントを評価するための大量のデータはありません。「LLM」は「Few Shot」「Zero Shot」が可能なため、大量のデータなしにタスクを実行できます。これは、モデルの使用前に大量のデータを収集する必要があった、従来の機械学習とは対照的です。

2-2. 解決策

◎ LangChainDatasets
「HuggingFace」のコミュニティスペース「LangChainDatasets」を開始しました。これは、一般的なチェーン・エージェントを評価するためのオープンソースデータセットのコレクションです。データセットを投稿するには、コミュニティに参加するだけで、データセットをアップロードできます。

◎ QAGenerationChain
ユーザーが独自のデータセットをできるだけ簡単に作成できるように、「QAGenerationChain」を提供しています。これは、ドキュメントから質問応答タスクの評価に使用できる質問応答のペアを作成します。

3. 評価指標の欠如

3-1. 問題

ほとんどのチェーン・エージェントは、性能を評価する適切な評価指標 (metrics) がないタスクを実行しています。たとえば、何らかの形式のテキストを生成することです。生成されたテキストの評価は、分類予測や数値予測の評価よりもはるかに複雑です。

3-2. 解決策

・Tracing
1つ目の解決策は、評価指標を使用せず、結果を目で見て、チェーン・エージェントがどのように機能しているかを把握することです。これを支援するために、チェーン・エージェントの処理の可視化ツール「Tracing」を提供しています。

・EvalChain
2番目の解決策は、LLMを使用して出力を評価することです。これを目的とした、チェーン「QAEvalChain」「ContextQAEvalChain」「CoTQAEvalChain」とプロンプトを提供しています。

4. サンプルコード

評価のためのサンプルコードのノートブックは、次のとおりです。

Question Answering (State of Union) : 一般教書演説に関する質疑応答タスクの評価を示すノートブック
Question Answering (Paul Graham Essay) : ポール・グレアムのエッセイに対する質問応答タスクの評価を示すノートブック
SQL Question Answering (Chinook) : SQL データベース (チヌーク データベース) に対する質問応答タスクの評価を示すノートブック
Agent Vectorstore : 2つの異なるベクトルデータベース間でルーティング中に質問応答を行うエージェントの評価を示すノートブック
Agent Search + Calculator : ツールとして検索エンジンと電卓を使用して質問応答を行うエージェントの評価を示すノートブック
Evaluating an OpenAPI Chain : テストデータの生成方法を含むOpenAPIChainの評価を示すノートブック

Benchmarking Template : 独自の例を作成するために使用できるテンプレートノートブック

評価用の一般的なリソースも提供しています。

Question Answering : 一般的な質問応答システムの評価を目的とした LLM の概要。
Data Augmented Question Answering : 特定のドキュメント (正確には RetrievalQAChain) に焦点を当てた質問応答システムを評価するエンドツーエンドの例。
Hugging Face Datasets : 評価のためにHuggingFace からデータセットを読み込んで使用する例。

関連



この記事が気に入ったらサポートをしてみませんか?