CCA-F模擬試験

Claude Certified Architect – Foundations 対策・独自模擬問題(全10問)

使い方: シナリオを読み、選択肢から答えを決めてから、解説をタップで展開。

  • 出題配分は公式Exam Guide v1.0の5ドメイン比重(27/20/20/18/15)に合わせています
  • 問題形式は本番と同じく「単一選択(4択)」中心・一部「複数選択(2つ選べ)」・仕様知識型を含む
  • 誤答は「動くが本番では劣る設計」で構成・各解説に選択肢別の分析とトレードオフ付き

💡 迷ったら「本番に出すならどれか」を選べ。動く設計はどれも正しいが、採用は1つだけ。

※ 本サイトは有志による独自模擬問題であり、Anthropic公式試験の複製・公式模試ではありません。

🎓 本番試験の受験・詳細はAnthropic Skilljar(公式認定ページ)へ

問001

コーディネーター型エージェントでの一部失敗時の継続判断

Agentic Architecture & Orchestrationシナリオ: マルチエージェント研究★2単一選択

シナリオ

調査会社のリサーチ自動化チームは、coordinatorエージェントが検索・分析・要約の3種の専門subagentに処理を委譲する調査パイプラインを構築している。1回の調査リクエストで10〜30件のトピックを処理し、各トピックは独立している。外部の検索APIは時々レート制限(429)を返し、分析subagentは稀にタイムアウトする。実測では全体の2〜5%のトピックでsubagentの1つが失敗する。ユーザーへの報告はP95で30秒以内に開始すること(逐次ストリーミング・完了待ちではない)が要求され、成功率95%以上がSLAだ。

実装後のテストで、subagentの1つが失敗したトピックについて、coordinatorが最終レポートからそのトピックを丸ごと欠落させたり、逆に失敗したセクションに幻の内容を生成してしまう事例が確認された。SLAと成功率の両方を満たす設計はどれか。

  1. coordinatorが失敗したsubagentをcoordinator自身の内部で最大3回まで再実行し、それでも失敗したらトピックをスキップして最終レポートには「処理不能トピック: N件」と1行だけ出す
  2. どのsubagentかが1つでも失敗したトピックはバッチ全体を異常終了させ、ユーザーには「一時的なエラーが発生しました。再実行してください」と返して全トピックを最初からやり直させる
  3. 失敗したsubagentからは構造化されたエラー結果(失敗種別・再試行可否・人間が読めるメッセージ)をcoordinatorへtool resultとして返し、coordinatorはそれを読んで再委譲するか部分結果で続行するかをトピックごとに判断する
  4. 失敗したsubagentの結果は無かったものとして扱い、残りの成功したsubagentの結果だけで各トピックのセクションを完成させる(欠けている観点はユーザーに通知しない)
▶ 解説と正解を開く

クイック解説

エージェントの部分失敗は「隠す」でも「全部やり直し」でもなく、構造化されたエラーを上位エージェントに返して判断させるのが本番設計。エラーもモデルに読める情報として渡すのがTool Designの原則。

概要・アーキテクチャ解説

マルチエージェントシステムでは部分失敗が常態であるため、失敗の扱いを「制御フロー(コード側で握る)」から「モデルへの情報提供(構造化エラーの返却と判断委譲)」に移すのが本番設計の原則。Claudeのtool使用では、失敗したtool呼び出しをtool_resultとして返却する際にエラー内容を構造化して含めることで、モデルが次のアクション(再試行・代替手段・部分完了の扱い)を状況に応じて判断できる。これにより「リトライすべき失敗(429)」と「リトライしても無意味な失敗(入力不備)」を同一コードパスでなく、文脈に応じて処理できる。

重要専門用語

  • coordinator/subagentパターン: 1つの統括エージェント(coordinator)がタスクを分解し、専門特化した下位エージェント(subagent)へ委譲するマルチエージェント構成。本課題では部分失敗が全体品質を壊さない設計の要
  • 構造化エラー応答: エラーを「種別・再試行可否・メッセージ」のような機械可読な形で返す設計。モデルがエラーを「ただの文字列」でなく判断材料として消費できる
  • 部分結果での続行(graceful degradation): 一部の失敗で全体を止めず、成功分+失敗の明示で出力を完成させる信頼性設計。エスカレーション設計と表裏一体

選択肢別分析

  • A【結論】内部リトライ自体は実務で使われるが「握り潰し」が本番で劣る。【本番で劣る理由】失敗種別を区別せず429(再試行可)とタイムアウトを同列扱いし、「処理不能トピック: N件」だけでは幻の内容を防げない。【有効な別シナリオ】失敗率が0.1%未満の単純パイプラインではコストを抑えられる。【現場の検証点】リトライ後の成功率と欠落トピックがSLA集計に含まれているか
  • B【結論】全件やり直しは本番で最も劣る。【本番で劣る理由】2〜5%の失敗で全10〜30トピックを再実行するのはP95 30秒のSLAと真っ向衝突する。独立トピック構成なのに全体を巻き込むのは過剰設計。【有効な別シナリオ】トピック間に依存があり1件の失敗が全体の整合性を壊すトランザクション的処理では妥当。【現場の検証点】再実行時のAPI消費量(コスト2倍超えないか)を試算したか
  • C【結論】正解。【本番で劣る理由】なし。【有効な別シナリオ】すべての状況で優位・失敗種別が単一かつ無意味な場合にのみ過剰となる。【現場の検証点】エラー結果のスキーマに「再試行可否」が含まれているか、coordinatorの判断ログが残るか
  • D【結論】無言の省略は本番で劣る。【本番で劣る理由】欠けている観点を通知しないため、ユーザーは「完全なレポート」と「部分的なレポート」を区別できず、幻の内容より質が悪い信頼問題を生む(provenanceの欠如)。【有効な別シナリオ】失敗した観点がレポートの本質でない付随情報の場合は許容範囲。【現場の検証点】出力に「このセクションはどのsubagentの結果に基づくか」が記録されているか

トレードオフ

  • + 向上: SLA適合率(部分完了でP95 30秒を守る)と成功率の実測信頼性・幻の内容(幻覚)の抑制
  • − 犠牲: coordinatorのプロンプトとエラースキーマの設計コスト・エラー種別ごとの判断ロジックの複雑化
  • ⚠ 副作用: エラー結果をモデルに返すとコンテキストを消費するため、大量失敗時にコンテキスト窓を圧迫する
正解: C

参照: docs.claude.com tool use実装ガイド(2026-09-05確認)

問002

エージェントループの終了条件の正しい実装

Agentic Architecture & Orchestrationシナリオ: マルチエージェント研究★2単一選択仕様知識型

