FastGPTは、LLMを基盤にしたナレッジベース型AIアプリケーション構築プラットフォームです。データ処理やRAG検索、ビジュアルなワークフロー設計など、複雑な質問応答システムをノーコードに近い形で開発・運用できる機能一式を提供します。リポジトリにはNext.js製のアプリ本体に加え、権限やログ、ワークフローエージェントなど内部設計を記録した大量の設計文書が同梱されています。
バックエンドはNext.js(projects/app)とpackages/serviceで構成され、APIはpackages/global/openapi配下のzodスキーマで入出力を検証します。データ保存にはMongoDBとPostgreSQL(pgvector拡張)、Redisなどを使います。ファイル保存にはMinIOなどのS3互換ストレージを使います。AIとの対話は「Agent Loop」という共通プロトコルが担い、fastAgentやpiAgentといったproviderを介してモデル呼び出し・ツール実行・計画・一時停止と再開を統一的に扱います。ワークフロー機能はノード同士を接続して実行順序を組み、コード実行はfastgpt-code-sandboxなど分離したコンテナで行われます。ログは@fastgpt/service/common/loggerに統一され、カテゴリ分けと構造化フィールドで記録される設計です。
- STEP 01
deploy/dev/docker-compose.ymlをdocker compose upすると、MongoDB、PostgreSQL、Redisなど依存サービスのコンテナが次々に立ち上がる様子を確認できます。
- STEP 02
FastGPT本体はこのdocker-composeに含まれていないため、別途projects/appをpnpm installしてpnpm buildし、ビルド後のサーバーを自分で起動する作業が必要です。
- STEP 03
MongoDBコンテナはmongod --keyFile --replSet rs0で起動するため、初回起動時にレプリカセットの初期化コマンドを別途実行する必要に気づきます。
- STEP 04
docker-compose内のトークン類(fastgpt-plugin-dev-token-12345678など)がデフォルト値のまま書かれているため、本番環境では変更が必須だと気づきます。
- STEP 05
ワークフロー画面でAgentノードを組むと、内部ではagentLoopCoreがfastAgentやpiAgentといったproviderを呼び分けてモデル応答とツール実行を処理します。
- STEP 06
APIを直接呼び出すと、packages/global/openapi配下のzodスキーマでリクエストとレスポンスが検証され、スキーマ不一致はエラーとして返ってくる仕組みです。
セルフホスト型のRAGベースQ&Aシステムが手に入ります。MongoDB・PostgreSQL・Redisなどのデータ基盤の上で、ナレッジベースの索引作成やワークフロー編集画面、Agent Loopによるツール連携まで一通り動かせる環境が構築できます。
提供された資料の先頭にあるREADMEは、プロジェクト全体の説明ではなく権限システムの参考文書索引だったため、全体像はファイルツリーと設計文書から補って判断しています。
MongoDB、PostgreSQL、Redis、MinIO、code-sandbox、pluginなど依存サービスが多く、ローカルで一式を揃えて起動するには相応の準備が必要です。
今回はコードと設計文書の読み込みのみで、実際にdocker composeを起動して動作確認をしたわけではありません。
FastGPTは、LLMを使った社内ナレッジQ&Aやワークフロー型エージェントをセルフホストで作りたいチームに向いています。設計文書(.agents/design以下)やSKILL.mdがAPI規約・ログ規約・権限設計まで細かく記録されており、実運用を前提に整備された成熟度の高いプロジェクトだと判断できます。この判断は、豊富な設計文書とCIワークフロー、docker-compose構成といった具体的な根拠に基づくもので、直接実行せずとも一定の信頼性があります。ただし依存サービスが多いため、導入前にインフラ構成を把握しておくことをおすすめします。