AI深掘り

AIエンジニアリングをゼロから深掘り:AIシステムを自作するためのオープンソースカリキュラム

AI Engineering From Scratchは、数学とMLの基礎からディープラーニング、transformers、LLMs、ツール、エージェント、MCP、インフラ、安全性、そしてキャップストーンプロジェクトに至るまで、AIシステムをゼロから構築するためのMITライセンスのカリキュラム兼リファレンスマニュアルです。

2026年6月更新
数学からLLM、エージェント、本番環境のインフラ、プロンプト、スキル、MCPサーバーまで、カリキュラムの各フェーズを階層的に示したAI Engineering From Scratchのガイドヒーロー画像

このリポジトリはフレームワークでも週末のチュートリアルでもありません。これは、API呼び出しの背後にあるスタックを理解したい人々のための、レッスンフォルダ、実行可能なコード、ドキュメント、クイズ、生成されたウェブサイトデータ、エージェントスキル、プロンプト、スクリプト、貢献ルールを備えた構造化された学習システムです。

Get the latest on AI, LLMs & developer tools

New MCP servers, model updates, and guides like this one — delivered weekly.

編集メモ

この記事では、2026年6月2日時点で収集されたGitHubリポジトリ、README、ロードマップ、要件、スクリプト、サイトビルドファイル、issues、PRs、ウェブサイト、Reddit、X検索、およびサードパーティの記事を使用しています。READMEとウェブサイトでレッスンの数が異なる場合があるため、この記事では変動しやすい数ではなく構造に焦点を当てています。

1. ai-engineering-from-scratch を一言で

AI Engineering From ScratchはオープンソースのAIカリキュラムリポジトリであり、各レッスンは概念を教え、ゼロから実装し、本番環境のライブラリと比較し、プロンプト、スキル、エージェント、またはMCPサーバーといった再利用可能な成果物を出荷することを目的としています。

領域詳細重要な理由
リポジトリrohitg00/ai-engineering-from-scratchhttps://github.com/rohitg00/ai-engineering-from-scratch
主な言語Python調査時点での GitHub 上の主な言語。
ライセンスMIT同梱物やバイナリのライセンスは必要に応じて別途確認してください。
作成日2026年3月18日調査中にGitHubのリリースは見つかりませんでした。mainブランチとウェブサイトは活発に更新されています。

2. なぜ重要か

このリポジトリが重要なのは、多くのAI開発者がAPIを呼び出すことはできても、その呼び出しの背後にある数学、モデルの挙動、検索の失敗、エージェントループ、評価ハーネス、または本番環境でのトレードオフを説明できないためです。

このカリキュラムの前提は単純です。まず自分で小規模なバージョンを構築し、それからフレームワークを使用することです。そのパターンにより、PyTorch、Transformers、LangGraph、MCP、および本番環境のRAGが魔法のようなものではなくなります。

最も適した読者は、プレイリストではなく長い道のりを歩みたいと考えている現役のエンジニアです。これは、AIへの熱意を永続的な社内能力に変えようとしているチームにとって特に重要です。

3. アーキテクチャとメンタルモデル

このリポジトリはフェーズとレッスンを中心に構成されています。各レッスンはドキュメント、コード、クイズ、出力という一貫した形式に従っており、スクリプトがレッスンを監査し、カタログを構築し、スキルをインストールし、公開ウェブサイトを生成します。

領域詳細重要な理由
カリキュラム`phases/<phase>/<lesson>/`レッスンフォルダーには、ドキュメント、実行可能なコード、クイズのJSON、および再利用可能な出力が含まれています。
ロードマップ`ROADMAP.md`標準的なフェーズ構造、推定時間、およびレッスンの範囲。
ウェブサイト`site/build.js`、ウェブサイトデータリポジトリのコンテンツからパブリックリーダーの体験を構築します。
スキルヘルパー`.claude/skills/find-your-level`、`check-understanding`エージェント支援による配置とフェーズクイズ。
出力`phases/**/outputs/`レッスンによって生成されたプロンプト、スキル、エージェント、およびMCP関連のアーティファクト。
スクリプト`scripts/build_catalog.py`, `install_skills.py`, `lesson_run.py`, `audit_lessons.py`カタログ生成、スキルインストール、コードチェック、およびレッスン不変量監査。
CI`.github/workflows/curriculum.yml`監査およびサイト/READMEの同期を自動化します。
コントリビューター向けルール`AGENTS.md`, `CONTRIBUTING.md`, `LESSON_TEMPLATE.md`レッスン形式とAIエージェントの貢献を規律あるものに保ちます。

