快速结论:该报错发生在 RAGFlow 中已添加一个 vLLM 聊天模型后,尝试添加另一个 vLLM 模型(如 reranker)到不同 host:port 时。优先检查是否因 TenantModelInstance 表的数据库唯一约束导致,通常的解决方法是升级到 v0.26.0 之后的修复版本。
适用环境:RAGFlow v0.26.0(official release version)
最快修复方案:升级到包含 PR #15879 修复的版本(即 v0.26.0 之后的任意版本)。此 PR 通过数据库迁移移除了导致冲突的唯一索引。
注意事项:若暂时无法升级,可优先尝试为第二个实例使用一个不同的 dummy API key(非空值),以绕过数据库唯一键约束——此为推断性方案,尚未得到官方验证。
问题场景
用户在 RAGFlow 的模型管理界面中,先添加了一个 vLLM 聊天模型,其 base URL 为 http://vllm:8000。随后尝试添加第二个 vLLM reranker 模型,其 base URL 为 http://vllm:8002(不同端口),但添加失败并抛出报错。
报错原文
instance already exist: vllm
原因分析
RAGFlow 的 TenantModelInstance 数据库表中存在一个旧版唯一键约束,作用于 (api_key, provider_id) 组合字段。当两个 vLLM 实例使用了相同的 API key(例如都为空或同一默认值)且 provider_id 相同时,数据库会拒绝第二条记录的插入,即使它们的 base URL / 端口不同。这已被确认为已知 Bug。
环境排查
- 确认 RAGFlow 版本是否为 0.26.0(或更早版本)。
- 检查两个 vLLM 实例配置的 API key 是否相同或均为空。
- 检查数据库
TenantModelInstance表中是否有唯一索引uk_api_key_provider_id或其他类似约束。
解决步骤
- 优先方案:升级 RAGFlow – 升级到包含 PR #15879 的版本(如 v0.27.0 或更高)。升级后执行数据库迁移,自动删除造成冲突的唯一索引。
- 备选方案(升级前临时绕过) – 为 reranker 模型配置一个不同的 API key(例如填入任意非空字符串),从而避免唯一键冲突。运行该方案后仍建议尽快升级。
验证方法
升级或修改 API key 后,在 RAGFlow 模型管理页面中重新添加第二个 vLLM 实例,确认不再弹出 “instance already exist: vllm” 错误,且该模型能正常启用。
参考来源
AI 工具推荐
想把多个 AI 模型放在一个入口?
GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。
推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。
这个方案解决了吗?
可以继续搜索完整报错,或查看同一工具的其他排查指南。
![[Question]: Models disappear after upgrading RAGFlow from v0.25.6 to v0.26.0](https://www.chat-gpts.plus/wp-content/uploads/2026/07/15972-570c996c-768x403.jpg)
![[Bug]: OIDC login allows new user registration even when REGISTER_ENABLED=0](https://www.chat-gpts.plus/wp-content/uploads/2026/07/16103-4071df7a-768x403.jpg)