シナリオ

SaaS企業のプラットフォームチームは、Claude APIを使った社内ツール運用エージェントを構築している。エージェントはユーザーの依頼(「本番DBのスロークエリ一覧を取って原因仮説を出して」等)を受け、社内ツールをtool呼び出しで操作し、結果を踏まえて次のtool呼び出しや最終回答を生成する、いわゆるエージェントループを実装する。1回の依頼でtool呼び出しは平均4回・最大12回発生し、月間APIコスト予算は固定で、無限ループが起これば即座に予算を破綻させる。チームはAnthropic公式SDKのレスポンス仕様に基づいてループを実装することにした。

レスポンスのstop_reason仕様に忠実で、かつ無限ループと「途中終了」の両方を防ぐループ実装はどれか。

  1. レスポンスのstop_reasonがtool_useである間はtoolを実行して結果をmessagesに追加して再リクエストし、stop_reasonがend_turnになったらループを抜ける。あわせて反復回数の上限(safety ceiling)も別途設ける
  2. アシスタント応答のテキストに「完了しました」「処理終了」などの完了フレーズが出現したらループを抜ける
  3. 反復回数10回を主終了条件とし、10回に到達した時点でループの状態にかかわらず強制終了してそこまでの結果を返す
  4. いずれかのtool呼び出しがエラーを返した時点で直ちにループを終了する(エラー後の続行は意味がないため)
▶ 解説と正解を開く

クイック解説

エージェントループの正終了条件はstop_reason == "tool_use"で継続・end_turnで停止。テキストの完了フレーズや固定回数はどちらも「途中終了」と「無限ループ」を両方生む。

概要・アーキテクチャ解説

Claude APIのMessages APIでは、モデルがtoolを呼びたいときはstop_reason: "tool_use"で応答し、tool_useブロックとともに終了する。クライアント(ループ側)はtoolを実行し、その結果をtool_resultブロックとしてmessagesに追加して再リクエストする。モデルがもうtoolを必要とせず最終回答を出すときはstop_reason: "end_turn"で応答する。したがって「tool_useの間はループ・end_turnで抜ける」が仕様に忠実な終了条件である。実務ではモデルが自律的に終了しない異常系(タスクの迷子・予算暴走)に備え、反復上限やタスク予算を安全網(secondary)として併設する。なおstop_reasonはmax_tokens・pause_turn・refusalなど他の値も取りうるため、実運用のコードでは未知の値へのフォールバックも必要である。

重要専門用語

  • stop_reason: APIレスポンスがなぜ終了したかを示す仕様上のフィールド。tool_use(tool呼び出し待ち)・end_turn(モデルが自発的に終了)・max_tokens・pause_turn・refusal等の値を取る。エージェントループの分岐の正典
  • エージェントループ: 「リクエスト→tool呼び出し→実行→結果追加→再リクエスト」をstop_reasonが示すまで繰り返す構成。エージェントアーキテクチャの最小単位
  • safety ceiling(反復上限): モデルの判断と独立に設ける反復回数の上限。仕様準拠の終了条件を主とし、暴走時の保険として副次的に置く

選択肢別分析

  • A【結論】正解。【本番で劣る理由】なし。【有効な別シナリオ】すべてのtool駆動エージェントで優位。【現場の検証点】pause_turnやrefusalへの分岐も実装済みか、上限到達時のユーザー通知があるか
  • B【結論】テキストパターン照合は本番で劣る。【本番で劣る理由】モデルが完了フレーズを出さずに終了すれば無限ループ、逆に本文中にその語が出ただけで途中終了する。モデル出力の自然言語は制御フローの信号として設計上保証されていない。【有効な別シナリオ】出力形式を完全にschemaで固定した単発抽出では近似可能だが、それでも仕様フィールドより劣る。【現場の検証点】誤検知/漏検のログを数えたことがあるか
  • C【結論】固定回数を主条件とするのは本番で劣る。【本番で劣る理由】5回で終わるべきタスクは10回まで無駄にコストを消費し、12回必要なタスクは10回で強制中断される(本シナリオの「最大12回」を守れない)。【有効な別シナリオ】コスト暴走の最後の防波堤としてのsecondary条件なら正当。【現場の検証点】上限到達時の終了理由(max_tokensでなく自前フラグ)を監視しているか
  • D【結論】エラー即終了は本番で劣る。【本番で劣る理由】一時的エラー(429・タイムアウト)でも即終了するため成功率が下がる。エラーは「終了条件」でなく「エラー処理(構造化してモデルに返す)」の対象。【有効な別シナリオ】決定的な失敗(認証エラー等・リトライ不能)では即座に人間へエスカレーションする設計と組み合わせる。【現場の検証点】エラー種別ごとの終了/続行ポリシー表が存在するか

トレードオフ

  • + 向上: 無限ループの構造的排除(仕様準拠)・タスク完了率の向上・予算の予測可能性
  • − 犠牲: 反復上限や予算のsafety netの実装コスト・stop_reasonの全値を網羅する分岐の保守
  • ⚠ 副作用: ループ継続判断をモデルに任せるため、迷子状態(同じtool呼び出しの繰り返し)は仕様上は検知できない・別途ループ検知が要る
正解: A

参照: docs.claude.com tool use実装ガイド(2026-09-05確認)

問003

コードベース分析スキルの実行でメインセッションの記憶が壊れる問題

Claude Code Configuration & Workflowsシナリオ: Claude Codeコード生成★2単一選択

シナリオ

開発チームではClaude Codeを使ったレビュー体制を整備し、「コードベース構造を解析してモジュール依存のレポートを出すカスタムスキル」を作成した。スキルは毎回非常に長い構造レポートを出力する。ところが3回目の実行あたりから、メインセッションが1回目にマップしたモジュールの内容について質問に答えられなくなり、「この種のサービスは通常こういう構成です」という一般論に逃げる(実際のコードベースの内容を忘れたような挙動)事例が出始めた。チームの作業制約として、レビュー中はメインセッションで並行して複数の質問応答をこなす必要があり、セッション全体を再起動できない。

原因に直接効く修正はどれか。

  1. スキルのSKILL.md本文に「findingsを要約してレポートを短く保て」と指示を追記する
  2. スキル実行のたびに/compactを実行して会話履歴を要約し、トークン予算を回収する運用に変える
  3. スキルを~/.claude/skills/へ移動して個人スキルにし、出力が自分のセッションにしか流れないようにする
  4. スキルのSKILL.mdのfrontmatterにcontext: forkを追加し、スキルを分離されたsubagentコンテキストで実行してメインセッションへは要約のみ返す
