AgentKit Evalsで使えるテキスト比較Grader - String Check GraderとText Similarity Grader
Hello Evals! - AgentKitでシステムプロンプトを評価するで触れたように,Evalsには,人手によるアノテーションの他,Graderという自動評価の仕組みがあります。
組み込みGrader一覧はこちら: Add graders
今回は,テキスト比較に使えるString Check GraderとText Similarity Graderを動かしてみたメモです。
String Check Grader
リファレンス: String Check Grader
シンプルな文字列マッチを行うGraderです。比較演算子はeq, ne, like, ilikeをサポート。
たとえば,input.reference(答え。入力で与える)とsample.output_text(LLMの出力テキスト)が完全一致するかを評価するGraderを定義して動かすと,以下のようになります。お題は動物当てクイズです。

完全一致なので,もちろん漢字・ひらがな・カタカナ表記の違いも区別されます。カテゴリカルなタスク設定に向いてそう。
Text Similarity Grader
リファレンス: Text Similarity Grader
テキストの類似度で評価を行うGraderです。メトリクスとしてcosine, fuzzy_match, bleu, gleu, meteor, rouge_1, rouge_2, rouge_3, rouge_4, rouge_5, rouge_lをサポート。翻訳や要約といった生成タスクで使われる指標がひととおりサポートされています。
たとえば,input.reference(答え。入力で与える)とsample.output_text(LLMの出力テキスト)のBLEUスコアとROUGE-Lスコアを計算するGraderを定義して動かすと,以下のようになります。お題は日本語から任意言語への翻訳です。

これは Agents SDK+αのTipsを一人で書いていくアドカレ Advent Calendar 2025の21日目の記事です。