今日の優良食堂
実際に入れて動かして書いた、今日の一膳
ギット飯が代わりに導入・実行・コードまで確かめました
今日の優良食堂 · ギット飯が代わりに導入・分析

eosphoros-ai/DB-GPT

データベースに接続して自然言語でSQLやコードを生成し、分析を自動実行するオープンソースのAIデータアシスタント

CSV や Excel をアップロードするだけで、DB-GPT が自動で分析レポートを作ってくれる体験は、まず一度触ってみる価値があります。自然言語でデータベースに質問すれば SQL が自動生成され、そのままクエリまで実行されるので、財務データや業務データから意思決定用のレポートを作る作業が驚くほど身近になります。エージェントによるタスク計画と多段階実行、独自のワークフロー言語 AWEL、オープンソース LLM 向けの Text2SQL ファインチューニング対応により、クラウド API に頼らず `dbgpt start webserver` 一つで自分の環境に直接組み込んで試せます。

01 / 概要
何をするものか一文で言うと
ひとことでデータベースに接続して自然言語でSQLやコードを生成し、分析を自動実行するオープンソースのAIデータアシスタント

DB-GPTは、データベースとLLMを組み合わせたエージェント型AIデータアシスタントです。自然言語からのSQL生成・実行、RAGによる知識検索、複数エージェントによるワークフロー実行をWeb UIとAPIで提供します。設定ファイル(toml)を切り替えるだけでLLMプロバイダーやデータソースを変更できる構成です。

02 / 構造
どう動くのか中核のしくみ
読み方動きの流れを図と一緒にほどきました。

リポジトリはdbgpt-core・dbgpt-app・dbgpt-serveなど複数パッケージのモノレポで、依存管理にuvとpyproject.tomlを使っています。configs以下にはdbgpt-proxy-openai.tomlやdbgpt-local-qwen.tomlなど十数種類の設定ファイルがあり、LLMプロバイダーとデータソースをここで切り替えます。CLIコマンドdbgpt start webserverでFastAPIベースのwebserverが起動し、ポート5670でAPIを公開します。内部ではエージェントがAWELというワークフロー記法でプラン作成・SQL生成・RAG検索を連鎖させ、結果をストリーミングで返します。assets/schemaにはMySQL用のスキーマとバージョンごとのアップグレードSQLが用意されており、docker-compose.ymlはMySQLコンテナとwebserverコンテナを連携させる例を示します。

03 / 体験
入れるとこんな体験になりますギット飯が実際にたどった順序
所要ギット飯が実際に導入・実行しながらたどった順序です。
  1. STEP 01

    configsディレクトリからLLMプロバイダー用のtomlを選び、APIキーを環境変数に設定してdocker compose up -dを実行します。

  2. STEP 02

    初回起動時はMySQLの初期化SQLがすべて終わるまでwebserverの接続が失敗することがあり、ログで待機状況を確認します。

  3. STEP 03

    ブラウザでhttp://localhost:5670を開き、Web UIでデータソース登録やチャット画面を操作します。

  4. STEP 04

    dbgpt knowledge loadコマンドでローカル文書を取り込み、RAG検索の挙動を確認します。

  5. STEP 05

    curlやPythonのdbgpt_clientから/api/v2/chat/completionsを呼び出し、ストリーミング応答を受け取ります。

  6. STEP 06

    Dev Container利用時はmodelsフォルダにtext2vec-large-chineseを手動配置する必要があり、忘れるとRAG機能が動きません。

04 / 成果物
何が手に入るのか導入後に手元に残るもの

実行すると、SQL自動生成・実行、Excelやfin_report内のPDFに対するRAG質問応答、複数エージェントによるプラン結果がWeb UIとAPIで得られます。加えてMySQLスキーマにチャット履歴やアプリ定義が保存され、設定ファイルを切り替えるだけで別のLLMやデータベースに接続し直せます。

05 / 注意
ここは先に知っておいてください先に知っておくとよいこと
正直なところ誰にでも合うとは言いにくいところです。
01

text2vec-large-chineseなどのモデルファイルは自動ダウンロードされず、手動配置が必要です。

02

ベースイメージはnvidia/cudaやRustツールチェーンのビルドを含み、GPU環境とネットワーク環境への依存が大きいです。

03

webserverはMySQLの初期化SQL完了を待つ必要があり、起動タイミングによって最初の起動が失敗することがあります。

04

READMEに書かれているのはDev Container手順のみで、エージェントやRAGの動作確認にはdocs内の別ドキュメントを読む必要があります。

06 / 結論
ギット飯の結論食べてみる価値のある一膳か
ギット飯の最終判断優良食堂

社内データとLLMを組み合わせたRAGチャットボットや、自然言語でのSQL操作を試したい開発チームに向いています。config tomlの種類の多さやdocker-compose例、15種類以上のデータソースコネクタ定義から、構成管理が実運用を想定していることが読み取れます。そのためインストールせずとも構成の妥当性は判断できますが、モデルダウンロードやGPU環境の準備には相応の手間が必要です。

今日の残りの一膳
SUBSCRIBER LIBRARY
これまでに検証した優良食堂を一堂に

4 つの関門を通った優良食堂がすべてバックナンバーに集まっています。いちばん新しい一膳はどなたでも無料で読め、それより前の優良食堂の検証の根拠・詳しい解説は ギット飯 プレミアムのご購読ですでに開いています。

優良食堂バックナンバー →
リポジトリ詳細🧪 ひと言で味見する