▶ 解説と正解を開く

クイック解説

大量出力を毎回メインセッションに流すとコンテキストが食いつぶされる。context: forkでsubagentコンテキストに分離し、要約だけ返すのが原因への直接対処。

概要・アーキテクチャ解説

Claude Codeのセッションは単一のコンテキスト窓を共有しており、長いスキル出力が都度流れ込むと、初期に読み込んだコードベースの情報がコンテキスト窓の実用範囲から押し出され、モデルが「一般論に逃げる」挙動を示す。これはコンテキスト窓の物理的な上限でなく、実効的な情報密度の問題として現れる。カスタムスキルのfrontmatterでcontext: forkを指定すると、スキルは独立したsubagentのコンテキストで実行され、メインセッションへは結果の要約のみが返る。これにより「重い解析」と「対話の記憶」を別のコンテキストに分離できる。チーム共有コードベースではSKILL.md自体はリポジトリ内で共有しつつ、実行コンテキストだけを分離するのが定石である。

重要専門用語

  • context: fork: スキルのSKILL.md frontmatterで指定する実行コンテキストの指定。スキルを独立したsubagentコンテキストで実行し、メインセッションの会話コンテキストを汚染しない
  • コンテキスト汚染: 長大なツール/スキル出力がセッションの会話履歴に蓄積し、重要な先行情報の実効的な利用可能性を下げる現象。Context Management領域の中核トピック
  • SKILL.md: Claude Codeのカスタムスキル定義ファイル。frontmatter(メタ指定)と本文(手順)で構成される

選択肢別分析

  • A【結論】出力を短くする指示は本番で劣る。【本番で劣る理由】指示は遵守が保証されず、レポートが「短くなった分だけ情報が失われる」。根本原因(メインコンテキストへの蓄積)は残る。【有効な別シナリオ】出力がそもそも冗長だと実測された場合の併用策。【現場の検証点】短縮後もレポートの必須項目が揃うかをサンプリング確認したか
  • B【結論】都度/compactは本番で劣る。【本番で劣る理由】要約で1回目に得た詳細なコードベース知識そのものが落ちるため、「1回目にマップした内容に答えられない」という症状をむしろ悪化させる。「セッション全体を再起動できない」制約下で記憶を捨てるのは方向が逆。【有効な別シナリオ】履歴の詳細が不要な長時間セッションの延命には有効。【現場の検証点】compact後に古い質問へ答えられるかのリグレッション確認をしたか
  • C【結論】個人スキルへの移動は本番で劣る。【本番で劣る理由】~/.claude/skills/への移動は「誰のスキルか」のスコープ変更であって、実行コンテキストは変わらない。チーム共有も失う。原因(メインセッションへの蓄積)に無関係。【有効な別シナリオ】個人用の実験的スキルを本番共有から隔離したい場合は適切。【現場の検証点】移動前後でメインセッションのトークン消費が変わらないことを実測したか
  • D【結論】正解。【本番で劣る理由】なし。【有効な別シナリオ】すべての「重い出力スキル」で優位・出力をメインセッションで全文参照したい場合のみforkは不適。【現場の検証点】fork後の要約に「質問応答に必要な最低限の情報」が含まれるかを実際の質問で確認したか

トレードオフ

  • + 向上: メインセッションの実効記憶の維持・スキル出力のコンテキスト消費の分離・チーム共有を保ったまま実行分離が可能
  • − 犠牲: subagentへの受け渡し設計(何を要約に含めるか)・fork実行のオーバーヘッド(起動コスト)
  • ⚠ 副作用: メインセッションからはfork先の詳細が見えなくなるため、「詳細を対話の中で追いかけたい」用途では使いにくい
正解: D

参照: code.claude.com Skills ドキュメント(2026-09-05確認)

問004

抽出結果の形式が実行ごとに崩れる問題への対処

Prompt Engineering & Structured Outputシナリオ: 構造化データ抽出★3複数選択(2つ選べ)

シナリオ

業務システムの受付チームは、非構造化文書(問い合わせメール・申請書の自由記載欄)から「案件ID・発生日・金額・担当者名」の4フィールドを抽出するパイプラインを運用している。日次で10万件を処理し、後続の会計システムが厳密なスキーマを要求するため、フィールドの欠落や型の崩れ(金額が「約10万円」と文字列で入る等)は0件が理想だ。レビュー用プロンプトでは、4つのフィールド名と各フィールドの意味を散文で説明している。しかし本番実行の統計を取ると、実行ごとにフィールドが1つ欠けたり、出力の形(JSONの構造)が変わったりする事例が絶えない。

この崩れに最も直接的に効く2つの変更を選べ。

  1. 4フィールドの名前を、抽出対象の本文の直前にもう一度再掲し、要件が生成直前の最後の情報として読まれるようにする
  2. 完全な4フィールドの形の出力例(worked example)を2〜3個、プロンプトにそのままの形で追加する
  3. 4つの各フィールドについて、より長く丁寧な説明文を書き、各フィールドに何を含めるべきかの仕様を詳しくする
  4. 出力をJSON Schemaで定義した構造化出力(スキーマに合う形でのみ出力する仕組み・tool_useパラメータでの厳密検証を含む)に載せ替え、散文出力ではなく機械検証可能な形で受け取る
  5. 4フィールドの定義をシステムプロンプトへ移し、本文と指示だけをユーザーターンに置く
▶ 解説と正解を開く

クイック解説

形式の揺れへの本質的な対処は「機械に強制させる(スキーマ)」と「例示で型を教える(few-shot)」の2本。説明文を増やす・位置を変えるは本質でない。

概要・アーキテクチャ解説

LLMの散文出力は確率的であるため、「フィールド名を説明する」だけでは出力形式は保証されない。本番で形式を保証する第一の手段は構造化出力(JSON Schemaを定義し、tool_useのパラメータや構造化出力APIでスキーマに合う形のみを出力させる・厳密検証strictを併用する)であり、第二の手段はfew-shot例示(完成形の入出力例をそのまま示す)である。両者は補完関係にある: スキーマは構造(JSONの形・必須フィールド)を強制し、few-shotは内容の粒度(「約10万円」を100000に正規化する等・型や表記の揺れ)を矯正する。対照的に「説明を詳しくする」「定義の場所を変える」「要件を再掲する」は散文出力の確率性を変える力が弱い。

重要専門用語

  • 構造化出力(structured output): 出力形式をJSON Schema等で定義し、スキーマに合う出力のみを得る仕組み。tool_useのパラメータ定義や構造化出力APIで実現する・後続システム連携の中核
  • few-shot例示(worked example): 完成形の入出力ペアをプロンプトに示す手法。曖昧な変換ルール(表記の正規化等)を例で教える
  • 厳密検証(strict): tool定義に付けて、モデルの生成する引数がスキーマに厳密に合うことをAPI側で保証する機能。additionalProperties: falseと必須フィールドの指定と組み合わせる

