源码部署
直接通过源码部署 DB-GPT。这是最灵活的方式,适合开发、调试以及自定义集成场景。
硬件要求
| 模式 | CPU × 内存 | GPU | 说明 |
|---|---|---|---|
| API proxy | 4C × 8 GB | 无 | 代理模式不使用本地 GPU |
| Local model | 8C × 32 GB | ≥ 24 GB VRAM | 需要支持 CUDA 的 NVIDIA GPU |
第一步:克隆仓库
git clone https://github.com/eosphoros-ai/DB-GPT.git
cd DB-GPT
第二步:安装 uv
- macOS / Linux
- PyPI (pipx)
curl -LsSf https://astral.sh/uv/install.sh | sh
python -m pip install --upgrade pip
python -m pip install --upgrade pipx
python -m pipx ensurepath
pipx install uv --global
验证:
uv --version
第三步:安装依赖
- OpenAI (proxy)
- DeepSeek (proxy)
- Ollama (local)
- Local GPU (HuggingFace)
uv sync --all-packages \
--extra "base" \
--extra "proxy_openai" \
--extra "rag" \
--extra "storage_chromadb" \
--extra "dbgpts"
uv sync --all-packages \
--extra "base" \
--extra "proxy_openai" \
--extra "rag" \
--extra "storage_chromadb" \
--extra "dbgpts"
信息
DeepSeek 使用 OpenAI 兼容代理,因此所需 extras 与 OpenAI 相同。
uv sync --all-packages \
--extra "base" \
--extra "proxy_ollama" \
--extra "rag" \
--extra "storage_chromadb" \
--extra "dbgpts"
uv sync --all-packages \
--extra "base" \
--extra "cuda121" \
--extra "hf" \
--extra "rag" \
--extra "storage_chromadb" \
--extra "quant_bnb" \
--extra "dbgpts"
使用交互式安装辅助工具
DB-GPT 提供了一个交互式辅助工具,用于生成合适的 uv sync 命令:
uv run install_help.py install-cmd --interactive
或者列出所有可用的 extras:
uv run install_help.py list
第四步:配置模型
编辑与你所选 provider 对应的 TOML 配置文件。详情请参考 Model Providers。
- OpenAI
- DeepSeek
- Ollama
编辑 configs/dbgpt-proxy-openai.toml:
[models]
[[models.llms]]
name = "chatgpt_proxyllm"
provider = "proxy/openai"
api_key = "your-openai-api-key" # <-- 替换为你的 key
[[models.embeddings]]
name = "text-embedding-3-small"
provider = "proxy/openai"
api_key = "your-openai-api-key" # <-- 替换为你的 key
编辑 configs/dbgpt-proxy-deepseek.toml:
[models]
[[models.llms]]
name = "deepseek-reasoner"
provider = "proxy/deepseek"
api_key = "your-deepseek-api-key" # <-- 替换为你的 key
[[models.embeddings]]
name = "BAAI/bge-large-zh-v1.5"
provider = "hf"
信息
如果使用 HuggingFace Embedding,请在安装命令中额外加入 --extra "hf" 和 --extra "cpu"。
请先确保 Ollama 已运行,然后编辑 configs/dbgpt-proxy-ollama.toml:
[models]
[[models.llms]]
name = "qwen2.5:latest"
provider = "proxy/ollama"
api_base = "http://localhost:11434"
[[models.embeddings]]
name = "nomic-embed-text:latest"
provider = "proxy/ollama"
api_base = "http://localhost:11434"
环境变量
你可以在 TOML 中使用 "${env:OPENAI_API_KEY}" 这样的写法从环境变量读取 key,而不是将密钥硬编码到文件里。
第五步:启动服务
- OpenAI
- DeepSeek
- Ollama
uv run dbgpt start webserver --config configs/dbgpt-proxy-openai.toml
uv run dbgpt start webserver --config configs/dbgpt-proxy-deepseek.toml
uv run dbgpt start webserver --config configs/dbgpt-proxy-ollama.toml
第六步:打开 Web UI
在浏览器中访问 http://localhost:5670。
验证是否成功
如果 Web UI 能正常打开,且你可以发起聊天会话,就说明 DB-GPT 已成功运行。
首次运行常见问题
uv syncfails- 重新检查 Python 与 uv: Prerequisites
- 如果你在中国大陆,可通过
UV_INDEX_URL使用镜像源
- Provider auth fails
- 确认
configs/下所选 TOML 文件是否正确 - 参考对应 provider 指南:Model Providers
- 确认
- Server starts but UI is blank
- 确认终端中服务已正常启动且没有报错
- 检查是否有其他进程占用了
5670端口
数据库配置
- SQLite (default)
- MySQL
SQLite 是默认选项,相关表会自动创建,无需额外配置。
[service.web.database]
type = "sqlite"
path = "pilot/meta_data/dbgpt.db"
- 创建数据库:
mysql -h127.0.0.1 -uroot -p{your_password} < ./assets/schema/dbgpt.sql
- 更新 TOML 配置:
[service.web.database]
type = "mysql"
host = "127.0.0.1"
port = 3306
user = "root"
database = "dbgpt"
password = "your-password"
加载测试数据(可选)
# Linux / macOS
bash ./scripts/examples/load_examples.sh
# Windows
.\scripts\examples\load_examples.bat
单独运行前端(可选)
如果你需要进行前端开发或自定义 UI:
cd web && npm install
cp .env.template .env
# 编辑 .env,将 API_BASE_URL 设为 http://localhost:5670
npm run dev
Open http://localhost:3000.
下一步
| 主题 | 链接 |
|---|---|
| 配置更多模型提供方 | Model Providers |
| 使用 Docker 部署 | Docker |
| 以集群方式部署 | Cluster |
| 了解 Web UI | Web UI Guide |