Files
ai-agent-book/chapter5/README.ja.md
T
liqiang b119135836
Build latest book artifacts / build (push) Canceled after 0s
dependency resolution / resolve (3.11) (push) Canceled after 0s
dependency resolution / resolve (3.13) (push) Canceled after 0s
deploy-pages / build (push) Canceled after 0s
deploy-pages / deploy (push) Canceled after 0s
i18n consistency check / check (push) Canceled after 0s
provider adoption tests / test (chapter2/context-compression) (push) Canceled after 0s
provider adoption tests / test (chapter2/prompt-injection) (push) Canceled after 0s
provider adoption tests / test (chapter2/system-hint) (push) Canceled after 0s
provider adoption tests / test (chapter3/log-sanitization) (push) Canceled after 0s
web-search-agent tests / test (push) Canceled after 0s
web-search-agent tests / agentbook (push) Canceled after 0s
ai-agent-book 精选快照(<2MB 代码与文档,来自 github.com/bojieli/ai-agent-book)
2026-08-20 13:12:50 +00:00

41 lines
7.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 第5章 · Coding Agent とコード生成
> コードは「新しいツールを作り出せるツール」であり、汎用 Agent のメタ能力である。プロダクショングレードの Coding Agent を例に、この最も強力な汎用ツールの完全な実装を示す。
← [メイン README に戻る](../docs/ja/README.md) · 📖 [章の本文を読む](../book-ja/chapter5.ja.md)
## 実験の読み方
本文では短い mechanism skeleton で制御フローを説明し、実験ディレクトリには完全な SDK アダプター、ログ、テスト、受け入れ証拠を置きます。すべてのファイルを一行ずつ読む必要はありません。
- **Starter:** 目的・最小コマンド・受け入れ条件から始め、まず [coding-agent](coding-agent/);
- **Builder:** エントリポイント、中心ループ、状態/メッセージ schema、ツール、検証器を追います。
- **Maintainer:** 最後にテスト、証拠 manifest、失敗処理、rollback 経路、provider adapter を読みます。
初読では認証情報、表示層、provider 互換層を飛ばし、数値を再現するときに戻ってください。
## 付随プロジェクト
| 実験 | プロジェクト | 種類 | 説明 |
| :--: | --- | :--: | --- |
| 5-1 | [code-for-math](code-for-math/) | ✅ | 同じモデルを使い、同じ競技数学の問題セットに対して「純粋な思考連鎖」方式と「コード支援」方式を比較する。後者では、問題を Pythonsympy/numpy/scipy)に形式化し、サブプロセスサンドボックス内で function calling を介して実行する。誤りやすい暗算を正確な計算に置き換えることで、精度が大幅に向上する。 |
| 5-2 | [code-for-logic](code-for-logic/) | ✅ | 「騎士と悪党」の論理パズルを制約充足問題(CSP)に変換する。Agent は `python-constraint` を用いて変数と双条件制約を定義し、ソルバーを呼び出す。K&K パズルのセットに対して、純粋な自然言語推論方式とコード支援方式の精度を比較する。 |
| 5-3 | [small-model-codified-rules](small-model-codified-rules/) | ✅ | τ-bench の航空会社カスタマーサービスシナリオに基づく制御実験。複雑な業務ポリシー(返金ルール)を自然言語プロンプトからコード/ツールへ移すことで、小型モデルのタスク成功率とポリシー遵守が劇的に向上した。ツール内のコード検証は、モデルの誤った信念をリアルタイムで遮断できる。 |
| 5-4 | [paper-to-ppt](paper-to-ppt/) | ✅ | 「PPT を作る」ことをコード生成問題として再定義する。Proposer が SlidevMarkdown+HTML)コードを書き、Reviewer が各ページを PNG にレンダリングして Vision LLM でレイアウト問題をチェックし、構造化されたフィードバックに基づいて修正を反復する。この二重 Agent の分業により、ピーク時のコンテキストサイズが大幅に小さくなる。 |
| 5-5 | [paper-to-video](paper-to-video/) | ✅ | 「Paper → PPT」を基盤に、各スライドに対して口語的なナレーション原稿を生成し、TTS で音声を合成し、次に ffmpeg を用いて各スライドのスクリーンショットとその音声をページごとに同期させ、ナレーション付きの解説動画を作成する。 |
| 5-6 | [video-edit](video-edit/) | ✅ | マルチシーンの動画と自然言語のリクエストが与えられると、Agent は「2 段階の Vision 位置特定」プロセス(粗いフレーム抽出から細かい抽出・読み取りへ)を用いて、対象シーンの時間境界を決定する。セグメントを切り出した後、Reviewer が結果のクリップからキーフレームを抽出して検証し、結果が不十分な場合は反復する。 |
| 5-7 | [adaptive-log-parser](adaptive-log-parser/) | ✅ | 自己進化するログ解析システム。解析できない新しい形式に遭遇したとき、エラーを発生させるのではなく、失敗したサンプルとエラーメッセージをコード生成 Agent に渡して `parse` 関数を生成させる。自動テストに合格した後、その関数はホット更新され解析エンジンに登録される。プロセス全体を通して人間の介入を必要としない。 |
| 5-8 | [log-diagnosis](log-diagnosis/) | ✅ | 診断 Agent が実 HTTP トラジェクトリ、アーキテクチャ文書、PRD を読み、回帰テストを生成して修正前後に再生する。正式キャンペーンでは公式 GitHub MCP を通じて実 Issue を作成し、認証情報を除いた証跡を保存する。 |
| 5-9 | [dynamic-form](dynamic-form/) | ✅ | 不完全なリクエストに直面したとき、Agent は 1 つずつ質問するのではなく、カスケードロジックを持つ自己完結型の HTML フォームを動的に生成し、ユーザーが不足しているすべての情報を一度に入力できるようにする。フロントエンドはフォームデータを JSON に集約して Agent に返し、タスクを継続する。 |
| 5-10 | [erp-agent](erp-agent/) | ✅ | 中国語の自然言語クエリを SQL に翻訳してデータベースで実行し、結果のテーブルを直接提示する。中核は artifact パターンであり、LLM はデータ自体を動かすことなく SQL の artifact のみを生成するため、トークンを節約し手作業の計算ミスを回避する。数万行の結果セットでも即座に返せる。 |
| 5-11 | [conversational-ui](conversational-ui/) | ✅ | ユーザーが UI のカスタマイズ要求(色/フォント/テキスト/レイアウト)を自然言語で提案する。Agent は React フロントエンドのソースコードを自律的に特定・修正する。Vite のホットモジュール置換(HMR)を活用して変更が即座に反映され、複数ターンの反復的なカスタマイズをサポートする。 |
| 5-12 | [permission-embedded-data-objects](permission-embedded-data-objects/) | ✅ | PostgreSQL 上のオブジェクトストアが、動的に生成されるアプリケーションコードの下で認可・検証・参照整合性を強制する。 |
| 5-13 | [agent-creator](agent-creator/) | ✅ | 検証済み参照実装を複製・修正する方式とゼロから生成する方式を比較するメタプログラミング Agent。両群をコンパイル・テストし、実 Kimi K3 ツール呼び出し API で検証する。 |
## プロジェクトの種類
| アイコン | 種類 | 意味 |
| :--: | --- | --- |
| ✅ | **単独実行** | このリポジトリに完全なコードがあり、API キーを設定すれば実行できる |
| 📖 | **再現ガイド** | `git clone` が必要な**外部リポジトリ**に依存する詳細ドキュメント |
| 🚧 | **設計ドキュメント** | アーキテクチャ/実装計画のみで、実行可能なコードは未完成 |