選択肢別分析

  • A【結論】採用しない。【本番で劣る理由】要件の「再掲」は位置の工夫であり、散文出力の確率性を変えない。欠落は減らせても0件には程遠い。【有効な別シナリオ】長いプロンプトで要件が頭から抜ける場合の軽量な補強には使える。【現場の検証点】再掲有無で欠落率が実測で下がるか
  • B【結論】採用(1つ目)。【本番で劣る理由】なし。【有効な別シナリオ】あらゆる形式重要タスクで有効・例の偏り(2〜3例しかないパターン)には注意。【現場の検証点】例に「表記ゆれの正規化」(約→数値化)を含めているか
  • C【結論】採用しない。【本番で劣る理由】説明を長くするほどモデルの注意は散り、むしろ欠落が増える場合がある。問題は「説明の不足」でなく「散文出力の非決定性」。【有効な別シナリオ】フィールドの意味そのものが曖昧でモデルが誤抽出する場合は必要(ただしそれは形式崩れとは別問題)。【現場の検証点】説明を増やした際の欠落率の変化を実測したか
  • D【結論】採用(2つ目)。【本番で劣る理由】なし。【有効な別シナリオ】後続システムがスキーマを要求する本構成では最優先・単発の読み物生成には過剰。【現場の検証点】スキーマ検証失敗時のリトライ(validation-retry loop)まで実装したか
  • E【結論】採用しない。【本番で劣る理由】定義の置き場所の変更で形式の保証は生まれない。キャッシュ効率には効くが、本課題の崩れ(欠落・構造変化)とは無関係。【有効な別シナリオ】定義を固定値としてキャッシュに載せたい場合は有効(Prompt Caching領域との接続)。【現場の検証点】移動前後で欠落率に有意差があるか

トレードオフ

  • + 向上: 欠落0件化への構造的な道筋・後続会計システム連携の信頼性・validation-retryによる自己修復
  • − 犠牲: スキーマ設計とstrict検証の実装コスト・few-shot例をプロンプトに含める分の入力トークン増
  • ⚠ 副作用: スキーマが厳密すぎると、スキーマ外の形しか返せなくなり情報が落ちる(nullable設計が要る)・few-shot例が多すぎると入力コストと過剰模倣が増える
正解: B と D

参照: docs.claude.com structured outputs ガイド(2026-09-05確認)

問005

外部API連携ツールのエラー応答設計

Tool Design & MCP Integrationシナリオ: 開発者生産性ツール★2単一選択

シナリオ

開発者支援プラットフォームのチームは、エージェントから外部の在庫管理APIを問い合わせるMCPツールを実装している。このAPIは利用者が多く、「該当商品なし」(正常系の一種)・レート制限(429)・タイムアウトが日常的に発生する。実装者の制約として、エージェントは人間の確認なしで複数のツールを連続実行するため、エラー発生時にエージェント自身が適切に回復できること(諦めず・暴走もせず)が要件だ。ツールの戻り値の設計として、この要件に最も沿うものはどれか。

  1. 失敗時は構造化されたエラー結果(人間が読めるメッセージ・エラー種別・再試行可否のフラグ)をtool resultとしてエージェントに返す
  2. 失敗をツールサーバー側のログに種別とリクエストID付きで記録し、エージェントには成功時と同じ形で空の結果を返す(エージェントにエラーを見せない)
  3. MCPのエラーフラグを立てて、外部APIの生の例外文字列(スタックトレース込み)をそのままメッセージとして渡す
  4. ツール内部で固定間隔のリトライを成功するまで繰り返し、エージェントには常に成功した結果のみを返す
▶ 解説と正解を開く

クイック解説

ツールのエラーはエージェントが読んで判断できる形で返すのが原則。「隠す」「生のまま渡す」「見えないところでリトライし続ける」はいずれも回復不能・暴走の原因。

概要・アーキテクチャ解説

ツール設計の原則として、エラーは「構造化された結果」としてモデルに返却するのが本番設計である。モデルはエラーの種別と再試行可否を読むことで、「そのまま再試行する」「別の検索語で再実行する」「ユーザーに報告する」といった文脈に応じた回復行動を選べる。対照的に、エラーを隠す(空の成功応答)とモデルは「該当なし」と「システム障害」を区別できず誤った回答をする。生の例外文字列はトークンを浪費し、モデルが誤解する情報を増やす。ツール内部の無限リトライはレート制限を悪化させ(429の連鎖)、停止条件を欠くため暴走の温床になる。

重要専門用語

  • MCP(Model Context Protocol): Claudeを外部ツールやデータソースに接続するための標準プロトコル。ツールの説明・入出力の形式・エラーの扱いを含む
  • 構造化エラー応答: 「メッセージ・エラー種別・再試行可否」を明示したtool result。エージェントの回復判断の材料
  • ツール説明(tool description): モデルがいつ・どうそのツールを使うかを判断するための説明文。エラー時の挙動も含めて書くのが良い設計

選択肢別分析

  • A【結論】正解。【本番で劣る理由】なし。【有効な別シナリオ】あらゆる対話型エージェントツールで優位。【現場の検証点】エラー種別のカタログ(429/該当なし/タイムアウト等)がツール説明にも記載されているか
  • B【結論】エラーを隠す設計は本番で劣る。【本番で劣る理由】モデルは「該当なし」と「障害」を区別できず、障害時に「在庫は0です」という誤回答を生成する。要件「エージェント自身が回復できる」を構造的に不可能にする。【有効な別シナリオ】モデルに渡したくない機密情報をサーバー側で吸収する場合は、要約した形でエラーを返す設計と併用する。【現場の検証点】空応答時のユーザー問い合わせ率(誤回答の間接指標)を監視しているか
  • C【結論】生例外の直接渡しは本番で劣る。【本番で劣る理由】スタックトレースはトークンを浪費し、モデルにとって判断に不要な情報が多い。エラーフラグを立てる点は正しいが、メッセージの品質が回復判断を損なう。【有効な別シナリオ】開発中のデバッグ用途では生情報も価値がある(本番では要約・種別化する)。【現場の検証点】例外文字列の平均トークン長を測定したか
  • D【結論】内部無限リトライは本番で最も劣る。【本番で劣る理由】429を連鎖的に悪化させる(レート制限下でさらに叩く)・停止条件がなくツールがハングする・エージェント側に「回復」の選択肢が残らない。要件の真逆。【有効な別シナリオ】冪等で低頻度のバッチツールに、上限付きの指数バックオフで実装する場合は正当。【現場の検証点】リトライ上限とバックオフ(待ち時間の漸増)があるか、429時に待ち時間を守っているか

