DB-GPT 怎么用 dbgpt profile 命令管理并切换多个 LLM 服务商配置
2026/9/14 6:17:49 网站建设 项目流程

DB-GPT 怎么用 dbgpt profile 命令管理并切换多个 LLM 服务商配置

【免费下载链接】DB-GPTopen-source agentic AI data assistant for the next generation of AI + Data products.项目地址: https://gitcode.com/GitHub_Trending/db/DB-GPT

DB-GPT 通过 CLI 的dbgpt profile命令管理多份 LLM 服务商配置。每个 profile 对应~/.dbgpt/configs/目录下的一个 TOML 文件,里面记录服务商的 API key、模型名和 API 地址。当你同时有 OpenAI、Kimi(Moonshot)、Qwen 等多家服务商的 key 时,可以为每家各建一个 profile,用一条switch命令切换默认服务商,而不必每次手动改配置文件。

完成本文后,你可以:创建多个服务商 profile、查看某份配置的内容、切换默认 profile,并用指定 profile 启动 Web 服务。

前提条件

dbgpt profile属于dbgpt命令行的一部分。先安装 DB-GPT(要求 Python 3.10 或更高版本,包管理器推荐 uv,pip 也可以):

# 推荐:使用 uv uv pip install dbgpt-app # 或者用 pip pip install dbgpt-app

安装完成后,终端中会出现dbgpt命令。如果下载慢,可以加 PyPI 镜像源,例如uv pip install dbgpt-app --index-url https://pypi.tuna.tsinghua.edu.cn/simple,这是可选的,不影响 profile 功能本身。

默认安装已包含 OpenAI 兼容接口(可用于 Kimi、Qwen、MiniMax、Z.AI)和 DashScope/通义的支持,不需要额外加 extras。

理解 profile 的存储位置

首次运行后,DB-GPT 会在用户主目录下创建如下结构(见 cli-quickstart):

~/.dbgpt/ ├── config.toml # 记录当前 active profile 名称 ├── configs/ │ ├── openai.toml # Profile: OpenAI │ ├── kimi.toml # Profile: Kimi │ └── ... # 每个 profile 一个文件 └── workspace/ └── pilot/ # 运行时工作区(数据库、数据文件等)

也就是说:configs/下每个 TOML 文件就是一个 profile,config.toml里记录哪一个 profile 是当前默认。启动时配置的解析顺序是:

  1. --config参数指定的文件;
  2. --profile参数指定的 profile(查找~/.dbgpt/configs/<profile>.toml);
  3. 当前 active profile(读自~/.dbgpt/config.toml);
  4. 如果以上都没有,启动交互式配置向导。

理解这条顺序,就能解释"为什么dbgpt start有时用 A 服务商、有时用 B 服务商"——它取决于 active profile 和启动参数。

创建一个服务商 profile

dbgpt profile create <name>会启动配置向导(与dbgpt setup相同的交互流程),向导依次询问:选择服务商、输入 API key、确认模型名和 API base URL。

dbgpt profile create qwen

向导和--profile参数支持的内置服务商如下:

