freeCodeCamp: AIエージェント構築の完全ガイド - 2時間クラッシュコース
AIエージェントをゼロから構築する包括的なチュートリアル:LLM呼び出し、メモリ、ツール、アーキテクチャパターン、そしてAI時代においても人間が重要である理由。
なぜエージェントはこれまでのAIとは根本的に異なるのか
Tech42のMachine Learning Architect(元神経科学博士課程出身)であるRolaが、誇大広告を排除したエージェントAIのマスタークラスを提供します。これは概念的な概要ではありません。エージェントがチャットボット、ワークフロー、従来のMLとどう異なるかを示す、動作するPythonコードを使った実践的なチュートリアルです。
重要な洞察: "An agent has dynamic control flow devised by the LLM at runtime, whereas a workflow is predefined coded graphs."(エージェントはLLMが実行時に考案する動的な制御フローを持つのに対し、ワークフローは事前定義されたコード化されたグラフです)この一つの区別が、エージェントを使うべき時(そして使うべきでない時)のすべてを説明しています。
生成AIブームの独自性について: 以前のMLの波は技術的スキルを必要としましたが、"even my mother who has never touched a computer knows what ChatGPT is and uses it on her phone."(コンピュータに触れたことのない私の母でさえ、ChatGPTが何かを知っていて、スマホで使っています)この民主化は、これらのモデルが人間の言語をインターフェースとして使用しているために起こりました。
これを可能にした変化について: 3つの柱が同時に進歩する必要がありました。データ(メガバイト→ペタバイト)、モデルサイズ(数百万→数兆のパラメータ)、そして計算能力(逐次処理→Transformerによる並列学習)です。GPT-4の1.8兆パラメータは3ヶ月間学習されました。Transformer論文による並列化がなければ、私たちはまだ待っていたでしょう。
エージェントループについて: コアはシンプルです。計画、実行、観察、繰り返し。"You give it a task, it uses the LLM to plan and decompose that task, it acts with tools, observes the output, and loops until the solution is achieved."(タスクを与えると、LLMを使ってそのタスクを計画・分解し、ツールで行動し、出力を観察し、解決策が達成されるまでループします)
すべてのエージェントに必要な4つのコンポーネント
このチュートリアルでは、すべてのエージェント実装に共通して現れる要素を特定しています:
- 目的/ゴール - 解決するタスク(システムプロンプト)
- 推論/計画 - 「脳」としてのLLM
- メモリ - 短期(コンテキストウィンドウ)と長期(外部ストレージ)
- ツール/アクション - LLMの能力を拡張する関数、API、データ取得
LLMのステートレス性について: ライブデモがこれを証明します。LLMにあなたの名前を聞き、会話の後で再度尋ねてみてください。メモリ管理がなければ、忘れてしまいます。これが、コードがすべての会話ターンをコンテキストウィンドウに追加する理由です。
ツールによる能力拡張について: LLMには学習のカットオフ日があります。天気、現在の日付、時刻を教えることができません。ツールは外部APIへのアクセスを与えることでこれを解決します。デモでこれが動作する様子が示されます:「今何時?」→ツール呼び出し→「1:43」
エージェントが機能する時(そして機能しない時)
これが最も実践的なセクションです。エージェントとワークフローのどちらを使うべきかの判断フレームワークです:
ワークフローを使う場合:
- ミッションクリティカルまたはエラーに敏感なアプリケーション
- 決定論的な結果を必要とする規制産業
- レイテンシに敏感なシステム
- コストに敏感なプロジェクト(見積もりが容易)
- 問題の解決方法が正確にわかっている場合
エージェントを使う場合:
- エラーが許容される
- 実行パスをコード化するのが難しい
- より良いパフォーマンスが必要(エージェントのループ = 平均的により良い結果)
- コストが主要な制約ではない
- モデル主導の意思決定が許容される
確認すべき重要な質問:
- タスクのパスは予測可能か?
- その価値はコストに見合うか?
- レイテンシは重要か?
- エラー許容度は許容範囲か?
マルチエージェントアーキテクチャ:SupervisorとSwarm
このチュートリアルには、2つのアーキテクチャパターンのライブコスト比較が含まれています:
Supervisorアーキテクチャ: 1つのSupervisorエージェントが専門エージェント(加算、乗算、除算)に委譲します。エージェント同士は直接通信できません。すべてがSupervisorを経由します。結果:16ホップ、10エージェントアクション、6転送、約8,000入力トークン。
Swarmアーキテクチャ: すべてのエージェントが互いに直接通信できます。結果:8インタラクション、2転送、約5,000入力トークン。
ガイダンス: シンプルなタスクにはSwarmの方が安価です。しかし、複雑さが増すにつれて、Supervisorアーキテクチャの方がソリューション空間がより制約されているため、デバッグが容易になります。"If you can get away with a single agent, you should try to get away with a single agent just because of the overhead."(単一エージェントで済むなら、オーバーヘッドのために単一エージェントで済ませるべきです)
標準化の推進:MCP、A2A、AGUI
エージェントインターフェースが標準化されつつあります:
- MCP (Model Context Protocol) - ツールとデータのためのAnthropicのプロトコル、現在はOpenAIとともにLinux Foundationに寄贈
- A2A (Agent2Agent) - Googleのエージェント間通信プロトコル
- AGUI - Copilot、Crew AI、LangChainからの人間-エージェントインタラクション標準
"Think of it as a USB or HDMI portal. If interfaces are the same, we can plug and play different systems."(USBやHDMIポートのようなものと考えてください。インターフェースが同じであれば、異なるシステムをプラグアンドプレイできます)これにより、エコシステム全体でツールを共有できるMCPハブが可能になります。
誰も話したがらない課題
このチュートリアルは実際の問題から目を背けません:
2025年のインシデントから:
- Replitエージェントがコードフリーズ後に本番環境を削除(回答:「すみません、パニックになりました」)
- Air Canadaがチャットボットの誤ったアドバイスに対して責任を問われる
- 400億ドルのGenAI製品がビジネス価値を提供していないと報告
評価の複雑さについて: 評価すべき3つの層があります。LLM自体(幻覚、精度)、エージェントシステム(ツール選択、タスク完了)、そしてアプリケーション(レイテンシ、コスト、UX)。それぞれ異なる評価アプローチが必要です。
エラーの複合について: エージェントが複雑なタスクで間違った方向に進むと、エラーが複合します。予測可能なパスを持つワークフローとは異なり、エージェントのデバッグは複雑になる可能性があります。
エージェントはあなたの仕事を奪うのか?モラベックのパラドックス
Microsoft Researchの2025年7月の研究は、AI適用性で仕事をランク付けしました:
高い適用性: 校正者、編集者、数学者、データサイエンティスト、Web開発者 低い適用性: 看護助手、皿洗い、屋根職人、床研磨工
これはモラベックのパラドックスと一致します:人間にとって難しいことはAIにとって簡単であり、その逆もまた然りです。人間は6ヶ月でハイハイし、1歳で歩きます。これらは古い進化的スキルです。チェスや哲学は新しく選択的です。AIはこれを逆転させます。1997年にチェスチャンピオンを破りましたが、ロボットを確実に歩かせることにはまだ苦労しています。
AI時代のキャリアアドバイス
実践的なポイント:
- AIを学び、恐れない - これはツールです。私たちがどう使うかが未来を書きます
- 基礎は色あせない - 物理学、数学、アーキテクチャ、ネットワーキングは不可欠であり続けます
- 抽象化のはしごを上がる - 問題を定義し、解決策を設計し、結果に責任を持つ
- システムで考える - コンテキストウィンドウはコードベース全体には十分な大きさではありません
- 博識家になる - 知識ベースを広げる
- ニッチを見つける - AIは最先端や斬新なアイデアをうまく扱えません
- 人間的要素に焦点を当てる - 信頼、つながり、ネットワークを構築する
"AI is a junior assistant that's good with syntax but still needs a lot of guidance."(AIは構文には強いジュニアアシスタントですが、まだ多くの指導が必要です)そのように扱ってください。
エージェントAIクラッシュコースからの8つのポイント
- 動的制御フロー - エージェントをワークフローから分ける決定的な特徴
- 4つのコンポーネント - 目的、推論(LLM)、メモリ、ツール
- ワークフローを使う時 - ミッションクリティカル、決定論的、コスト重視
- エージェントを使う時 - パフォーマンスが重要、パスが複雑、エラーが許容される
- まず単一エージェント - マルチエージェントのオーバーヘッドは現実;可能なら避ける
- SwarmとSupervisor - Swarmは安価;Supervisorは大規模でデバッグしやすい
- 標準化が進行中 - MCP、A2A、AGUIがエコシステムの相互運用性を創出
- 人間的要素 - ネットワーク、信頼、つながりはAI耐性がある
AIエージェントを導入する組織への結論
これは、エージェントをゼロから構築するための最も包括的な無料リソースです。Rolaのアプローチ(フレームワークの前に生のPythonを見せる)は、LangChainや他のツールが抽象化しているものを明らかにします。アーキテクチャ間のコスト比較は、アーキテクチャ決定のための実際のデータを提供します。
この分野は2〜3年の歴史しかありません。フレームワークは変わり、モデルは廃止され、ベストプラクティスは進化します。しかし、基礎(計画/実行/観察ループ、メモリ管理、ツール統合、動的制御フロー)は、深く理解する価値のある安定したパターンです。


