LobeHub 部署时怎么自定义服务商模型列表并标注模型扩展能力?
【免费下载链接】lobehub🤯 LobeHub is your Chief Agent Operator, organizing your agents into 7×24 operations by hiring, scheduling, and reporting on your entire AI team.项目地址: https://gitcode.com/GitHub_Trending/lo/lobehub
自部署 LobeHub 时,内置模型列表往往不符合运营需要:可能想只放行几个指定模型,想给模型起用户看得懂的展示名,或者想声明某个模型支持 Function Calling、视觉识别等能力。这些都通过每个服务商对应的*_MODEL_LIST环境变量在部署时配置,无需改代码。本文适用前提:你正在通过 Docker 等方式自部署 LobeHub,并已准备好对应服务商的 API Key;扩展能力(<...>尖括号语法)从 LobeHub0.147.8版本开始支持,低版本不生效。
模型列表的语法规则
所有服务商的模型列表变量共用同一套定义语法(规则见 model-list 文档):
id->deploymentName=displayName<maxToken:vision:reasoning:search:fc:file:imageOutput>,model2,model3+模型名:把该模型加入列表;-模型名:把该模型从列表中隐藏;-all:先隐藏所有内置模型,通常与+组合,实现"只启用显式指定的模型";=展示名:自定义界面中显示的模型名;->deploymentName:映射部署名,可以省略,省略时默认为最新版本的模型。当前支持->deploymentName的服务商有:Azure、Azure AI、Qwen、Spark、Volcengine(及其 coding plan)以及 Kimi Coding Plan;<...>:扩展配置,尖括号内第一个值必须是该模型的maxToken,第二个值起是扩展能力,能力之间用冒号:分隔,顺序不重要。
一个典型组合示例:
+qwen-7b-chat,+glm-6b,-gpt-3.5-turbo,gpt-4-turbo=gpt-4o含义是:增加qwen-7b-chat和glm-6b,删除gpt-3.5-turbo,并把gpt-4-turbo的展示名改为gpt-4o。如果想只保留个别模型:
OPENAI_MODEL_LIST=-all,+gpt-3.5-turbo,+gpt-4-turbo=gpt-4o仅启用gpt-3.5-turbo和gpt-4-turbo(展示为gpt-4o),其余模型全部隐藏。
标注模型扩展能力
尖括号里可以声明模型支持的能力,目前支持的取值及含义如下:
| 能力 | 描述 |
|---|---|
fc | 函数调用(Function Calling) |
vision | 视觉识别 |
imageOutput | 图像生成 |
reasoning | 支持推理 |
search | 支持联网搜索 |
video | 视频理解 |
file | 文件上传(文档标注该方式较 hack,不建议日常使用) |
文档给出的标注示例:
chatglm-6b=ChatGLM 6B<4096> spark-v3.5=讯飞星火 v3.5<8192:fc> gemini-2.5-flash=Gemini 2.5 Flash<16000:vision> o3-mini=OpenAI o3-mini<200000:reasoning:fc> qwen-max-latest=Qwen Max<32768:search:fc> gpt-4-all=ChatGPT Plus<128000:fc:vision:file> gemini-2.0-flash-exp-image-generation=Gemini 2.0 Flash (Image Generation) Experimental<32768:imageOutput:vision>两条硬性规则需要记住:
maxToken必须是< >内的第一个值,写<8192:fc:vision>而不是<fc:vision>,否则能力标注不生效;- 能力标注只是声明,LobeHub 无法开启服务商 API 本身不提供的能力,需确认模型在其 API 中实际支持该能力。
在各服务商的部署变量中配置
模型列表挂在每个服务商自己的环境变量下,完整变量说明见 模型服务商环境变量文档。以 OpenAI 为例,OPENAI_MODEL_LIST为可选变量,用于控制模型列表;ENABLED_OPENAI控制是否启用 OpenAI 服务商(默认1,设为0关闭);OPENAI_API_KEY为必填项,OPENAI_PROXY_URL可选、用于覆盖默认 API 地址(默认https://api.openai.com/v1)。
不同服务商的写法差异不大,按自身服务商替换前缀即可:
# OpenAI — 精选列表 OPENAI_MODEL_LIST=-all,+gpt-4o,+gpt-4o-mini # Google GOOGLE_MODEL_LIST="+gemini-2.5-pro=Gemini 2.5 Pro<1000000:vision:fc" # Perplexity PERPLEXITY_MODEL_LIST=-all,+sonar-pro,+sonar # Ollama(本地模型) OLLAMA_PROXY_URL=http://localhost:11434 OLLAMA_MODEL_LIST="+llama3:8b=Llama 3 8B<8192>,+mistral:latest=Mistral<8192:fc>,+codellama:34b=Code Llama 34B<16000"Azure OpenAI 是例外:Azure 要求用->deploymentName把模型 ID 映射到你的实际部署名(见 Azure OpenAI 部署文档,其中AZURE_MODEL_LIST为必填项):
AZURE_ENDPOINT=https://your-resource.openai.azure.com AZURE_API_KEY=your-api-key AZURE_API_VERSION=2024-02-01 # id->deploymentName=displayName<能力> AZURE_MODEL_LIST="gpt-35-turbo->my-gpt35-deploy=GPT-3.5 Turbo<16000:fc>,gpt-4->my-gpt4-deploy=GPT-4<128000:fc:vision"上面的 endpoint、API key 是文档示例值,替换为你 Azure 账户中 "Keys and Endpoints" 部分提供的真实值。
先起测试实例验证配置
文档建议上生产前先起一个独立的测试实例验证模型配置(该命令会启动一个名为lobehub-test的后台容器并映射 3210 端口,测试容器名称需与环境中已有容器不冲突):
docker run -d -p 3210:3210 \ -e OPENAI_API_KEY="sk-test..." \ -e OPENAI_MODEL_LIST="-all,+gpt-4o" \ --name lobehub-test lobehub/lobehub将sk-test...替换为你有权限的测试 API Key。验证点有两个:
- 打开 LobeHub 界面,确认模型选择器中出现且仅出现你期望的模型,展示名与
<...>能力标注按预期呈现; - 用新配置发一次真实对话请求,确认能拿到非空回复。
验证通过后,再在正式部署环境的同一组环境变量上落配置。
配置后常见问题
模型未出现在选择器中
- 检查语法错误:逗号缺失、尖括号不匹配是最常见的写法问题;
- 确认服务商本身已启用(如
ENABLED_OPENAI=1); - 若使用了
-all,确认已用+把该模型加回来。
模型返回空响应
- 走代理时尝试在 URL 末尾加
/v1再试:OPENAI_PROXY_URL=https://api.example.com/v1(是否要/v1与服务商的转发方式有关,文档对 OpenAI 代理有专门说明); - 确认模型 ID 与服务商 API 期望的完全一致;
- 确认 API Key 有权限访问该模型。
扩展能力不生效
- 检查
maxToken是否写在< >第一位; - 确认服务商 API 实际支持该能力——LobeHub 无法开启 API 本身不提供的能力;
- 确认运行的 LobeHub 版本足够新(扩展配置从
0.147.8引入),过旧版本需先升级再配置。
完整的规则、更多服务商示例与排查条目见 docs/self-hosting/advanced/model-list.mdx 与 docs/self-hosting/environment-variables/model-provider.mdx。
【免费下载链接】lobehub🤯 LobeHub is your Chief Agent Operator, organizing your agents into 7×24 operations by hiring, scheduling, and reporting on your entire AI team.项目地址: https://gitcode.com/GitHub_Trending/lo/lobehub
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考