生成AIの進化は、単なるデモやPoCの段階を越え、実際のビジネスや社会に組み込まれる「AIアプリケーション時代」へと移行しつつあります。本書が扱う「AIエンジニアリング」とは、単にモデルを利用するのではなく、信頼性・スケーラビリティ・安全性を備えたAIアプリケーションを設計・構築・運用するための体系的アプローチを指します。大規模言語モデル(LLM)を中心に、RAG(検索拡張生成)、エージェント設計、ワークフロー構築、ガードレールや評価手法までを幅広く解説します。さらに、アーキテクチャ設計やセキュリティ、ガバナンスといった実務的課題にも踏み込みます。研究から実装、運用までを一気通貫で捉え、使うだけのAIではなく、価値を生み出すAIへと進む道筋を示すガイドです。AIエンジニアや開発者はもちろん、AIを戦略的に活用したいビジネスリーダーにとっても必読です。
AIエンジニアリング
―基盤モデルを用いたAIアプリケーション開発の基礎と実践
Chip Huyen 著、加賀谷 諒、菅野 憲也 訳
- TOPICS
- AI/LLM
- 発行年月日
- 2025年11月
- PRINT LENGTH
- 544
- ISBN
- 978-4-8144-0138-3
- 原書
- AI Engineering
- FORMAT
- Print PDF EPUB
目次
訳者まえがき
推薦の言葉
まえがき
1章 基盤モデルを用いたAIアプリケーション開発入門
1.1 AI エンジニアリングの台頭
1.1.1 言語モデルから大規模言語モデルへ
1.1.2 大規模言語モデルから基盤モデルへ
1.1.3 基盤モデルからAI エンジニアリングへ
1.2 基盤モデルのユースケース
1.2.1 コーディング
1.2.2 画像・動画制作
1.2.3 文章作成
1.2.4 教育
1.2.5 会話ボット
1.2.6 情報の集約
1.2.7 データの整理
1.2.8 ワークフローの自動化
1.3 AI アプリケーションの計画
1.3.1 ユースケースの評価
1.3.2 期待値の設定
1.3.3 マイルストーン計画
1.3.4 メンテナンス
1.4 AI エンジニアリングスタック
1.4.1 AI スタックの3 つのレイヤー
1.4.2 AI エンジニアリングとMLエンジニアリングの違い
1.4.3 AI エンジニアリングvs フルスタックエンジニアリング
1.5 まとめ
2章 基盤モデルを理解する
2.1 学習データ
2.1.1 多言語モデル
2.1.2 ドメイン特化モデル
2.2 モデリング
2.2.1 モデルアーキテクチャ
2.2.2 モデルサイズ
2.3 事後学習
2.3.1 教師ありファインチューニング
2.3.2 選好ファインチューニング
2.4 サンプリング
2.4.1 サンプリングの基礎
2.4.2 サンプリング戦略
2.4.3 テスト時計算
2.4.4 構造化出力
2.4.5 AI の確率論的性質
2.5 まとめ
3章 評価方法論
3.1 基盤モデルを評価する上での課題
3.2 言語モデリングの指標を理解する
3.2.1 エントロピー
3.2.2 クロスエントロピー
3.2.3 BPC(Bits-per-Character)とBPB(Bits-per-Byte)
3.2.4 パープレキシティ
3.2.5 パープレキシティの解釈とユースケース
3.3 厳密な評価
3.3.1 機能正確性
3.3.2 参照データとの類似度測定
3.3.3 埋め込み入門
3.4 AI as a Judge
3.4.1 なぜAI as a Judge か?
3.4.2 AI as a Judge の使い方
3.4.3 AI as a Judge の限界
3.4.4 どのようなモデルが評価者として機能できるか?
3.5 比較評価によるモデルのランキング
3.5.1 比較評価の課題
3.5.2 比較評価の未来
3.6 まとめ
4章 AIシステムの評価
4.1 評価基準
4.1.1 ドメイン固有の能力
4.1.2 生成能力
4.1.3 指示追従能力
4.1.4 コストとレイテンシー
4.2 モデル選定
4.2.1 モデル選定のワークフロー
4.2.2 自社で作るか外部から購入するか
4.2.3 公開ベンチマークの見方
4.3 評価パイプラインの設計
4.3.1 ステップ1:システム内のすべてのコンポーネントを評価する
4.3.2 ステップ2:評価ガイドラインを作成する
4.3.3 ステップ3:評価手法とデータを定義する
4.4 まとめ
5章 プロンプトエンジニアリング
5.1 プロンプト入門
5.1.1 コンテキスト内学習:Zero-shot とFew-shot
5.1.2 システムプロンプトとユーザープロンプト
5.1.3 コンテキスト長とコンテキスト効率
5.2 プロンプトエンジニアリングのベストプラクティス
5.2.1 明確で具体的な指示を書く
5.2.2 十分なコンテキストを提供する
5.2.3 複雑なタスクをより単純なサブタスクに分割する
5.2.4 モデルに考える時間を与える
5.2.5 プロンプトを反復的に改善する
5.2.6 プロンプトエンジニアリングツールを評価する
5.2.7 プロンプトの整理とバージョン管理
5.3 防御的プロンプトエンジニアリング
5.3.1 プロプライエタリなプロンプトとリバースプロンプトエンジニアリング
5.3.2 ジェイルブレイクとプロンプトインジェクション
5.3.3 情報抽出
5.3.4 プロンプト攻撃に対する防御策
5.4 まとめ
6章 RAGとエージェント
6.1 RAG
6.1.1 RAGアーキテクチャ
6.1.2 検索アルゴリズム
6.1.3 検索最適化
6.1.4 テキスト以外のRAG
6.2 エージェント
6.2.1 エージェントの概要
6.2.2 ツール
6.2.3 プランニング
6.2.4 エージェントの失敗パターンと評価
6.3 記憶
6.4 まとめ
7章 ファインチューニング
7.1 ファインチューニングの概要
7.2 いつファインチューニングするのか
7.2.1 ファインチューニングする理由
7.2.2 ファインチューニングしない理由
7.2.3 ファインチューニングとRAG
7.3 メモリのボトルネック
7.3.1 誤差逆伝播法と訓練可能パラメータ
7.3.2 メモリ計算
7.3.3 数値表現
7.3.4 量子化
7.4 ファインチューニングのテクニック
7.4.1 PEFT - パラメータ効率の良いファインチューニング
7.4.2 モデルマージとマルチタスクファインチューニング
7.4.3 ファインチューニングの戦術
7.5 まとめ
8章 データセットエンジニアリング
8.1 データキュレーション
8.1.1 データ品質
8.1.2 データカバレッジ
8.1.3 データ量
8.1.4 データの取得とアノテーション
8.2 データ拡張とデータ合成
8.2.1 なぜデータ合成をするのか
8.2.2 従来のデータ合成技術
8.2.3 AI を利用したデータ合成
8.2.4 モデル蒸留
8.3 データ処理
8.3.1 データの検査
8.3.2 データの重複排除
8.3.3 データのクリーニングとフィルタリング
8.3.4 データのフォーマット
8.4 まとめ
9章 推論の最適化
9.1 推論の最適化を理解する
9.1.1 推論の概要
9.1.2 推論パフォーマンスのメトリクス
9.1.3 AI アクセラレーター
9.2 推論の最適化
9.2.1 モデルの最適化
9.2.2 推論サービスの最適化
9.3 まとめ
10章 AIエンジニアリングのアーキテクチャとユーザーフィードバック
10.1 AI エンジニアリングアーキテクチャ
10.1.1 ステップ1:コンテキストの強化
10.1.2 ステップ2:ガードレールの設置
10.1.3 ステップ3:モデルルーターとゲートウェイの追加
10.1.4 ステップ4:キャッシュによるレイテンシーの削減
10.1.5 ステップ5:エージェントパターンの追加
10.1.6 モニタリングとオブザーバビリティ
10.1.7 AI パイプラインのオーケストレーション
10.2 ユーザーフィードバック
10.2.1 会話フィードバックの抽出
10.2.2 フィードバック設計
10.2.3 フィードバックの限界
10.3 まとめ
エピローグ
索引