◉CLAUDE LABEN
●2.1.301 — vim の % モーション、VS Code パネルでの LaTeX 数式表示、使用量上限待ちのリトライ監視の上限が入りました(10/15)●2.1.299 — 200K トークン超で約54分放置した会話はアイドル圧縮。MCP の許可ルールは名指ししたサーバーだけに一致します●SONNET 4.5 — Claude API での提供終了は 11/30、残り45日。移行先は Sonnet 5.5●WINDOWS — 日本語の環境でだけフックが黙って壊れる報告があり、文字コードの確認が呼びかけられています●FAST MODE — Opus 5.5 の Fast mode がリサーチプレビューを終え、ベータヘッダーが不要になりました(10/15)●NEW — Cowork に渡したフォルダの先頭に、十行の約束ファイルを置いてみました●2.1.301 — vim の % モーション、VS Code パネルでの LaTeX 数式表示、使用量上限待ちのリトライ監視の上限が入りました(10/15)●2.1.299 — 200K トークン超で約54分放置した会話はアイドル圧縮。MCP の許可ルールは名指ししたサーバーだけに一致します●SONNET 4.5 — Claude API での提供終了は 11/30、残り45日。移行先は Sonnet 5.5●WINDOWS — 日本語の環境でだけフックが黙って壊れる報告があり、文字コードの確認が呼びかけられています●FAST MODE — Opus 5.5 の Fast mode がリサーチプレビューを終え、ベータヘッダーが不要になりました(10/15)●NEW — Cowork に渡したフォルダの先頭に、十行の約束ファイルを置いてみました
記事一覧/API & SDK
⬡ API & SDK/2026-05-30上級

Claude の品質回帰を eval ハーネスで自動検出する設計

プロンプトを少し直したら、別の入力で出力が静かに悪化していた。本番投入した Claude の品質をプロンプト変更やモデル更新のたびに守るための eval ハーネスを、実装コードと運用での実測値とともに整理しました。

Claude51eval品質保証3LLM-as-judgeAPI27

✦ プレミアム記事

プロンプトを直したら、別の入力で静かに壊れていた

ある分類タスクのプロンプトを「もう少し丁寧に分類させよう」と一行だけ書き換えて本番に出したことがあります。手元で試した数件は確かに良くなっていました。ところが数日後、特定のカテゴリだけ精度が落ちているという報告が届きました。自分が確認した入力では改善していたのに、確認していなかった入力で静かに悪化していたのです。

私は 2014 年から個人でアプリを開発し、累計 5,000 万ダウンロードほどのユーザーに届けてきました。コードであれば、変更が既存の挙動を壊していないかをテストが守ってくれます。ところが Claude を組み込んだ機能では、同じプロンプトでも入力次第で出力が変わるため、従来のアサーション型テストがそのままでは効きません。数件試して良さそうだから出す、という運用は、入力分布の一部しか見ていない賭けでした。

そこで作ったのが、プロンプトやモデルを変えるたびに品質の回帰を機械的に検出する eval ハーネスです。手を動かして作ることが一つの信心だと宮大工だった祖父から教わったのですが、評価基盤こそ地味に手を動かして整えるほど後で効いてきます。実装コードと、私の運用で見えた数値を共有します。

なぜ単体テストではなく eval が要るのか

Claude の出力は決定的ではありません。temperature を 0 にしても、入力がわずかに違えば出力は変わりますし、モデルのマイナー更新でも挙動は動きます。つまり守りたいのは「特定の入力に対する特定の文字列」ではなく、「入力分布全体に対する品質の水準」です。

ここが従来テストとの決定的な違いです。単体テストは一点を固定しますが、eval は分布を測ります。守るべき指標は次の二つに集約できます。第一に、代表的な入力群に対する平均品質スコア。第二に、その分散、とりわけ最低スコア帯の悪化です。冒頭の事故は平均だけ見ていたら見逃していました。特定カテゴリという部分集合での悪化は、層別のスコアを見て初めて表に出ます。

✦

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
✦プロンプト変更やモデル更新で品質が静かに落ちたことを push 前に検出する eval ハーネスの完全な実装コード
✦LLM-as-judge の評価ブレを抑えるルーブリック設計と、人手評価との一致率を 68% から 91% へ引き上げた具体策
✦CI に組み込んで回帰を止める閾値の決め方と、私の運用での 200 件ゴールデンセットの実測コスト
Stripe による安全な決済 · いつでもキャンセル可能
✦

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Claude Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • ✦コピー&ペーストで使える実装コード付き
  • ✦毎日新しい上級ガイドを追加
  • ✦¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

関連記事

⬡ API & SDK2026-07-24
メモリストアの棚卸しが半分しか返らない — path_prefix セグメント一致への移行
agent-memory-2026-07-22 で memories.list が変わりました。順序固定・depth 厳格化・path_prefix のセグメント一致。件数が音もなく半減した実例と、破壊的変更に耐える棚卸し層、呼び出し箇所を ast で洗い出す方法、depth=1 再帰の走査コストの実測をまとめます。
⬡ API & SDK2026-03-15
Claude APIでAIチャットボットを実装する — ストリーミング・会話履歴・コスト最適化まで
Claude API でチャットボットを最小構成から組み上げた記録です。会話履歴の管理、ストリーミング、FastAPI での公開、履歴のコスト最適化、LINE・Telegram・Discord への接続、PII マスキングまで動くコードで扱います。リトライは待ち方を手元で計測し、ジッタと retry-after を入れた形に作り直しました。
⬡ API & SDK2026-05-02
Claude API の月額予算を破綻させない設計 — 個人開発者のための実践コスト管理
個人開発で Claude API を組み込んだとき、最初にぶつかるのは月末の請求書です。月額予算を守り抜くための見積もり・モニタリング・上限設定・リトライ設計を、自分のアプリで躓いた箇所と一緒にまとめました。