4. 最小のエンドツーエンド設定

以下のコマンドはリポジトリのドキュメントから引用し、現在の調査スナップショットと照合したものです。本番環境に導入する前に、出発点として扱い、リンク先の README も読んでください。

git clone https://github.com/rohitg00/ai-engineering-from-scratch.git
cd ai-engineering-from-scratch

# Run a first lesson implementation
python phases/01-math-foundations/01-linear-algebra-intuition/code/vectors.py

# Install Python dependencies when needed
python -m pip install -r requirements.txt

重要なデータや大規模なワークスペースに接続する前に、小さな最初のタスクで統合を確認してください。

# Find your starting point inside a supported agent
/find-your-level

# Check a phase after studying
/check-understanding 3

# Inspect the generated catalog
python3 scripts/build_catalog.py --stdout

# Install lesson skills into a target skill directory
python3 scripts/install_skills.py <target-dir> --phase 14

# Validate lesson code without running heavy jobs
python3 scripts/lesson_run.py

5. 技術的ディープダイブ

5.1 レッスンループこそがプロダクトです。

READMEには、問題、概念、構築、使用、出荷という繰り返しのパターンが記述されています。この構造は、フレームワークを使用する前に概念的な理解を強制するため、単なるレッスンの数よりも重要です。

例えば、レッスンでは概念をプレーンなPythonで実装し、次にライブラリと比較し、その後、その概念を後で活用するのに役立つプロンプトやスキルをエクスポートすることができます。

lesson/
  docs/en.md     # explanation
  code/          # runnable implementation
  quiz.json      # check understanding
  outputs/       # prompt, skill, agent, or MCP artifact

5.2 カリキュラムは基礎からエージェントへと段階的に進みます。

フェーズ構造はセットアップと数学から始まり、ML、ディープラーニング、ビジョン、NLP、音声、トランスフォーマー、生成AI、LLM、マルチモーダルシステム、ツール、エージェント、プロダクション、安全性、そしてキャップストーンへと進みます。

その広範さゆえにリファレンスマニュアルとして有用ですが、同時に威圧的でもあります。`/find-your-level`スキルは実用的な回答です。もし実際のギャップがエージェント評価やプロダクションRAGにあるなら、フェーズゼロから始める必要はありません。

5.3 アウトプットによりレッスンを再利用可能にします。

特徴的なパターンとして、レッスンは知識だけで終わることはありません。プロンプト、スキル、エージェントテンプレート、またはMCP関連の出力といった成果物を生成します。つまり、学習内容を日々のコーディングエージェントのワークフローにフィードバックできるということです。

現在のトップレベルの出力インデックスをすべてと見なすべきではありません。レッスンレベルの出力やインストールスクリプトこそが、実用的な発見メカニズムです。

5.4 エージェントエンジニアリングは主要な柱です。

このリポジトリのエージェントに焦点を当てたフェーズでは、エージェントループ、ReWOO、Reflexion、Tree of Thoughts、関数呼び出し、メモリ、LangGraph、AutoGen、CrewAI、ベンチマーク、可観測性、プロンプトインジェクション防御、検証ゲート、ハンドオフ、ワークベンチの足場構築を網羅しています。

多くのエージェント向けチュートリアルでは、状態管理、評価、セキュリティ、リカバリ、ハンドオフ、ツール障害といった退屈な部分が省略されがちですが、これらを網羅している点は非常に価値があります。それらの要素をつなぎ合わせるカリキュラムは、単なるhello-worldレベルのエージェント作成よりもはるかに有用です。

5.5 品質は依然として変化し続ける目標です。

Issueトラッカーには、急速に進化するカリキュラム特有の成長痛が見られます。クイズの回答位置のバイアス、レンダリングのバグ、データセットのパスの不一致、Python/PyTorchの互換性、テーブルのフォーマット、図のレンダリング、翻訳、言語対応などが含まれます。

