0Pricing
AI Agents · レッスン

エージェントのEval-Driven Development

エージェントをリリースする前にevalを書きます。リグレッションなしで反復するための唯一の方法です。

「エージェントのEval-Driven Development」はCoddyKit上の無料AI Agentsレッスンです。 これはレッスン1/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはAI Agents学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 AI Agentsコースには全4レッスンが含まれています。

このレッスンの一部はまだ翻訳されておらず、英語で表示されています。

EvalsはAIのテストです

テストなしでコードをリリースすることはないでしょう。同じ考え方がLLMエージェントにも当てはまります。Evalsがなければ、変更のたびに結果は運任せです。

Eval-Driven Development(EDD)とは、変更をリリースする前にevalを書いておくことです。

EDDのループ

  1. 失敗するevalを書く:入力と期待される動作
  2. evalに合格するまでエージェントを改善する
  3. evalをテストスイートに追加する
  4. 変更のたびに実行する

何を評価するか

エージェントでは、複数のレベルで評価します。

  • コンポーネント — retrieverは正しいチャンクを返すか
  • ステップ — LLMは正しいツールを選ぶか
  • エンドツーエンド — エージェントは正しい最終回答を生成するか

評価データ

各evalの行には、最低限次の情報を含めます。

eval_example = {
    'input': 'What is our return policy?',
    'expected_output': 'mentions 30-day window',
    'expected_tool_calls': ['retrieve'],
    'metadata': {'tags': ['policy', 'common']}
}
for k, v in eval_example.items():
    print(f"{k}: {v}")

Run an Eval Suite

def run_evals(suite, agent):
    results = []
    for case in suite:
        actual = agent.run(case['input'])
        scores = [
            score_correctness(actual, case['expected_output']),
            score_tool_calls(actual.tool_calls, case['expected_tool_calls'])
        ]
        results.append({'case': case, 'actual': actual, 'scores': scores})
    return results

CIへの統合

すべてのPRでevalを実行します。品質がしきい値を下回った場合は、マージをブロックします。

# .github/workflows/evals.yml
on: pull_request
jobs:
  evals:
    runs-on: ubuntu-latest
    steps:
      - run: python -m evals.run --fail-below 0.85

Evalの実行頻度

  • コンポーネントeval — すべてのPR
  • エンドツーエンドeval — すべてのPR(サンプリング)+毎晩(全件)
  • 本番トレース -> evalセット — 毎週

本番からevalへのパイプライン

実際のトレースを収集します。悪い結果は、翌日のevalになります。

for trace in production_traces_with_thumbs_down():
    add_to_eval_suite(trace.input, expected=trace.fixed_output_from_human)

LangSmith / LangfuseのEval

どちらのツールにも、データセットのバージョン管理、評価関数、比較ビューなどのeval機能が組み込まれています。

手動のスポットチェック

自動化されたevalでは、文体やニュアンスを見落とします。定期的にランダムなトレースを20件、手作業で読みましょう。evalでは見つからない問題を発見できます。

アンチパターン:Evalセットの暗記

小規模なevalに合格するまでエージェントを調整すると、過学習が起こります。evalを継続的に拡張し、テストとトレーニングの分割を入れ替えてください。

Evalセットのメンテナンス

製品の変更に伴ってevalも変化します。新機能のケースを追加し、削除した機能のケースは廃止してください。

EDDの定義

Eval-Driven Developmentとは何でしょうか。

まとめ

Eval-Driven Developmentは、本格的なエージェントにとって不可欠です。あらゆるレベルでevalを書き、CIで実行し、本番トレースからテストスイートを拡充してください。

よくある質問

「エージェントのEval-Driven Development」レッスンは無料ですか?

はい。「エージェントのEval-Driven Development」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、AI Agentsコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 AI Agentsコースには全4レッスンが含まれています。

「エージェントのEval-Driven Development」で何を学びますか?

エージェントをリリースする前にevalを書きます。リグレッションなしで反復するための唯一の方法です。 ブラウザで直接実行するハンズオンコードでAI Agentsを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

AI Agentsを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのAI Agentsは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/4です。

「エージェントのEval-Driven Development」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このAI Agentsレッスンでコードを書いて実行できますか?

はい。すべてのAI Agentsレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. エージェントのEval-Driven Development
  2. Golden Test Setの構築
  3. LLM-as-a-Judgeの落とし穴
  4. ベンチマークスイート:SWE-Bench、GAIA、ToolBench
← AI Agentsに戻る