このプロジェクトについて

このプロジェクトは、GoogleのGemini 2.5モデルとLangGraphフレームワークを使用して、リサーチ拡張型の対話型AIを構築する方法を示すフルスタックのサンプルアプリケーションです。Reactフロントエンドと、LangGraphを搭載したバックエンドエージェントを組み合わせており、反復的なウェブリサーチを実行して、引用付きの回答をユーザーの質問に提供します。 **主な機能** - フルスタックアーキテクチャ:React(Vite)フロントエンドとLangGraph/FastAPIバックエンド - Geminiモデルを使用した動的な検索クエリ生成 - Google検索APIを介した統合ウェブリサーチ - 知識のギャップを特定し、検索を洗練させるためのリフレクティブな推論 - 収集したソースからの引用付き回答を生成 - 開発中のフロントエンドとバックエンドの両方でホットリロードをサポート **プロジェクト構造** - `frontend/`:Viteで構築されたReactアプリケーション。Tailwind CSSとShadcn UIでスタイリング - `backend/`:リサーチエージェントのロジックを含むLangGraph/FastAPIアプリケーション **バックエンドエージェントの仕組み** 1. ユーザー入力に基づいて初期検索クエリを生成 2. Google検索でGeminiを使用して各クエリのウェブリサーチを実行 3. 結果をリフレクションして知識のギャップを特定 4. 検索を反復的に洗練(設定可能な最大回数まで) 5. 引用付きの最終回答を合成 **はじめに** - Node.js、Python 3.11以上、Gemini APIキーが必要 - バックエンド:`cd backend && pip install .` を実行し、`.env`に`GEMINI_API_KEY`を設定 - フロントエンド:`cd frontend && npm install` を実行 - `make dev`で両方の開発サーバーを起動 - CLI例:`python backend/examples/cli_research.py "クエリ"` **デプロイメント** - 本番環境では、Redis(ストリーミング用)とPostgres(永続化用)を備えたDockerを使用 - `docker build -t gemini-fullstack-langgraph -f Dockerfile .`でビルド - `docker-compose up`で実行(LangSmith APIキーが必要) **技術スタック**:React、Vite、Tailwind CSS、Shadcn UI、LangGraph、Google Gemini **ライセンス**:Apache License 2.0