だからといって、このリポジトリが弱いわけではありません。読者は学習を進めながら内容を検証し、完成された教科書ではなく、活発なオープンソースのカリキュラムとして扱うべきです。

6. 実運用での誤りと正解パターン

誤り正しい対応理由
認定コースとして扱ってください。実践的なオープンソースの学習パスおよびリファレンスマニュアルとして扱ってください。メンテナーは、認定資格としての位置付けに対して明確に否定的な見解を示しています。
基礎を飛ばしておきながら、後のレッスンが難しいと非難するのはやめましょう。`/find-your-level` を使用し、依存関係に従ってギャップを埋めてください。カリキュラムは意図的に積み上げ式になっています。
すべての言語トラックが同等の深さを持っていると想定してください。パスを決定する前に、Python、TypeScript、Rust、または Julia の現在のレッスンコードを確認してください。オープンな Issue では、Python に重点を置いたカバレッジについて議論されています。
ドキュメントのみを読んでください。コードを実行し、クイズに回答し、生成された出力を使用してください。このリポジトリは、ビルド、使用、出荷のプラクティスを中心に設計されています。

7. よくあるミスと現在の課題

これらのリポジトリは若く、動きが速いため、Issue Tracker は重要です。この記事では Issues をリスクシグナルとして扱い、プロジェクトが使えない証拠としては扱いません。

領域詳細重要な理由
クイズのバイアスIssue #240 は、main ブランチに回答位置のバイアスが依然として存在することを報告しています。クイズは正式な評価としてではなく、練習として使用してください。
ダイアグラムのレンダリングIssue #233は、Phase 16の通信ダイアグラムがレンダリングされない問題を報告しています。ウェブサイトやドキュメントのレンダリングが、コンテンツの更新より遅れる場合があります。
テーブルIssue #193は、テーブルの表示が崩れる問題を報告しています。ウェブサイトのフォーマットが正しく表示されない場合は、生のMarkdownを確認してください。
Python 3.14Issue #192は、PyTorch CUDA wheelの利用可能性に関する問題を指摘しています。MLのレッスンには、動作が確認されているPythonバージョンを使用してください。
データセットのパスIssue #179にて、Rotten Tomatoesデータセットのパス不一致を追跡しています。データソースのドリフトが時折発生することをご留意ください。
言語カバレッジIssue #168にて、カリキュラム全体へのRust実装の追加を追跡しています。リポジトリは広範ですが、すべての言語トラックが完成しているわけではありません。

8. 性能、スケーリング、コストのメモ

初期のレッスンの多くは低コストで実行可能です。PyTorch、Transformers、マルチモーダルモデル、ローカル推論、ファインチューニング、またはキャップストーンシステムを含む後半のレッスンでは、より多くの計算リソースとAPIアクセスが必要になる場合があります。

実用的なセットアップとしては、レッスンを小さな単位で実行し、Pythonのバージョンを固定し、ドキュメントや依存関係の要件を確認するまでGPUやAPIを多用するレッスンの開始を控えることを推奨します。

チームの場合、このリポジトリのスクリプトとスキルはカリキュラム管理に役立ちます。フェーズの割り当て、監査の実行、選択したスキルのインストール、進捗の共有が可能であり、全員に数百ものファイルを閲覧させる必要はありません。

9. 誰に向いているか

使うべき場合避けるべき場合
あなたはコーディングが可能で、APIレイヤーより下のAIシステムを理解したいと考えています。あなたはプログラミングの完全な初心者です。
数学からLLM、エージェント、MCP、インフラ、そして安全性に至るまでの長い道のりを歩みたいと考えています。週末で終わる短いチュートリアルを求めています。
再利用可能な成果物を実装し、公開することで学習します。動画やハイレベルなエッセイのみを求めています。
あなたのチームには、オープンソースのAIスキルアップの基盤が必要です。認定資格や正式な評価が必要です。

10. コミュニティのシグナル

Web記事では、このリポジトリを大規模で無料のAIエンジニアリング参考マニュアルとして位置づけており、学位取得のような学習パスと比較されることがよくあります。一部の記事では古いレッスン数が記載されているため、数は変動するメタデータとして扱う必要があります。