トレードオフ

  • + 向上: エージェントの自己回復率(要件達成)・誤回答の抑制・レート制限下での安定性
  • − 犠牲: エラー種別カタログの設計・ツール説明の整備コスト・エラー応答のトークン消費
  • ⚠ 副作用: エラー内容をモデルに返すため、失敗の連鎖時にコンテキストを消費する・エラーメッセージに機密が含まれないようサニタイズが別途必要
正解: A

参照: docs.claude.com tool use実装ガイド(2026-09-05確認)

問006

カスタマーサポートエージェントの人間への引き継ぎ判断

Agentic Architecture & Orchestrationシナリオ: カスタマーサポート解決エージェント★2単一選択

シナリオ

EC運営会社のカスタマーサポートチームは、返金・請求の不一致・口座変更を自動処理するエージェントを導入した。目標は初回接触解決率80%以上・自動処理の費用対効果は人件費と比べて明確に有利。ただし規約として、返金額が5万円を超える案件・本人確認が取れない案件・顧客が明示的に人間を要求した案件は人間のオペレーターが処理しなければならない。導入テストでは、自動処理が破綻した案件をエージェントが不自然な回答で粘り続け、顧客が二度手間になった事例と、逆に簡単な問い合わせまで人間に投げて自動化メリットが消えた事例の両方が観測された。

エスカレーション設計として最も適切なのはどれか。

  1. エージェントの応答に自信がなさそうな表現(「おそらく」「たぶん」等)が出たら人間へ引き継ぐ。明示的なルールは設けず、モデルの自然な挙動に任せる
  2. コストを優先し、原則すべて自動処理とする。人間への引き継ぎは顧客が3回同じ質問を繰り返した時のみに限定する
  3. 規約上の人間必須条件(返金5万円超・本人確認不可・人間要求)を機械判定可能な明示的なエスカレーション条件として実装し、それに加えて「解決不能と判断した場合の引き継ぎ」もプロンプトで許可する。引き継ぎ時は経緯の要約を添える
  4. すべての案件をまず人間が仕分けし、簡単なものだけエージェントへ回す(エージェントは人間の補助道具とする)
▶ 解説と正解を開く

クイック解説

エスカレーションの本体は「必ず人間」という規約条件を機械判定で実装すること。モデルの自然挙動や回数トリガーへの丸投げは「粘る」「投げすぎ」の両方を生む。引き継ぎ時の経緯要約が二度手間を防ぐ。

概要・アーキテクチャ解説

カスタマーサポートエージェントの信頼性設計では、エスカレーションを2層に分ける。第1層は規約・ポリシー由来のハード条件(金額しきい値・本人確認・顧客の明示要求)で、これはモデルの判断に任せず機械的に判定して強制する。第2層は解決不能の軟条件(ツールが失敗を繰り返す・類似問い合わせの解決策が無い等)で、こちらはプロンプトでモデルに判断を許可する。両層を混ぜないことが重要で、ハード条件をプロンプトの言い回しに任せると例外運用で破られる。引き継ぎ時には経緯の要約(顧客の問題・試行した解決策・顧客の感情状態)を添え、オペレーターの二度手間を防ぐ。

重要専門用語

  • エスカレーション設計: 自動処理から人間への引き継ぎの条件・経路・引き継ぎ情報を設計すること。エージェントの信頼性設計の中核
  • ハード条件/ソフト条件: 機械的に強制できる条件(金額しきい値等)と、モデルに判断を委ねる条件(解決不能の判断等)の区別。ハード条件はプロンプトでなく実装で守る
  • 初回接触解決率(first-contact resolution): 人間の介入なしに最初の接触で解決できた案件の比率。カスタマーサポート自動化の主要KPI

選択肢別分析

  • A【結論】自信表現への依存は本番で劣る。【本番で劣る理由】「おそらく」等の語彙出現は制御信号として保証されず、ハード条件(返金5万円超)を語彙で守るのは規約違反の温床。出しさすい案件で過剰引き継ぎも起きる。【有効な別シナリオ】ハード条件が別実装で守られている前提での補助検知には使える。【現場の検証点】語彙検知と実際の要引き継ぎ案件の一致率を数えたか
  • B【結論】回数トリガーのみは本番で劣る。【本番で劣る理由】規約の人間必須条件を守る機構が存在しないため規約違反が構造的に起きる。3回繰り返しの検知も、粘られた顧客が静かに離脱する場合は発火しない。【有効な別シナリオ】規約条件が存在しない領域(純粋なFAQ応答等)では最低限の安全網として機能する。【現場の検証点】規約違反案件が0件かをサンプリング監査したか
  • C【結論】正解。【本番で劣る理由】なし。【有効な別シナリオ】すべての規約付きサポート自動化で優位。【現場の検証点】ハード条件の判定がエージェント出力でなく実装側で行われているか、引き継ぎ時の要約に「試行済みの解決策」が含まれるか
  • D【結論】全件人間仕分けは本番で劣る。【本番で劣る理由】初回接触解決率80%の目標がそもそも達成できない(人間が必ず最初に接触するため)。自動化の費用対効果が消える。【有効な別シナリオ】規約が厳格すぎて全件人間必須の高リスク領域(法的助言等)では正当な形態。【現場の検証点】人間仕分けの処理コストが自動化の削減分を超えていないか

トレードオフ

  • + 向上: 規約遵守の構造的保証・二度手間の削減(経緯要約付き引き継ぎ)・初回接触解決率の維持
  • − 犠牲: エスカレーション条件の実装と保守・引き継ぎ要約の生成コスト(トークン)
  • ⚠ 副作用: ハード条件のしきい値(5万円等)は事業判断で変わるため、設定の運用管理が別途必要
正解: C

参照: docs.claude.com tool use実装ガイド(2026-09-05確認)

問007

CI/CDでの無人実行の正しい設定

Claude Code Configuration & Workflowsシナリオ: Claude Code in CI/CD★2単一選択仕様知識型

シナリオ

開発チームはプルリクエストを出した時点でClaude Codeに「変更差分をレビューし、指摘を構造化データで返す」処理を自動実行させたい。実行環境はCIランナー(ターミナル対話ができない・人間が画面を見ていない)で、指摘は後続のジョブがJSONとしてパースしてGitHubのコメントに投稿する。実行のたびに承認待ちで止まることがあってはならず、CI上のジョブには最小権限を与えたい。レビュー品質を保つため、1回の実行で完結させたい。

