プレースホルダー画像

サンプルサンプル

サンプルサンプルサンプルサンプル

サンプル著者名
5,720円
hontoで電子版を見る

読み込み中…

作って学ぶAIエージェント──TypeScriptとLLMで切り拓くAI時代のエンジニアリング

作って学ぶAIエージェント──TypeScriptとLLMで切り拓くAI時代のエンジニアリング

通常価格 3,520 円(税込)
通常価格 セール価格 3,520 円(税込)
SALE 売り切れ
ネットストア在庫 詳細
    読み込み中...
My店舗在庫
    My店舗登録で在庫確認と店舗お受け取りのご利用が可能になります。(要ログイン)
  • 在庫表示のサンプル
商品説明
ソフトウェア開発の世界では「AIエージェント主導のコーディング」が主流になろうとしています。エージェントはコードを生成するだけでなく、ファイルを読み、コマンドを実行し、テストを実行し、結果を確認し、必要に応じて修正を繰り返します。
本書は、こうしたAIエージェントのしくみを「使う」のではなく「作る」ための実践的なガイドです。最終的にはGitHubのIssueを起点に、コードの修正からプルリクエストの作成までを自動化するコーディングエージェントを実装します。扱う技術はTypeScriptとBunを中心にし、GitHubへの統合までを扱います。
ここでは、エージェントの動作原理、つまり思考のしくみを自ら実装し、挙動の予測と制御、目的に合わせたカスタマイズを扱います。
実装するAIエージェントは、筆者が「Nano Code」と名付けたものです。LLM APIとの接続、ファイルやコマンドを扱うツール、思考ループ、Git操作、実用環境への統合といったレイヤーを章ごとに積み上げ、最終的に実用的な自動化まで進みます。章を追って段階的に構築し、コーディングエージェントとして機能する流れを整理します。
対象読者は、TypeScriptでアプリケーションやコマンドラインツールを作った経験があり、AIエージェント開発やLLM活用に関心があるエンジニアです。TypeScriptとLLMを軸に、AI時代のエンジニアリングの実践手法を解説します。
目次
第1部 第1部 AIエージェント開発の全体像をつかむ

第1章 AIエージェントが拓く新しい開発スタイル
1.1 AIエージェントの台頭と開発手法の変化
1.2 AIエージェントを学ぶ意義
1.3 本書のゴール──3つのコンポーネントで作るAIエージェント
1.4 本書の学習アプローチ
1.5 AIエージェントの構成要素──ツールと思考ループ
1.6 本書の学習ロードマップ
1.7 この章のまとめと次のステップ

第2章 開発環境とLLM APIの基礎
2.1 TypeScriptを採用する理由
2.2 Bunを採用する理由
2.3 Dev Containerを採用する理由
2.4 LLM APIの基礎
2.5 開発環境のセットアップ
2.6 本書で使用するモデル
2.7 ハンズオン(1):最初のAPIコール
2.8 この章のまとめと次のステップ

第2部 AIエージェントの「身体」を作る

第3章 LLM APIへの抽象化レイヤーを実装する
3.0 これまでの振り返りと、この章で作るもの
3.1 抽象化レイヤーの必要性
3.2 型定義──統一インタフェースの設計
3.3 プロバイダー層の実装
3.4 ハンズオン(2):generateText関数の実装
3.5 ハンズオン(3):マルチプロバイダー対応のテスト
3.6 プロバイダー間の差異吸収の整理
3.7 この章のまとめと次のステップ

第4章 Nano Codeの「手足」となるツールを実装する
4.0 これまでの振り返りと、この章で作るもの
4.1 ローカル環境でのコマンド実行の危険性
4.2 ツールが必要となる背景
4.3 ツールの基本構造
4.4 ハンズオン(4):ファイルの読み書きツール(readFile、writeFile、editFile)の実装
4.5 ハンズオン(5):コマンド実行ツール(execCommand)の実装
4.6 ツールの統合
4.7 補足:さらなる安全性強化へ──アプリケーションとOSによる二層の防御
4.8 この章のまとめと次のステップ