Redditでの議論は、AI支援による執筆、初心者の圧倒感、APIコスト、高度なエージェントのレッスンが信頼性を十分に深く扱っているかどうかといった、期待と懐疑の両方が含まれているため有益です。

GitHubのissueトラッカーには、翻訳のPR、Rustトラックのリクエスト、クイズのバグ、レンダリングの修正、レッスンの構成、Webサイトの改善など、生きているカリキュラムが示されています。

11. 結論: 使う価値はあるか

私たちの見解

AI Engineering From Scratchは、基礎からAIシステムエンジニアリングまでを本格的かつ実践的に学びたい場合に最適です。洗練された修了証付きコースや、すべての言語トラックで均一な成熟度、あるいは手っ取り早いアプリ構築のレシピを求めている場合は、このコースは適していません。

12. 大きな流れ

このリポジトリは、AI教育における広範な是正の一環です。長年にわたるAPIファーストのデモを経て、エンジニアにはデータ、数学、モデルの挙動、評価、エージェント、プロトコル、そして本番環境での障害モードを理解することがますます求められています。

このコースが教える最も重要な習慣は、特定のアルゴリズムではありません。それは、大規模なフレームワークを信頼する前に、小さなメカニズムを構築するというパターンです。

13. よくある質問

Q: AI Engineering From Scratchはフレームワークですか?

いいえ。これはカリキュラムであり、レッスン、コード、クイズ、出力結果、スクリプト、および公開ウェブサイトを備えたリファレンスリポジトリです。

Q: どこから始めればよいですか?

必要なスキルを備えたエージェントがある場合は`/find-your-level`を使用してください。そうでない場合は、数学、ML、ディープラーニング、LLMs、エージェント、または本番環境など、前提知識が不足している分野から始めてください。

Q: GPUは必要ですか?

すべてのレッスンで必要なわけではありません。初期のレッスンは軽量ですが、ディープラーニング、ローカルモデル、ファインチューニング、およびマルチモーダルに関するレッスンでは、GPUやクラウドコンピューティングを活用すると効果的です。

Q: 修了証は発行されますか?

いいえ。このリポジトリは実践的なオープンソース学習として位置付けられており、認定資格プログラムではありません。

Q: レッスンはPythonのみですか?

Pythonが実践的な主要パスですが、READMEではTypeScript、Rust、Juliaについても言及されています。カバー範囲を確認するには、各レッスンのコードフォルダを確認してください。

Q: 組み込みスキルには何がありますか?

トップレベルのスキルには、配置用の`/find-your-level`とフェーズクイズ用の`/check-understanding <phase>`が含まれます。レッスンの成果物には、より多くのプロンプトやスキルが含まれています。

14. 用語集

領域詳細重要な理由
ゼロから構築フレームワークを使用する前にコアメカニズムを実装すること。カリキュラムの核心となる指導スタイル。
レッスン成果物プロンプト、スキル、エージェント、またはMCP関連の出力。レッスン後に再利用可能なもの。
MCPModel Context Protocol。後のツールおよびエージェントフェーズで使用されます。
RAG検索拡張生成(RAG)。主要なLLMエンジニアリングパターン。
エージェントループモデル、ツール呼び出し、観測、および次のステップの制御サイクル。コアとなるエージェントエンジニアリングの概念。
カタログフェーズ、レッスン、コード、および出力を生成したJSONビュー。リポジトリファイルからビルド。
キャップストーン多くのレッスンを組み合わせた、より大規模なエンドツーエンドのプロジェクト。理解度を証明する最終段階の成果物。

15. すべてのソースとリンク

内部リンク

16. ソース帰属表

領域詳細重要な理由
READMEおよびロードマップカリキュラムの構成、セットアップ、哲学、フェーズ構造。一次情報源。
スクリプトおよびワークフローカタログ、レッスンチェック、スキルインストール、CIの動作。アーキテクチャのソース。
IssuesおよびPRクイズ、レンダリング、データセット、Python、翻訳、および言語カバレッジに関する注意点。鮮度シグナル。
ウェブサイトパブリックリーダーの体験とカウントの乖離。公式ウェブソース。
Redditおよび記事コミュニティの熱狂、懐疑論、およびサードパーティによるフレーミング。二次ソース。

Related Guides

Sponsored AI assistant. Recommendations may be paid.