Claude CodeをCI/CDで無人実行するための設定として正しいのはどれか。

  1. 通常の対話モードでClaude Codeを起動し、ジョブの標準入力に指示文を流し込む。出力はそのままテキストで受け取り、後続ジョブで正規表現で指摘部分を抜き出す
  2. 指摘の精度を上げるため、1つのPRにつき3回連続で実行して出力が一致したものだけを採用する(多数決)
  3. 対話モードのまま実行し、承認待ちが発生したらCIジョブが自動でEnterキーを送信するラッパーを書く
  4. 非対話モード(-pフラグ・print mode)で起動し、--output-format jsonで結果を構造化して受け取る。実行を許可するツールを明示的に限定して権限を最小化する
▶ 解説と正解を開く

クイック解説

無人実行は-p(print mode・非対話)+ --output-format json(構造化出力)+ ツール権限の明示的限定の組み合わせ。対話モードは承認待ちで止まる・テキストの正規表現パースは壊れやすい。

概要・アーキテクチャ解説

Claude Codeには人間の入力なしで1回の実行を完結させる非対話モード(-p・print mode)があり、CI/CDでの自動実行の正典である。--output-format jsonを併用すると、結果をテキストの文字列解析でなく構造化データとして受け取れ、後続ジョブのパースが頑健になる。CIランナーでは人間がいないため、対話的な承認プロンプトが発生する設定だと実行が停止する。これを避けるため、実行を許可するツール(読み取り系ツール等)を明示的に限定し、権限の確認をそもそも発生させない設計にするのが最小権限の原則に合う。セッションはジョブごとに独立するため、CI上の各実行は互いに汚染されない。

重要専門用語

  • -p(print mode): Claude Codeの非対話モード。プロンプトを1回与えて結果を受け取り終了する・CI/CD自動実行の基本形
  • --output-format json: 出力をJSONで受け取るオプション。後続のパイプラインが文字列解析ではなく構造化データを消費できる
  • 最小権限(least privilege): 実行に必要な最小限のツール・権限のみを許可する原則。無人実行では「確認を発生させない」設計と表裏一体

選択肢別分析

  • A【結論】対話モード+正規表現パースは本番で劣る。【本番で劣る理由】標準入力への流し込みは対話セッションの初期化を保証せず、出力は人間向けの装飾を含むため正規表現パースが静かに壊れる。承認待ちでも停止する。【有効な別シナリオ】人間が横にいる開発者の一回きりの手作業なら問題ない。【現場の検証点】パース失敗率(ジョブの静かな失敗)を監視しているか
  • B【結論】3回多数決は本番で劣る。【本番で劣る理由】コストが3倍になる割に、レビュー指摘は確率的に揺れる出力であって一致条件が過剰に厳しい。真の問題(出力形式の非決定性)は構造化出力で解決すべき。【有効な別シナリオ】重要判定のアンサンブル(別モデルでのクロスチェック)は有効だが、これは多数決と目的が違う。【現場の検証点】一致しなかった場合の運用が決まっているか
  • C【結論】Enter送信ラッパーは本番で劣る。【本番で劣る理由】何に対して承認しているかが検証されないため、意図しない操作を自動承認する危険がある。壊れやすく監査不能。【有効な別シナリオ】存在しない(承認の自動化は設計として正当化できない)。【現場の検証点】そもそもラッパーが承認内容を記録しているか
  • D【結論】正解。【本番で劣る理由】なし。【有効な別シナリオ】すべてのCI/CD自動実行で優位。【現場の検証点】許可ツール一覧が定期見直しの対象になっているか、JSONのスキーマが後続ジョブと合意されているか

トレードオフ

  • + 向上: ジョブの完結性(承認待ち停止の排除)・後続パイプラインの頑健性(JSONパース)・最小権限での安全な無人実行
  • − 犠牲: 許可ツールの設計・JSONのスキーマ管理のコスト
  • ⚠ 副作用: ツールを限定しすぎるとレビューに必要な情報(テスト実行等)にアクセスできず指摘精度が下がる・権限と精度のバランス調整が継続課題
正解: D

参照: code.claude.com CLI リファレンス(2026-09-05確認)

問008

スキーマ検証に失敗し続ける抽出パイプラインの自己修復

Prompt Engineering & Structured Outputシナリオ: 構造化データ抽出★3複数選択(2つ選べ)

シナリオ

保険会社の処理チームは、申請書の自由記載から「契約番号・事故日・請求額・連絡先」を抽出するパイプラインを運用している。後続システムに渡すため、出力はJSON Schemaで必須4フィールド・型固定としている。運用統計を見ると、抽出自体はほぼ成功するが、スキーマ検証に失敗するレコードが日次で数百件発生している。内訳を実査すると、①申請書に該当情報が記載されていないフィールドでモデルが「不明」という文字列を型違反のまま入れる、②検証失敗したレコードがそのまま破棄され、手動再処理の山になっている、の2種が大半だった。検証は厳密に保ちたい(緩めたくない)。

この失敗に構造的に対処する2つの変更を選べ。

  1. スキーマから必須制約を外して、どのような入力でも検証を通るようにする
  2. 「情報が記載されていないフィールドは明示的なnullを返す」というルールをスキーマと指示の両方に組み込み、欠損を型違反でなく値として表現する
  3. 検証失敗時に、検証エラーの内容をモデルへ返して修正させ、再検証に合格したものだけ後続へ渡す(validation-retryループ)を組み、リトライ上限を設ける
  4. 検証失敗レコードは温度(temperature)を上げて5回再生成し、いずれかが通れば採用する
  5. 後続システムの受け入れをJSONからフリーテキストに変え、後段で人が読んで処理する
▶ 解説と正解を開く

クイック解説

欠損はnullという値として表現し(スキーマを緩めない)、検証失敗はエラーをモデルに返して修正させるリトライループで自己修復させる。スキーマ緩和・温度変更・フリーテキスト化はいずれも問題を後段へ先送りするだけ。

概要・アーキテクチャ解説

スキーマ検証失敗には2種類の原因があり、対処も分かれる。①「入力に情報が無い」型の失敗は、モデルが存在しない値を捏造するか型違反の文字列(「不明」等)を入れることで起きる。対処はnullable設計(欠損を明示的なnullとして表現するようスキーマと指示の両面で定義)であり、これにより「欠損」と「抽出の失敗」を区別でき、捏造(ハルシネーション)も防げる。②「抽出は合っているが形式が崩れた」型の失敗は、validation-retryループ(検証エラーメッセージをモデルへ返し、修正を指示して再検証する・上限付き)で自己修復させる。検証そのものは緩めないのが原則で、緩和は問題を後段の静かな破損に変えるだけである。