第5章 Nano Codeの「頭脳」となる思考ループと承認ポリシーを実装する
5.0 これまでの振り返りと、この章で作るもの
5.1 なぜ思考ループが必要なのか
5.2 最小のエージェント──1往復の会話
5.3 繰り返しを追加する──会話のループ
5.4 ハンズオン(6):ツール実行を統合する
5.5 承認ポリシー──ツール実行前の確認機構
5.6 エラーハンドリング──executeToolの内部拡張
5.7 その他の安全性の考慮
5.8 Agentクラス(再利用可能な設計)
5.9 デバッグとテスト
5.10 この章のまとめと次のステップ

第3部 AIエージェントを完成させ、実用化する

第6章 Nano Codeを組み立てる
6.0 これまでの振り返りと、この章で作るもの
6.1 Nano Codeに明確な指示を与える
6.2 ハンズオン(7):CLIで動くNano Codeの実装
6.3 実行例と出力
6.4 思考過程の可視化
6.5 ハンズオン(8):コンテキスト管理の実装
6.6 この章のまとめと次のステップ

第7章 GitHub Actionsで開発ワークフローを自動化する
7.0 これまでの振り返りと、この章で作るもの
7.1 ハンズオン(9):最小構成で動かす
7.2 Secretsと権限
7.3 Git操作ツール
7.4 GitHub CLIによるプルリクエスト作成
7.5 cli.tsへのツール組み込み
7.6 手動トリガーでの動作確認
7.7 Issueイベントへの接続
7.8 状況を認識して行動を変える──再実行への対応
7.9 完全なソースコード
7.10 この章のまとめと次のステップ

第4部 より賢く、安全なAIエージェントへ

第8章 Nano Codeの性能と安全性を高めるサンドボックス
8.0 これまでの振り返りと、この章で作るもの
8.1 なぜ多層防御が必要なのか
Layer 1:基盤インフラ(Docker/GitHub Actions)
Layer 2:プロセス隔離(bubblewrap)
Layer 3:アプリケーション制御(TypeScript)
8.2 ハンズオン(10):アプリケーション制御を実装する
8.3 ハンズオン(11):プロセス隔離を実装する
8.4 攻撃が無力化されることを確認する
8.5 この章のまとめと次のステップ

第9章 AIエージェント開発のこれから
9.1 本書の振り返りと到達点
9.2 Nano Codeの拡張可能性
9.3 開発の前提が書き換わる
9.4 エンジニアの役割の変化
9.5 チームとプロセスの再設計
9.6 トレードオフとエンジニアの責任
9.7 技術変化への対応
9.8 実装から運用へ

Appendix A ストリーミングAPIへの対応
A.1 なぜストリーミングが必要か──設計視点から
A.2 抽象化の設計原則
A.3 StreamChunk型──中間言語としての設計
A.4 LanguageModelインタフェースの拡張
A.5 OpenAIプロバイダーのストリーミング実装
A.6 Anthropicプロバイダーのストリーミング実装
A.7 Googleプロバイダーのストリーミング実装
A.8 統一関数──generateStreamText
A.9 ストリーミングと非ストリーミングの統一──collectStreamResult
A.10 Nano Codeへの組み込み
A.11 設計のまとめ

Appendix B Responses APIへの対応
B.1 Responses APIの設計
B.2 抽象化レイヤーによる変更の局所化
B.3 createOpenAIResponsesの実装
B.4 Reasoningの扱い
B.5 Responses APIへの移行

Appendix C 参考にしたプロジェクト
C.1 コーディングエージェントCLI
C.2 エージェントフレームワーク・ライブラリ
C.3 セキュリティ・サンドボックス
詳細を表示する

カスタマーレビュー

honto本の通販ストアのレビュー(0件)

並び順:
1/1ページ

最近チェックした商品