アプリケーションを改善するためには、それが向上しているかどうかを評価する方法が必要です。そのために、一般的な方法は変更があった際に同じ例のセットに対してテストすることです。Weaveには評価を追跡するためのファーストクラスの方法がありますDocumentation Index
Fetch the complete documentation index at: https://wb-21fd5541-feature-automate-reference-docs-generation.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
Model & Evaluation クラス。私たちは幅広いユースケースをサポートする柔軟性を可能にするために、最小限の前提条件で構築されたAPIを提供しています。
1. Model
Modelを構築し、プロンプト、温度などのシステムに関する情報をバージョン管理します。
Weaveは自動的にそれらが使用されたタイミングを記録し、変更があった場合にバージョンを更新します。
ModelはModelをサブクラス化し、predict関数定義を実装することで宣言されます。この関数は1つの例を受け取り、応答を返します。
Modelオブジェクトを通常通りインスタンス化できます:
詳細についてはModelsガイドをご覧ください。
2. いくつかの例を収集する
次に、モデルを評価するためのデータセットが必要です。DatasetはWeaveオブジェクトとして保存された例のコレクションです。Weave UIでデータセットをダウンロード、閲覧、評価を実行することができます。
ここではコードで例のリストを構築していますが、実行中のアプリケーションから一度に1つずつログに記録することもできます。
詳細についてはDatasetsガイドをご覧ください。
3. スコアリング関数を定義する
EvaluationはModelのパフォーマンスを、指定されたスコアリング関数またはweave.scorer.Scorerクラスのリストを使用して一連の例で評価します。
独自のスコアリング関数を作成するには、Scorersガイドで詳細をご覧ください。一部のアプリケーションでは、カスタム
Scorerクラスを作成したい場合があります - 例えば、標準化されたLLMJudgeクラスを特定のパラメータ(例:チャットモデル、プロンプト)、各行の特定のスコアリング、および集計スコアの特定の計算で作成する必要がある場合です。Scorerクラスを定義する方法については、次の章のModel-Based Evaluation of RAG applicationsのチュートリアルで詳細をご覧ください。4. 評価を実行する
これで、ExtractFruitsModelのfruitsデータセットに対する評価をスコアリング関数を使用して実行する準備ができました。
Pythonスクリプトから実行している場合は、
asyncio.runを使用する必要があります。ただし、Jupyterノートブックから実行している場合は、awaitを直接使用できます。5. 評価結果を表示する
Weaveは各予測とスコアのトレースを自動的に記録します。 評価によって出力されたリンクをクリックして、Weave UIで結果を表示します。
次のステップは?
以下の方法を学びましょう:- モデルのパフォーマンスを比較する:異なるモデルを試して結果を比較する
- 組み込みスコアラーを探索する:Weaveの組み込みスコアリング関数をScorers guide
- RAGアプリを構築する:RAG tutorialに従って、検索拡張生成の評価について学ぶ
- 高度な評価パターン:Model-Based EvaluationでLLMを審査員として使用する方法を学ぶ