Profile 名称显示名称LLM 模型Embedding 模型API Key 环境变量
openaiOpenAIgpt-4otext-embedding-3-smallOPENAI_API_KEY
kimiKimikimi-k2text-embedding-v3MOONSHOT_API_KEY(embedding 另需DASHSCOPE_API_KEY
qwenQwenqwen-plustext-embedding-v3DASHSCOPE_API_KEY
minimaxMiniMaxabab6.5s-chatembo-01MINIMAX_API_KEY
glmZ.AIglm-4-plusembedding-3ZHIPUAI_API_KEY
customCustomgpt-4otext-embedding-3-smallOPENAI_API_KEY

两点说明:

  • kimiprofile 的 LLM key 和 embedding key 来自两个不同的环境变量,向导会分别询问(见 _wizard.py 的说明)。
  • customprofile 用于连接任意 OpenAI 兼容接口(文档示例:Azure OpenAI、本地 vLLM),向导会要求输入 API base URL(如http://localhost:8000/v1)、API key 和模型名。

如果想在非交互环境(CI/CD)里创建,可以用dbgpt setup--yes模式代替向导,例如:

export MOONSHOT_API_KEY=sk-xxx dbgpt setup --profile kimi --yes

create同样适用于重新配置:对已存在的 profile 再跑一次向导会覆盖原配置,文档中改 API key 的推荐做法就是"对同一 profile 重跑 setup 向导"。

查看和列出 profile

创建完成后,用show查看某个 profile 的完整 TOML 内容:

dbgpt profile show openai

如果 profile 不存在,命令会报错并提示先运行dbgpt profile create <name>

列出所有 profile,当前 active 的会带*标记(文档示例输出):

dbgpt profile list # openai ← 无星号 # * kimi ← 当前 active

如果还没有配置过任何 profile,list会提示No profiles configured. Run: dbgpt setup

另外,dbgpt setup --show会显示当前 active profile 名称和配置文件路径,适合快速确认"现在默认用的是哪份配置"。

切换 active profile 并启动

确认要切换到哪个 profile 后执行switch

dbgpt profile switch openai

switch只修改~/.dbgpt/config.toml中记录的默认 profile 名,不会改动各 profile 的 TOML 文件内容。切换成功后会输出(见 _profile_cmd.py):

Switched active profile to: openai

如果传入的 profile 不存在,命令会提示Error: Profile '...' not found. Run: dbgpt profile create <name>并以退出码 1 结束,不会切换。

之后启动服务时:

# 使用当前 active profile dbgpt start # 或者临时指定 profile,不改动 active 设置 dbgpt start web --profile kimi

--profile只影响本次启动(见上面"配置解析顺序"第 2 条),适合想临时试一个服务商而不改变默认的情况。不带参数直接dbgpt start等价于dbgpt start web

启动成功的判断:终端会打印启动横幅(文档示例),其中列出本次使用的 Profile 名和 Config 文件路径:

🚀 DB-GPT Quick Start +- - - - - - - - - - - - - - - - - - - - - - - - - - - - + : Profile: openai : : Config: /Users/you/.dbgpt/configs/openai.toml: : Workspace: /Users/you/.dbgpt/workspace : +- - - - - - - - - - - - - - - - - - - - - - - - - - - - +

/Users/you/...是文档中的示例路径,你的机器上会是实际的 home 目录。横幅里的 Profile 和 Config 两项可以直接用来核对:确认服务确实按你预期的 profile 启动。然后浏览器打开 http://localhost:5670 即可使用 Web 界面。

切换服务商的完整主路径总结:

dbgpt profile create kimi # 向导创建 Kimi profile dbgpt profile switch kimi # 设为默认 dbgpt start # 用新 profile 启动

删除 profile

dbgpt profile delete minimax dbgpt profile delete minimax --yes # 跳过确认

delete的副作用是直接从磁盘删除~/.dbgpt/configs/<name>.toml文件,且不会自动备份,执行前确认该配置不再需要。默认会先弹确认提示,加--yes跳过。

一个需要注意的行为:删除的如果是当前 active profile,config.toml里的默认记录会被清空,之后dbgpt start走不到有效 profile 时会重新进入配置向导。删除后建议再跑一次dbgpt profile list确认状态。

常见问题

  • 报 "No config file found":说明还没有配置过任何 profile,运行dbgpt setup进向导配置一份。
  • 端口 5670 被占用:先dbgpt stop webserver --port 5670停掉已有服务,或者修改对应配置文件的[service.web]port = 5671换端口。
  • 换 API key:对同一 profile 重跑dbgpt setup --profile openai向导覆盖配置,或直接编辑~/.dbgpt/configs/openai.toml

更多命令细节(dbgpt start的全部参数、--daemon后台运行、CI 部署示例、自定义端点配置)可参考 CLI Quick Start,profile 子命令的实现在 packages/dbgpt-core/src/dbgpt/cli/_profile_cmd.py。

【免费下载链接】DB-GPTopen-source agentic AI data assistant for the next generation of AI + Data products.项目地址: https://gitcode.com/GitHub_Trending/db/DB-GPT

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询