Awesome Artificial Intelligence
Artificial Intelligenceを扱う資料や関連プロジェクトをまとめたAwesomeリストです。
学ぶ
書籍
- Artificial Intelligence: A Modern Approach: 探索、推論、計画、学習、ロボティクスを含む古典的AIの幅広いリファレンス。
- Reinforcement Learning: An Introduction: SuttonとBartoによる強化学習の概念とアルゴリズムの基礎的解説。
- Machine Learning Bookcamp: Alexey Grigorevによる、機械学習システムの構築・デプロイを扱うプロジェクトベースの入門書。
- Designing Machine Learning Systems: Chip Huyenによるスケーラブルで保守可能な機械学習システム。
- AI Engineering: Chip Huyenによる基盤モデルを使ったアプリケーション構築。
- Build a Large Language Model from Scratch: Sebastian RaschkaとともにPyTorchでTransformerを実装。
- Hands-On Large Language Models: Jay AlammarとMaarten Grootendorstによる視覚的・実践的ガイド。
- LLM Engineer’s Handbook: LLMOps、ファインチューニング、サービング、本番ワークフロー。
- The 100-Page Language Models Book: Andriy Burkovによる簡潔で技術的な入門書。
- Deep Learning: Ian Goodfellow、Yoshua Bengio、Aaron Courvilleによる数学的基礎。
- Deep Learning: Foundations and Concepts: Christopher BishopとHugh Bishopによる確率論に基づく解説。
- Understanding Deep Learning: Simon Princeによる理論、直感、実践ノートブック。
- Speech and Language Processing: Dan JurafskyとJames Martinによる継続更新中のNLPリファレンス。
コース
- AI Engineer: エージェント型コーディングと本番AIシステムの構築、テスト、出荷を扱う有料プログラム。
- Hugging Face LLM Course: Transformer、ファインチューニング、データセット、現代的NLPツール。
- Full Stack Deep Learning: AI製品を構築・出荷するライフサイクル全体。
- Fast.ai Practical Deep Learning: コード中心のディープラーニング入門。
- Karpathy’s Neural Networks: Zero to Hero: 第一原理からニューラルネットワークと言語モデルを構築。
- Stanford CS336: Language Modeling from Scratch: データ準備から評価・デプロイまで言語モデルを構築。
- MIT 6.S191: Introduction to Deep Learning: ディープラーニングの基礎と応用。
- Google Generative AI Learning Path: 生成AIの概念とGoogle Cloudツールを扱う入門パス。
- DeepLearning.AI Short Courses: 現在の生成AIエンジニアリング技術に焦点を当てた短期コース。
- Made With ML: 本番MLシステムの設計、開発、デプロイ、反復を扱うオープンコース。
基礎論文
- Attention Is All You Need: Transformerアーキテクチャを導入。
- Scaling Laws for Neural Language Models: モデル性能、データ、計算量の関係を調査。
- Training Compute-Optimal Large Language Models: 計算予算下でモデルサイズと学習データをどう拡大すべきかを示した。
- Language Models are Few-Shot Learners: 大規模なインコンテキスト学習を実証。
- Retrieval-Augmented Generation: パラメトリック言語モデルと知識集約型タスクの外部検索を組み合わせた。
- LoRA: パラメータ効率のよいモデルファインチューニングのための低ランク適応を導入。
- Training Language Models to Follow Instructions with Human Feedback: InstructGPTで用いられる指示チューニングとRLHFの手法を確立。
- ReAct: ツールを使う言語モデルエージェント向けに推論トレースと行動を組み合わせた。
- Constitutional AI: 文書化された原則で有用かつ無害なAIアシスタントを学習する方法。
- Direct Preference Optimization: 明示的な報酬モデリングなしに、選好整合を単純な分類目標として再定義。
AIシステムを構築する
ガイドとプレイブック
- Building Effective Agents: エージェントシステムの実践的パターンとトレードオフに関するAnthropicの解説。
- A Practical Guide to Building Agents: モデル、ツール、指示、オーケストレーション、ガードレールを扱うOpenAIのガイド。
- Awesome DeepSeek Agent: Claude Code、Codex、Cline、OpenCode、Piを含むコーディングエージェントにモデルを統合するDeepSeek公式セットアップガイド。
LLMアプリケーションエンジニアリング
- OpenAI Cookbook: 構造化出力、ツール利用、検索、評価などのLLMアプリケーションパターンのコード例。
- Anthropic Prompt Engineering: 成功基準の定義、プロンプトのテスト、モデル挙動の改善技法。
- Effective Context Engineering for AI Agents: 長時間実行エージェントが利用できるコンテキストの選択、構造化、管理方法。
- 12-Factor Agents: 決定論的ソフトウェアを中心に制御可能なLLMアプリケーションを構築する実践原則。
- OWASP Top 10 for LLM Applications: 生成AIアプリケーションの開発・デプロイにおけるリスクと緩和策。
プロトコルと相互運用性
- Model Context Protocol: AIアプリケーションを外部ツール、データソース、プロンプト、対話型アプリへ接続するオープン仕様。
- Agent2Agent Protocol: エージェント発見、タスク委譲、ストリーミング、非同期更新、クロスプラットフォーム通信のベンダー中立仕様。
エージェントフレームワーク
- Pydantic AI: Pydanticを中心にした型付きエージェント開発。
- LangGraph: 長時間実行・ステートフルなエージェント向け低レベルオーケストレーション。
- OpenAI Agents SDK: ツール、ハンドオフ、ガードレール、トレーシング、エージェントオーケストレーション向け小規模SDK。
- Google Agent Development Kit: エージェントの開発・評価のためのGoogleフレームワーク。
- Microsoft Agent Framework: AutoGenとSemantic Kernelの後継で、エージェントおよびグラフベースワークフローを扱うMicrosoftのフレームワーク。
永続的・非同期的なエージェント
- Effective Harnesses for Long-Running Agents: 複数のコンテキストウィンドウをまたいで進行し、失敗から回復するエージェントのパターン。
- Running Agents: OpenAI Agents SDKにおけるライフサイクル、セッション、例外、永続実行のパターン。
- Human-in-the-Loop: エージェント状態を失わずにツール呼び出しを一時停止、検査、承認、却下、再開。
- Gemini and Temporal Durable Agent: エージェントワークフローにおける永続実行、再試行、人間の承認の具体的実装。
検索とデータ
- LlamaIndex: データ取り込み、索引化、検索、エージェントワークフロー。
- Haystack: 検索・生成AIアプリケーション向けモジュラー型パイプライン。
- Docling: AIアプリケーション向け文書解析・変換。
評価と信頼性
- Demystifying Evals for AI Agents: タスクスイート、採点器、トランスクリプト、評価ハーネスを構築する実践的手法。
- OpenAI Evals: 言語モデル・システム評価のオープンソースフレームワークとレジストリ。
- Promptfoo: テストケース、アサーション、モデル比較、LLMアプリケーションのレッドチーム検査。
- Ragas: 検索・生成AIアプリケーションの評価と実験。
デプロイと可観測性
- Langfuse: LLMアプリケーション向けトレーシング、評価、プロンプト管理、メトリクス。
- vLLM: 言語モデルの推論・サービングエンジン。
- LiteLLM: 複数モデルプロバイダー向けモデルゲートウェイと統一インターフェイス。
エージェント型ソフトウェアエンジニアリング
コーディングエージェントは、開発者による計画、実装、レビュー、テスト、デバッグを支援します。独立した能力比較についてはSWE-benchとTerminal-Benchを参照してください。
コーディングエージェント
- Neo: サブエージェント、スキル、サンドボックス化ツール、複数モデルプロバイダーを備える、オープンソースのワークフロー優先ターミナルコーディングエージェント。
- Claude Code: フック、サブエージェント、スキル、リポジトリレベルの指示を備えるターミナルエージェント。
- Codex CLI: サンドボックスと承認制御を備えるオープンソースのターミナルエージェント。
- Gemini CLI: Geminiを中心に構築され、拡張可能なツールを備えたオープンソースのターミナルエージェント。
- Cursor CLI: Cursorのエディタとクラウドワークフローに接続するターミナルエージェント。
- GitHub Copilot coding agent: GitHub Issueから作業し、プルリクエストを作成する非同期エージェント。
- Aider: Git統合と幅広いモデル対応を備えるオープンソースのペアプログラマー。
- OpenCode: クライアント・サーバーアーキテクチャを採るオープンソースでプロバイダー非依存のターミナルエージェント。
- OpenHands: ソフトウェア開発エージェントをローカルまたはクラウドで実行するオープンソースプラットフォーム。
- Cline: エディタ拡張、CLI、SDKとして利用できるオープンソースのコーディングエージェント。
- Continue: ソース管理下の設定を用いるIDE・CIワークフロー向けオープンソースコーディングエージェント。
Build Your Own Coding Agent Like Piでは、エージェントループ、ツール、ファイルを中心に据えた最小限のGoハーネスの実装を解説します。
エージェントスキルとワークフロー
- Blueprint: ソフトウェア変更の設計、実装、テスト、レビュー、出荷を行うための焦点を絞ったオープンソースのエージェントスキル集。
ソフトウェアファクトリーとエージェントオーケストレーション
- Harness Engineering: コーディングエージェント、リポジトリ制約、自動チェック、人間による誘導を使うソフトウェア構築に関するOpenAIのフィールドレポート。
- Codex Orchestration with Symphony: プロジェクト作業を分離・観測可能なコーディングエージェント実行に変えるリファレンスアーキテクチャ。
- How We Built Our Multi-Agent Research System: オーケストレーター・ワーカー、並列検索、評価、運用信頼性に関する本番環境の教訓。
Factoryは、GitリポジトリをまたいでPi、Codex、Claude Codeワーカーをスケジュール・調整する開発者プレビューのコントロールプレーンです。
貢献
提案を歓迎しますが、このリストは意図的に選別されています。Issueまたはプルリクエストを開く前に貢献ガイドとキュレーションポリシーを読んでください。
提案するリソースは次を満たす必要があります。
- AIエンジニアリングを学ぶ・実践するソフトウェア開発者に役立つこと。
- 製品ホームページを超える技術的または実用的価値を提供すること。
- 基礎的かつ永続的な価値がある場合を除き、最新で保守されていること。
- 既存エントリーと意味のある違いがあること。
- 一次情報で裏付けられた事実に基づく説明であること。
そのリソースが解決する開発者の問題と、なぜ基準を満たすかを説明してください。既存エントリーと重複する場合は、実質的に優れている理由を説明します。リソースとの関係があれば開示してください。
コーディングエージェントとAIエンジニアリングの継続的な実践チュートリアルについては、AI Engineer YouTube channelを参照してください。