重要専門用語

  • validation-retryループ: 出力をスキーマで検証し、失敗時にエラー内容をモデルへ返して修正・再検証する機構。上限付きで運用する・構造化出力の信頼性の要
  • nullable設計: 「値が存在しない」ことを明示的なnullとして表現できるようスキーマと指示の両面で定義すること。欠損の捏造防止
  • 欠損と失敗の区別: 「申請書に書いていない(nullが正しい)」と「抽出に失敗した(リトライ対象)」は意味が違い、混同すると両方が正しく扱えなくなる

選択肢別分析

  • A【結論】スキーマ緩和は本番で劣る。【本番で劣る理由】必須制約を外すと「抽出漏れ」が検証で捕捉できなくなり、静かな欠落が後続システムへ流れる。問題の先送りであって解決でない。【有効な別シナリオ】そもそも必須性が誤っていた場合には修正として正しい。【現場の検証点】緩和後に後続システムで欠損起因のエラーが増えていないか
  • B【結論】採用(1つ目)。【本番で劣る理由】なし。【有効な別シナリオ】欠損が意味を持つすべての抽出タスクで有効・後続がnullを扱えることが前提。【現場の検証点】null率をフィールド別に集計し、異常に高いフィールドを特定しているか
  • C【結論】採用(2つ目)。【本番で劣る理由】なし。【有効な別シナリオ】スキーマ検証を使うすべての本番パイプラインで有効・上限(例2回)を設けるのが実務。【現場の検証点】リトライ上限到達レコードの行き先(手動キュー等)が定義されているか、リトライコストが予算内か
  • D【結論】温度変更+5回再生成は本番で劣る。【本番で劣る理由】温度を上げると出力の多様性は増えるが形式の正しさは上がらず、コストだけ5倍になる。検証エラーの内容を使わない盲目的リトライ。【有効な別シナリオ】温度は創造的タスクの調整用であり、形式修正には無関係。【現場の検証点】温度別の検証合格率を比較実測したことがあるか
  • E【結論】フリーテキスト化は本番で劣る。【本番で劣る理由】構造化の利点(機械処理・検証・自動化)を全部放棄し、コストを人手へ移す。本件の目的(自動処理)と真逆。【有効な別シナリオ】後続が人間の読み物としてのみ消費する場合は構造化は過剰。【現場の検証点】人手処理の単価と自動化の削減分を比較したか

トレードオフ

  • + 向上: 検証失敗レコードの自己修復率・欠損の捏造防止・破棄レコード(手動再処理の山)の削減
  • − 犠牲: リトライ分のトークンコスト(上限で制御)・nullable設計への後続システム側の対応
  • ⚠ 副作用: nullの多用は後続の集計・分析で欠損扱いの設計が別途必要になる・「nullが正しい」ケースと「抽出漏れ」の監視を混ぜないこと
正解: B と C

参照: docs.claude.com structured outputs ガイド(2026-09-05確認)

問009

ツールを20個繋いだらエージェントが間違ったツールを選ぶ問題

Tool Design & MCP Integrationシナリオ: 開発者生産性ツール★2単一選択

シナリオ

社内DXチームは、エージェントから社内システムを操作できるよう、REST APIのエンドポイント1個に対応するツールを1個ずつ定義して合計20個のツールをMCPサーバーで公開した。ところが実テストで、モデルが類似したツールを取り違える(顧客検索と注文検索を混同する等)・引数を間違える事例が多発した。ツールの説明文は機械生成の簡素なもので、各ツールは平均3〜5個しかパラメータを持たない。エージェントの実タスクは「顧客の注文履歴を調べて問題を特定する」等、6種類程度の業務タスクに収束している。

エージェントのツール選択精度を上げる設計として最も適切なのはどれか。

  1. 20個のままで、各ツールの説明文をさらに機械生成で大量に厚くし、網羅的な仕様書を各ツールに埋め込む
  2. 20個のままで、モデルに「使う前に候補ツールを全部列挙して比較してから選ぶ」と指示するプロンプトを追加する
  3. ツール説明のトークンを節約するため、説明文を全ツールで1行に短縮し、代わりにパラメータのJSON Schemaを厳密にする
  4. 20個のエンドポイント丸出しのツールを、業務タスク単位の少数のツール(例: 「顧客の注文履歴を調べる」「請求の不整合を特定する」)に再編し、各ツールの説明にいつ使うか・何を返すか・失敗時の挙動を具体的に書く
▶ 解説と正解を開く

クイック解説

モデルのツール選択精度はツール数が少なく・説明が具体的であるほど上がる。エンドポイント=ツールの1:1公開は選択肢を20個も提示する設計ミスで、業務タスク単位への統合が正解。

概要・アーキテクチャ解説

モデルはツール一覧の中からタスクに合うものを選ぶが、選択精度は候補数と説明の質に強く依存する。実務の指針として、同時に公開するツールは少数(4〜5個程度が目安)に絞り、各説明には「いつ使うか・引数の意味・何を返すか・エラー時の挙動」を具体的に書くのが良い設計とされる。APIのエンドポイント構造をそのままツールに写すと、モデルにとっての選択肢だけが増えて説明の区別はつかなくなる。正しい抽象化レベルは「エンドポイント」でなく「業務タスク」であり、タスク単位のツールは内部で複数のAPI呼び出しをまとめられる。

重要専門用語

  • ツール選択精度: モデルがタスクに適したツールを正しく選べる度合い。公開ツール数・説明の具体性・ツール間の類似性に依存
  • ツールの抽象化レベル: ツールをAPIエンドポイント単位で切るか・業務タスク単位で切るかの設計判断。モデルにとって意味のある単位で切るのが原則
  • ツール説明(tool description): 「いつ使うか・引数・戻り値・エラー時の挙動」を書くモデル向け仕様。選択精度を左右する最大の要因

