ソフトウェアのライセンス料をゼロにしながら、本番運用を見据えたAIシステムを組む構成が、2026年に一段と具体化しています。
2026年7月4日、開発者のSuryansh Tiwari氏がXで「1ドルも使わずに本番AIシステムを構築できる」という9層のフルスタックを公開しました。Ollama上のGemma 4・Llama 3.3・Mistral Small 4から、LangGraphやCrewAI、LlamaIndex、ChromaDB、Qdrant、MCPまで、実在ツール名が並んでいます。投稿の締めは「ツールは無料。価値があるのはアーキテクチャの知識だ」という一文でした(参考)。
この記事では、提案された各層が何を担うか、どの公式情報に裏付けられるか、そして「無料」の範囲をどう理解すべきかを整理します。
この記事でわかること
- 2026年版フルスタックの9層と各層の役割
- ローカルLLMとして挙がる3モデルの特徴と選び方
- LangGraphとCrewAIを使い分ける判断基準
- RAG層・MCP・観測性まで含めた最小構成の組み方
提案された9層の全体像
Tiwari氏の投稿では、次の9層が列挙されています。
- LLM: Ollama + Gemma 4 / Llama 3.3 / Mistral Small 4(ローカル・無料)
- オーケストレーション: LangGraph / CrewAI(オープンソース)
- RAG: LlamaIndex + ChromaDB / Qdrant(ローカル)
- ツール層: MCP(Model Context Protocol)
- コードエージェント: Claude Code CLI / Aider
- フロントエンド: Next.js + Vercel無料枠 / Streamlit
- データ: SQLite / DuckDB / Supabase無料枠
- 観測性: Langfuse / Phoenix(セルフホスト)
- デプロイ: Docker / Cloudflare Workers / HuggingFace Spaces
合計コストは0ドルとされています。ただしソフトウェアが無料でも、GPUやサーバー、電力は別途かかります。後半でその線引きを触れます。
課題は「クラウドAPI依存」からの脱却
本番AIをクラウドAPIだけで組むと、トークン課金・レート制限・データの外部送信が常に付きまといます。社内文書や顧客データを扱うほど、推論を自前環境に置きたい需要が強まります。
この提案の核心は、推論からRAG、エージェント制御、外部ツール接続までをオープンソースで揃え、OllamaのOpenAI互換APIをハブにすることです。2026年時点では、各層に「デモ用」ではなく本番投入の実績を持つ選択肢が存在します(参考)。
第1層: Ollamaでローカル推論を標準化する
Ollamaは、量子化モデルをpullしてローカルAPIサーバーを起動するツールです。ollama run 一つで推論を始められ、OpenAI互換のチャットAPIを http://localhost:11434 で提供します。LangGraphやLlamaIndexからも同じエンドポイントを指せます。
投稿で挙がる3モデルは、2026年時点でいずれも実在し、用途が分かれています。
Gemma 4はGoogleが2026年4月2日に公開したオープンモデル群です。E2B・E4B・26B MoE・31B Denseの4サイズがあり、Apache 2.0ライセンスで配布されています。推論・エージェント・コーディング・マルチモーダルに対応し、Ollamaでも初日から利用可能と公式ブログが明記しています(参考)。Ollama上では gemma4:e4b が約9.6GB、gemma4:31b が約20GBと、ラップトップからワークステーションまで幅広いVRAMに合わせて選べます。
Llama 3.3 70BはMetaの指示チューニング済み70Bモデルで、Ollamaのデフォルト量子化(Q4_K_M)なら約43GBです。128Kコンテキストに対応し、Llama 3.1 405Bに匹敵する性能とOllama公式が説明しています(参考)。VRAMが24GB程度のマシンではCPUオフロードになり速度は落ちますが、48GB以上の環境では実用的な応答速度が得られます。
Mistral Small 4はMistral AIが2026年3月16日に公開した119BパラメータのMoEモデルです。トークンあたり約6Bを活性化し、256Kコンテキストとテキスト・画像入力に対応します。reasoning_effort パラメータで高速応答と深い推論を切り替えられ、Apache 2.0で公開されています(参考)。ただし公式の最小構成は4×H100クラスであり、Ollamaの軽量運用向けというより、GPUサーバーでの本格運用向けです。
選び方の目安は次のとおりです。手元のノートPCならGemma 4のE2B/E4B。64GBメモリ級のワークステーションならLlama 3.3 70BかGemma 4 31B。マルチモーダルと推論切り替えを1モデルに集約したい大規模GPU環境ならMistral Small 4、という棲み分けになります。
第2層: LangGraphとCrewAIでエージェントを制御する
エージェントは「推論を1回呼ぶ」だけでは本番に耐えません。状態の保持、リトライ、人間の承認、ツール呼び出しのループが必要です。
LangGraphはLangChain社が提供する低レベルなオーケストレーションランタイムです。エージェントを状態グラフとして定義し、ノードを処理・エッジを遷移として明示します。チェックポイントによる永続化、human-in-the-loop、長時間実行への耐性が公式に謳われており、KlarnaやUberなどの採用事例も掲載されています。監査可能性と分岐制御が求められるワークフロー向けです。
CrewAIはロールベースのマルチエージェントフレームワークです。Flowが全体の状態管理とイベント駆動を担い、Crewが「調査担当」「執筆担当」のような役割分担チームとして動きます。YAMLベースのタスク設定や、ChromaDBを使った短期メモリが組み込まれています。コンセプトから動くプロトタイプを早く作りたい場合に向きます。
使い分けは明快です。分岐・再実行・コンプライアンス対応が必要ならLangGraph。役割分担型の協調タスクを素早く試すならCrewAI。実運用ではFlow(CrewAI)やグラフ(LangGraph)の外側に、APIサーバーやジョブキューを置く構成が一般的です。
第3層: LlamaIndexとベクトルDBでRAGを組む
RAG(Retrieval-Augmented Generation)は、推論時に社内文書などの関連情報を検索してLLMに渡す手法です。エージェントの「長期記憶」層にもなります。
LlamaIndexは、この文脈拡張を担うPython/TypeScriptフレームワークです。ドキュメントの読み込み、インデックス化、クエリエンジン、エージェント用ツールまでを一貫して提供します。5行のスターターコードでVectorStoreIndexを作れるほど入口は浅く、コネクタやリランカーは下位APIで差し替え可能です。
ベクトルストアはChromaDBとQdrantの2択が提案されています。ChromaDBはPythonネイティブで数行のコードから埋め込みます。プロトタイプや小規模コレクション向けです。CrewAIの短期メモリにも使われています。QdrantはRust製でHNSWインデックスと水平スケールに対応し、数百万ベクトル規模の本番検索向けです(参考)。
実務では、開発中はChromaDB、データ量が増えたらQdrantへ移す、という段階的な移行が現実的です。リレーショナルデータと認証まで含めるなら、投稿にあるSupabase無料枠(pgvector内蔵)も選択肢になります。
第4層: MCPでツール接続を標準化する
MCP(Model Context Protocol)は、LLMアプリケーションと外部データ・ツールを接続するためのオープン標準です。Anthropicがオープンソースとして公開し、ホスト(AIアプリ)・クライアント・サーバーがJSON-RPC 2.0で通信します(参考)。
サーバーはリソース(データ)、プロンプト(テンプレート)、ツール(実行可能な関数)を提供します。GoogleカレンダーやNotion、社内DBなどを個別にAPIラップする代わりに、MCPサーバーとして一度実装すれば、Claude DesktopやCursorなど複数のホストから再利用できます。
投稿がMCPを「エージェントをあらゆるものに接続するツール層」と位置づけているのは、この標準化の恩恵を指しています。LangGraphやCrewAIのエージェントからMCPクライアントを呼び出せば、RAGで取り込んだ文書検索と、Slack投稿やチケット作成といったアクションを同じパイプラインに載せられます。
周辺層: フロントエンド・データ・観測・デプロイ
残り5層は、エージェントを「動くプロダクト」にするための周辺です。
フロントエンドはNext.jsをVercel無料枠に載せるか、Streamlitで社内ツールを即席に作るかの二択です。データ層はSQLiteやDuckDBで単体完結し、ユーザー管理やリアルタイム同期が要るならSupabase無料枠が候補になります。
観測性ではLangfuseがセルフホスト可能なLLMトレース・コスト追跡・プロンプト管理を提供します。LangGraphやCrewAIの実行ログをタイムライン表示し、どのステップで回答が崩れたかを特定できます。Phoenixは別系統のオープンソース観測ツールとして、セルフホスト運用の選択肢に入ります。
デプロイはDockerが基本です。Cloudflare WorkersやHuggingFace Spacesは、軽量な推論デモやプロトタイプ公開向けです。本番トラフィックを載せるなら、GPUサーバー上のDocker ComposeかKubernetesが現実的です。
コードエージェントとして挙がるClaude Code CLIやAiderは、スタック構築そのものを加速する補助輪です。Ollamaは ollama launch claude --model gemma4 のように、ローカルモデルをClaude Codeから直接使う連携も公式に案内しています(参考)。
「無料」の意味と本番化で足すもの
投稿の「Total cost → $0」は、ソフトウェアライセンスと多くのSaaS無料枠を指しています。ハードウェアは別です。Gemma 4 E4Bなら多くのラップトップGPUで動きますが、Llama 3.3 70Bは40GB超のメモリ、Mistral Small 4はデータセンター級GPUが前提です。電力やストレージ、運用者の時間もコストに含めて計画してください。
本番化では、次の3点を足すのが定石です。推論のタイムアウトとリトライ。スキーマ検証によるガードレール。Langfuseなどによるトレースとコスト計測。The New Stackの本番向けガイドでも、LangGraphループ・RAG・ガードレール・テレメトリをセットで実装する構成が推奨されています(参考)。
最初の一歩: 週末で試せる最小構成
経験者なら、次の順で週末に動く原型を作れます。
- Ollamaを入れ、
ollama pull gemma4:e4bで推論を確認する - LlamaIndexで手元のPDFをVectorStoreIndex化し、質問応答を試す
- LangGraphまたはCrewAIでツール呼び出しループを1本書く
- LangfuseをDockerで立ち上げ、トレースを確認する
- StreamlitかFastAPIで薄いUIを被せる
Tiwari氏が強調した「アーキテクチャの知識」は、まさにこの層の接続順序と責務分担を理解することです。ツール名をコピーするだけでは足りず、推論・記憶・制御・ツール・観測の各層が何を担保するかを押さえたとき初めて、無料スタックは本番の土台になります。




