说明:我是 APIVAI 的运营者,下面示例里的地址是 APIVAI 的。配置方法对任何兼容 OpenAI 格式的网关都一样,换成你自己用的地址即可。
Open WebUI 是一个自托管的聊天界面,通常用 Docker 运行,支持用户账号、聊天记录、模型预设和文档对话。它本身不带云端模型,而是连接任何支持 OpenAI Chat Completions 协议的服务器。这篇按 2026 年 10 月的 Open WebUI 文档和界面字段,讲清楚怎么接第三方 API 同时用 Claude 和 GPT、/v1 要不要带、怎么省掉后台任务的开销,以及常见报错。
Open WebUI 通过 OpenAI 连接访问云端模型。它没有填写自定义 Anthropic Messages 地址的字段,内置的 Anthropic 支持只认 Anthropic 官方地址。所以只能用 OpenAI 格式,好在 Claude 和 GPT 都能走这个格式,一个连接全覆盖。
方式 | 在哪配置 | 地址 | 适合 |
|---|---|---|---|
管理员连接 | Settings > Admin > Connections |
| 推荐:管理员配一次,所有用户都能用 |
Docker 环境变量 |
|
| 新部署时一次写好 |
个人 Direct Connections | 用户自己的设置 |
| 每个用户用自己的 Key |
/v1 的规则:地址以 /v1 结尾,且只出现一次。不带 /v1 的 https://api.apivai.com 是给 Claude Code 这类基于 Anthropic SDK 的工具用的,在 Open WebUI 里用不上。
字段 | 值 |
|---|---|
Connection Type | External |
URL |
|
API Key | 你的 Key |
Model IDs(Advanced) | 留空表示全部模型,或填 |
Prefix ID(Advanced) | 可选,比如 |
Provider(Advanced) | Default |
/models,应显示 Server connection verified。apivai. 这样的标签,发请求前 Open WebUI 会自动去掉。Provider 保持 Default。模型列表会变,以接口返回的 ID 为准,别照抄旧教程:
curl https://api.apivai.com/v1/models -H "Authorization: Bearer 你的Key"用 Docker 部署的话,可以在创建容器时用环境变量传入同样的值:
docker run -d -p 3000:8080 \
-v open-webui:/app/backend/data \
-e WEBUI_SECRET_KEY=your-secret-key \
-e OPENAI_API_BASE_URL=https://api.apivai.com/v1 \
-e OPENAI_API_KEY=你的Key \
--name open-webui --restart always \
ghcr.io/open-webui/open-webui:main没跑 Ollama 的话,加上 -e ENABLE_OLLAMA_API=False,Open WebUI 就不会再尝试连接它。想用环境变量限制模型列表,可以用 OPENAI_API_CONFIGS:一个以连接序号为键的 JSON 对象,包含 model_ids、prefix_id 等字段。
有个坑:这些变量属于 ConfigVar。在默认的 ENABLE_PERSISTENT_CONFIG=True 下,通过管理面板存进数据库的值优先于环境变量。之后改了 OPENAI_API_BASE_URL 却没生效,就直接到 Settings > Admin > Connections 里改连接。
Open WebUI 会在后台发一些小请求,用来生成对话标题、标签、推荐追问和输入自动补全。默认用的是当前对话的模型,所以用贵模型的对话,连标题也按贵模型计费。在 Settings > Admin > Interface 里把 External Task Model 设为 claude-haiku-4-5 或 gpt-6-luna。
后台请求默认只有 1,000 个输出 token,思考 token 也算在里面。标题为空或被截断时,在同一部分打开 Task Model Parameters > Configure,把 max_tokens 设为 4096。
对话没问题。但文档检索(RAG)需要嵌入(embedding)模型来索引文件,APIVAI 不提供嵌入接口。
Open WebUI 默认用本地的 SentenceTransformers 模型生成嵌入(RAG_EMBEDDING_ENGINE 留空),所以上传的文档不用改任何设置就能继续用。只是不要把嵌入引擎切换成 OpenAI 并填网关地址。需要云端嵌入的话,通过 RAG_OPENAI_API_BASE_URL 和 RAG_OPENAI_API_KEY,或在 Settings > Admin > Documents 里单独配一个嵌入服务商。回答仍然由你选的 Claude 或 GPT 生成。图像生成和语音功能也需要各自的服务商,APIVAI 不提供图像模型。
claude-sonnet-5-5 或 claude-sonnet-4-6claude-haiku-4-5 或 gpt-6-lunagpt-6.1-sol,要求高的任务用 gpt-6-astraclaude-opus-5-5,真正需要时再用给团队用的话,可以用 Model IDs 列表只开放你愿意买单的模型,对日常用户隐藏 Opus 是控制共享账单最简单的办法。每条消息都会把之前的对话重新发一遍,对话越长每条越贵,换话题就新开一个对话。
https://api.apivai.com/v1:不能少 /v1,不能是 /v1/v1,不能写成 /v1/chat/completions 这样的完整路径,结尾也不要加斜杠。GET /v1/models 核对。显示成 apivai.claude-sonnet-4-6 是正常的,那是你设的 Prefix ID。max_tokens 设到 4096 以上:单个对话在 Chat Controls 里设,所有人统一则在 Workspace > Models 里按模型设。有问题欢迎评论区交流。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。