LLMとLangChainを使い、PDFや文書、動画、WebページをNeo4jに保存するナレッジグラフへ変換するWebアプリ。
docker/genai-stack
LangChain、Neo4j、Ollamaを使ったGenAIアプリ開発向けのDockerベースのスタータースタック。サポートボット、PDFのQ&A、APIのデモを収録。
- スター
- 5,423
- フォーク
- 1,236
- 未解決の Issue
- 99
- 最終コミット
- 12 日前
これは何?
GenAI Stackは、Docker Composeで生成AIアプリケーションを構築するためのスターターキットです。オーケストレーションにはLangChain、ナレッジグラフとベクトル埋め込みの両方を保存するデータベースにはNeo4j、ローカルLLMの実行にはOllamaを組み合わせています。各要素を自分で組み立てることなく、動作するマルチサービス構成から開発を始められます。
リポジトリには5つのデモアプリケーションが含まれています。RAG(検索拡張生成)を使う場合と使わない場合の回答を比較するサポートエージェントボット、Stack Overflowのデータをデータベースにインポートするローダー、ローカルPDFを対象にしたQ&Aアプリ、ストリーミングと非ストリーミングのエンドポイントを備えた単独のHTTP API、そしてそのAPIを呼び出すSvelte製フロントエンドです。設定は、LLMと埋め込みモデルを選択する`.env`ファイルで管理します。
LLMはローカルのOllamaインスタンスのほか、OpenAI、AWS Bedrock(Claude v2)、Googleのモデルでも実行できます。Linuxでは、Ollamaコンテナ向けにCPU用とGPU用のプロファイルが用意されています。
主な機能
- 01LangChain、Neo4j、Ollamaの各サービスをまとめて起動するDocker Compose構成
- 02Neo4jにナレッジグラフと検索用のベクトル埋め込みを保存
- 03環境変数でローカルのOllamaモデルと、OpenAI、AWS Claude、Googleの埋め込みモデルを切り替え
- 04RAGを使った回答と、LLMのみの回答を比較するサポートボット
- 05SSEストリーミングエンドポイントを備えた単独のHTTP API
- 06ViteとTailwindで構築されたSvelte製フロントエンド
ユースケース
- 独自のドキュメントやデータを対象に、検索拡張型チャットボットを試作する
- LLMアプリでナレッジグラフとベクトル検索を組み合わせる方法を学ぶ
- 埋め込みとローカルモデルを使って、ローカルPDFとチャットする
- LLMを活用したQ&A APIを別のフロントエンドに提供する
クイックスタート
- 1
テンプレート env.example から .env ファイルを作成します
- 2
macOS または Windows では、別のターミナルで Ollama をインストールして起動します(ollama serve)
ollama serve - 3
フルスタックを起動します
docker compose up - 4
http://localhost:8501 で Support Bot を開きます
使う前に知っておきたいこと
- Docker と Docker Compose が必要です。また、Docker Desktop 4.24.x にはアップグレードが必要な既知のパフォーマンス問題があります。
- macOS と Windows でローカルの Ollama モデルを使用するには、Ollama を別途インストールする必要があります。GPT-4 または Claude を使う場合は、有料の API キーが必要です。
- 環境によっては、Linux GPU プロファイルに GPU が必要です。
収録されている特集
トピック
よくある質問
- genai-stack とは?
- LangChain、Neo4j、Ollamaを使ったGenAIアプリ開発向けのDockerベースのスタータースタック。サポートボット、PDFのQ&A、APIのデモを収録。 GenAI Stackは、Docker Composeで生成AIアプリケーションを構築するためのスターターキットです。オーケストレーションにはLangChain、ナレッジグラフとベクトル埋め込みの両方を保存するデータベースにはNeo4j、ローカルLLMの実行にはOllamaを組み合わせています。各要素を自分で組み立てることなく、動作するマルチサービス構成から開発を始められます。
- genai-stack は無料で使えますか?ライセンスは?
- genai-stack は CC0-1.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- genai-stack は今もメンテナンスされていますか?
- 活発にメンテナンス中。genai-stack の最終コミットは 2026年10月26日 です。
- genai-stack は何に使えますか?
- 独自のドキュメントやデータを対象に、検索拡張型チャットボットを試作する LLMアプリでナレッジグラフとベクトル検索を組み合わせる方法を学ぶ 埋め込みとローカルモデルを使って、ローカルPDFとチャットする LLMを活用したQ&A APIを別のフロントエンドに提供する
- genai-stack のインストール方法は?
- テンプレート env.example から .env ファイルを作成します macOS または Windows では、別のターミナルで Ollama をインストールして起動します(ollama serve): ollama serve フルスタックを起動します: docker compose up http://localhost:8501 で Support Bot を開きます
- genai-stack はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/docker/genai-stack
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
文書をエンティティと関係性に分解してインデックス化し、LLMによる検索拡張回答を実現する軽量な知識グラフRAGフレームワーク兼サーバー。
Neo4jのグラフデータベースとLLM、ベクトル検索を組み合わせたGraphRAGアプリケーションを構築するための、公式Pythonパッケージです。
Neo4jを基盤に、会話を保存してナレッジグラフを構築し、推論の記録も行う、AIエージェント向けのグラフネイティブなメモリシステムです。
FalkorDB上で、知識グラフから関連するコンテキストを取得し、出典を追跡できるLLM回答を生成するGraphRAGアプリを構築するPython SDK。
Rust向けLangChain。組み合わせ可能なchain、agent、tool、vector storeを使ってLLMアプリケーションを構築するライブラリです。