選択肢別分析

  • A【結論】説明の厚化は本番で劣る。【本番で劣る理由】選択肢が20個ある構造的な問題は残り、説明が長くなるほどコンテキストを消費しモデルの注意が散る。機械生成の説明は「いつ使わないか」の区別に弱い。【有効な別シナリオ】少数ツールの仕様が複雑な場合の説明充実は有効。【現場の検証点】説明のトークン合計と選択精度の相関を測ったか
  • B【結論】比較指示の追加は本番で劣る。【本番で劣る理由】比較を「正しく」させるための情報(どのツールが何と違うのか)が説明に無いため、列挙させるだけのトークン消費で精度は上がらない。【有効な別シナリオ】ツール数が少数で説明が十分な場合の注意深さの補強には使える。【現場の検証点】列挙指示の有無で誤選択率が変わるかをA/B実測したか
  • C【結論】説明の1行化は本番で劣る。【本番で劣る理由】厳密なSchemaは「引数を間違えない」ことには効くが「どのツールを使うか」の判断材料は説明文にある。説明を削るのは本件(取り違え)への逆効果。【有効な別シナリオ】トークン予算が極端に厳しい場合はSchema厳密化を優先する判断もあり得る。【現場の検証点】取り違えと引数ミスのどちらが多いかを失敗ログで分類したか
  • D【結論】正解。【本番で劣る理由】なし。【有効な別シナリオ】すべての複数ツール構成で優位・エンドポイント単位が適するのはツール数が少数のときのみ。【現場の検証点】再編後のツール誤選択率を実測で比較したか、業務タスクの追加時にツール設計を見直す運用があるか

トレードオフ

  • + 向上: ツール選択精度(取り違え・引数ミスの削減)・コンテキスト消費の削減・業務タスク単位のテスト容易性
  • − 犠牲: ツール再編の実装コスト(内部でAPI呼び出しをまとめるラッパー)・業務タスク追加時のツール改修
  • ⚠ 副作用: タスク単位ツールは汎用性が下がるため、想定外のタスクに対応できない(柔軟性と精度のトレードオフ)
正解: D

参照: docs.claude.com tool use実装ガイド(2026-09-05確認)

問010

長時間稼働するサポートエージェントの会話が劣化する問題

Context Management & Reliabilityシナリオ: カスタマーサポート解決エージェント★3単一選択

シナリオ

通信会社のサポート部門は、1件の問い合わせを数十ターンにわたって処理するサポートエージェントを運用している。顧客の契約情報の照会・プラン変更の試行・エラーの調査など、1セッションで大量のツール結果が会話に蓄積する。運用3ヶ月で、セッション後半になるほど初期に確認した契約内容についての質問に答えられなくなり、同じ確認を顧客に繰り返す事例が増えた。会話の途中で「エラー: コンテキスト長超過」で実行が止まる事例も出ている。顧客との会話は止められない(セッションの再開は顧客体験として不可)。

この劣化への対処として最も適切なのはどれか。

  1. セッションが長くなったら、古い会話履歴を要約で置き換える(compaction・履歴の圧縮)と同時に、契約情報などの重要事実を要約の外に明示的に保持して、圧縮後も質問に答えられるようにする
  2. コンテキスト長超過エラーが出た時点で初めて履歴の半分を削除する処理を入れる。普段は何もしない
  3. すべてのツール結果をフルテキストのまま保持し続け、コンテキスト窓の上限が大きいモデルに乗り換えて対処する
  4. 数十ターンの会話は最初から禁止し、10ターンで強制的に会話を打ち切って新しいセッションでやり直させる
▶ 解説と正解を開く

クイック解説

長時間セッションの定石は要約による履歴圧縮+重要事実の明示的保持。「エラーが出てから削除」「窓の大きさで押し切る」「会話を打ち切る」はいずれも顧客体験か情報のどちらかを失う。

概要・アーキテクチャ解説

長い会話では、ツール結果の蓄積がコンテキスト窓の実効容量を食い潰し、初期の重要情報がモデルから「遠くなる」。対処の基本は2本立てである。第1に履歴の圧縮(compaction・要約への置き換え)で、会話を続けられる長さに保つ。第2に、圧縮で落ちては困る情報(契約番号・確認済みの事実・顧客の制約)を要約の外に構造化して明示保持する。圧縮だけだと要約が要約を圧縮する連鎖で重要事実が風化するため、「何を絶対に落とさないか」の明示が信頼性の要である。なおエラー後の対処療法(超過してからの削除)は、削除時点の選択が雑になりがちで、モデルがすでに劣化した状態を長く運用することになる。

重要専門用語

  • compaction(履歴圧縮): 古い会話履歴を要約に置き換えてコンテキスト消費を抑える手法。Claude APIのサーバー側compactionや、セッション管理側での要約置換がある
  • 重要事実の明示保持: 契約情報・確認済み事実など圧縮対象外として維持する情報の設計。要約の劣化に依存せず質問に答え続けるための仕組み
  • コンテキスト窓の実効容量: 物理的なトークン上限と、モデルが実際に活用できる情報量は異なる。蓄積によって先行情報の利用可能性が下がる問題(context rot)

選択肢別分析

  • A【結論】正解。【本番で劣る理由】なし。【有効な別シナリオ】すべての長時間セッションで優位・短い単発タスクでは過剰。【現場の検証点】圧縮後も「初期に確認した契約内容」への質問に正答できるかのリグレッションテストがあるか、保持リストの項目が運用で更新されているか
  • B【結論】エラー後の半分削除は本番で劣る。【本番で劣る理由】超過エラーが出るまで劣化(context rot)が進行しており、エラー時点の半分削除は「どの半分」の判断が雑になりやすい。顧客への再確認(本件の主訴)はエラー前に起きている。【有効な別シナリオ】大量の履歴が不要なバッチ処理では簡易な対処として機能する。【現場の検証点】削除直後の回答品質をモニタリングしているか
  • C【結論】窓の大きさへの依存は本番で劣る。【本番で劣る理由】上限が大きくても実効容量の問題(遠い情報の活用低下・コストの線形増加)は残る。ツール結果のフル保持はコストがターン数に対して2次的に増え、予算を破綻させる。【有効な別シナリオ】数十ターン未満のセッションが保証される用途では、圧縮を省くシンプルさに価値がある。【現場の検証点】トークン消費とセッション長の相関を実測しているか
  • D【結論】10ターン打ち切りは本番で最も劣る。【本番で劣る理由】顧客体験として会話の再開が不可という要件に真っ向から違反する。問題の本質(情報の維持)を解決せず制約で隠している。【有効な別シナリオ】打ち切りが許容される内部ツールの定期ジョブでは正当。【現場の検証点】打ち切り事案の顧客満足度を実測したか

トレードオフ

  • + 向上: 長時間セッションでの情報維持(再確認の防止)・コンテキスト長超過エラーの構造的排除・コストの予測可能性
  • − 犠牲: 要約の設計・保持リストの運用(何を絶対に落とさないかの判断)・圧縮処理の実装コスト
  • ⚠ 副作用: 要約により細部のニュアンスが落ちる・保持リストの項目選定を誤ると「落としてはいけない情報」が落ちる(リグレッションテストで捕捉)
正解: A

参照: docs.claude.com context management ガイド(2026-09-05確認)