クイズの説明
Month 3「AIエージェントを開発しよう」の総合理解度を確認する卒業クイズです。
- 全10問
- 合格ライン: 80%(8問正解)
- 不合格の場合は該当セクションを復習してから再挑戦してください
問題
Q1. AIエージェントの構成要素として正しい組み合わせはどれですか?
- A) データベース、API、フロントエンド、バックエンド
- B) LLM(頭脳)、ツール(手足)、メモリ(記憶)、プランナー(計画)
- C) CPU、メモリ、ストレージ、ネットワーク
- D) プロンプト、レスポンス、コンテキスト、トークン
答えを見る
正解: B
AIエージェントは、LLM(推論・判断を行う頭脳)、ツール(外部システムと連携する手足)、メモリ(会話履歴・中間結果の記憶)、プランナー(タスク分解・実行順序の計画)の4つの要素で構成されます。
Q2. ReActパターンとPlan-and-Executeパターンの使い分けとして正しいものはどれですか?
- A) ReActは計画的なタスク、Plan-and-Executeは探索的なタスクに適する
- B) ReActは探索的なタスク、Plan-and-Executeは手順が明確な複合タスクに適する
- C) どちらも同じ用途に使えるため、使い分けは不要
- D) ReActは大規模システム、Plan-and-Executeは小規模システムに適する
答えを見る
正解: B
ReActは状況に応じて動的にアクションを選択する探索的なタスク(トラブルシューティングなど)に適し、Plan-and-Executeは処理手順が事前に定義できる複合タスク(レポート作成、データパイプラインなど)に適します。
Q3. ファンクションコーリングにおいて、ツールの説明文(description)に含めるべき情報はどれですか?
- A) ツールのソースコード全文
- B) ツールの目的、返却情報、使い分け(類似ツールとの区別)
- C) ツールの実装言語とフレームワーク
- D) ツールの開発者名と作成日
答えを見る
正解: B
ツールの説明文はLLMがツール選択の判断材料にする最も重要な情報です。ツールの目的(何をするか)、返却される情報、類似ツールとの使い分け(いつこのツールを使うべきか/使うべきでないか)を明確に記述することで、LLMのツール選択精度が向上します。
Q4. LangGraphのConditional Edgeの説明として正しいものはどれですか?
- A) エッジに条件を付けて、ランダムに次のノードを選択する
- B) ルーティング関数がStateの値に基づいて次に実行するノードを動的に選択する
- C) 常に同じノードに遷移するが、実行するかどうかを条件で判断する
- D) エッジの重みに基づいて最短経路のノードを選択する
答えを見る
正解: B
Conditional Edgeは、ルーティング関数がState(ワークフローの現在の状態)を評価し、条件に応じて次に実行するノードを動的に選択する仕組みです。add_conditional_edges メソッドで、分岐元ノード、ルーティング関数、遷移先のマッピングを定義します。
Q5. Human-in-the-Loopの interrupt_before を使用すべきシナリオはどれですか?
- A) FAQ検索の前にユーザーの確認を取りたい場合
- B) 返金処理など、重要な操作の前に人間の承認を得たい場合
- C) LLMの応答速度を制御したい場合
- D) ツールの実行結果をキャッシュしたい場合
答えを見る
正解: B
interrupt_before は、返金処理、注文キャンセル、アカウント削除などの重要な操作の前にワークフローを中断し、人間の承認を得るために使用します。中断中は状態がCheckpointerに保存され、承認後に update_state と invoke で再開できます。
Q6. A2AプロトコルとMCPの違いとして正しいものはどれですか?
- A) A2Aはエージェント間の通信、MCPはLLMとツール/データソースの接続
- B) A2Aはテキスト通信、MCPはバイナリ通信
- C) A2AはGoogleが開発、MCPはOpenAIが開発
- D) A2AとMCPは同じプロトコルの別名
答えを見る
正解: A
A2A(Agent-to-Agent)はエージェント間の高レベルなタスク委任のためのプロトコルで、Agent Cardで能力を宣言し、Taskで処理を依頼します。MCP(Model Context Protocol)はLLMと外部ツール/データソースを接続するための低レベルなプロトコルです。エージェント内でMCPを使いつつ、エージェント間ではA2Aで通信する、という使い分けになります。
Q7. Supervisorパターンでエージェント数が10体を超えた場合の推奨対応はどれですか?
- A) Supervisorのプロンプトを改善してすべてのエージェントを管理する
- B) Hierarchyパターンに移行し、チームリーダーエージェントで階層化する
- C) エージェント数を減らして1つに統合する
- D) Swarmパターンに全面移行する
答えを見る
正解: B
エージェント数が10体を超える大規模システムでは、Hierarchyパターン(階層型)が適しています。統括マネージャーの下にチームリーダーエージェントを配置し、各チームリーダーが3-5体の作業者エージェントを管理する構造にすることで、Supervisorの負担を分散できます。
Q8. エージェントのGuardrailsで「3段階の防御」として正しい順序はどれですか?
- A) Output → Action → Input
- B) Action → Input → Output
- C) Input → Action → Output
- D) Input → Output → Action
答えを見る
正解: C
Guardrailsは、Input(入力フィルタリング: プロンプトインジェクション検出、入力バリデーション)→ Action(行動制限: ツール使用制限、金額上限、レート制限)→ Output(出力検証: 機密情報除去、スコープ制限)の3段階で設計します。データの流れに沿って、入口から出口まで多層防御を行います。
Q9. エージェントのObservabilityで、LangSmithが主にトレースする情報はどれですか?
- A) サーバーのCPU使用率とメモリ消費量
- B) LLMの入出力、ツール呼び出し、各ステップのレイテンシとトークン使用量
- C) ユーザーのブラウザ情報とアクセスログ
- D) データベースのクエリ実行計画
答えを見る
正解: B
LangSmithは、LLMアプリケーションの実行トレースを記録・可視化するプラットフォームです。LLMへの入力プロンプトと出力、ツール呼び出しのパラメータと結果、各ステップのレイテンシ、トークン使用量、コスト推定などをトレースとして記録し、ツリービューで可視化できます。
Q10. 以下のシナリオに対する最適なエージェントシステム設計はどれですか?
シナリオ: NetShop社で、顧客から「注文した商品が届かない。追跡したら配送トラブルが発生していた。返金か再送のどちらかで対応してほしい」という問い合わせが来た。
- A) FAQエージェントのみで対応する
- B) 単一のReActエージェントですべての処理を行う
- C) Supervisorが Order Agent → Shipping Agent → Payment Agent を順次呼び出し、返金時はHITLで承認を得る
- D) すべてのエージェントを並列実行して結果を統合する
答えを見る
正解: C
この問い合わせは複数のシステム(注文、配送、決済)を横断する複合タスクです。Supervisorが全体を制御し、まず Order Agent で注文情報を確認、次に Shipping Agent で配送状況を追跡(依存関係あり)、対応方針(返金 or 再送)に応じて Payment Agent(返金の場合、HITL承認付き)または Shipping Agent(再送の場合)を呼び出す設計が最適です。
結果
8問以上正解の場合
合格です。Month 3「AIエージェントを開発しよう」を修了しました。
Month 3で習得したスキル:
- AIエージェントの設計パターン(ReAct、Plan-and-Execute、Reflection)
- Tool Use / ファンクションコーリングの実装
- LangGraphによるワークフロー構築
- マルチエージェントシステムの設計(Supervisor、A2A)
- エージェントの信頼性・安全性(Guardrails、Observability、テスト)
次のMonth 4では、これらの知識をさらに発展させた高度なトピックに取り組みます。
7問以下の場合
もう少し復習しましょう。
| 問題 | 復習セクション |
|---|---|
| Q1 | Step 1: AIエージェント入門 |
| Q2 | Step 1: ReAct / Plan-and-Execute |
| Q3 | Step 2: ファンクションコーリング |
| Q4 | Step 3: LangGraph条件分岐 |
| Q5 | Step 3: Human-in-the-Loop |
| Q6 | Step 4: A2Aプロトコル |
| Q7 | Step 4: マルチエージェントパターン |
| Q8 | Step 5: Guardrails設計 |
| Q9 | Step 5: ログとトレース |
| Q10 | 全Step: 総合的な設計判断 |
推定所要時間: 30分