你将获得
- 已部署的 EDDI 代理出现在 Open WebUI 的模型下拉列表中
- 支持流式输出和令牌用量报告的 Chat Completions
- 每个聊天对应一个 EDDI 对话,因此记忆和行为规则可跨回合保持
- 无状态变体(
:stateless模型 ID),适用于生成标题等单轮调用
在 EDDI 中如何工作
- 用
EDDI_OPENAI_COMPAT_ENABLED=true启用适配器,并设置 API 密钥。它默认处于禁用状态。 - 在 EDDI 中部署一个代理,它会出现在
GET /v1/models中。 - 把 Open WebUI(或 SDK)指向
http://<eddi>:7070/v1,并使用相同的 API 密钥。 - 在 Open WebUI 中开启
ENABLE_FORWARD_USER_INFO_HEADERS。否则所有聊天窗口会共用同一个 EDDI 对话。 - 从模型列表中选择该代理,开始聊天。
配置
摘自 EDDI 文档。诸如 your-agent-id 之类的占位符需要你自行替换。
services:
eddi:
image: labsai/eddi:latest
ports: ["7070:7070"]
environment:
EDDI_OPENAI_COMPAT_ENABLED: "true"
EDDI_OPENAI_COMPAT_API_KEY: "sk-eddi-change-me"
open-webui:
image: ghcr.io/open-webui/open-webui:main
ports: ["3000:8080"]
environment:
OPENAI_API_BASE_URL: http://eddi:7070/v1
OPENAI_API_KEY: "sk-eddi-change-me"
ENABLE_OLLAMA_API: "false"
ENABLE_FORWARD_USER_INFO_HEADERS: "true"curl -H "Authorization: Bearer $EDDI_API_KEY" http://localhost:7070/v1/models
curl -X POST http://localhost:7070/v1/chat/completions \
-H "Authorization: Bearer $EDDI_API_KEY" \
-H "Content-Type: application/json" \
-H "X-OpenWebUI-Chat-Id: chat-1" \
-H "X-OpenWebUI-User-Id: alice" \
-d '{"model":"my-agent-a3f9c1","messages":[{"role":"user","content":"Hello"}]}'治理
- 该 API 有自己的 API 密钥认证,在你启用之前保持关闭。EDDI 会拒绝在一种组合下启动:该组合会让任何能访问该端口的人都可以创建对话。
- 代理保留自己的审批关口和审计记录。经由 /v1 的请求就是一次普通的 EDDI 对话。
- 共享 API 密钥加用户请求头,意味着把身份委托给作为受信代理的 Open WebUI。请像对待任何共享密钥一样对待它,并定期轮换。
须知
- 只有单个代理会作为模型出现,多代理小组不会。
- 快捷回复和按钮会渲染为 Markdown 文本,而不是交互式控件。
- 工具调用不会返回给客户端。EDDI 在自己的管道内运行工具,工具活动仍可在审计账本中查看。
相关集成
本页的配置和行为依据 EDDI 文档,核对日期为 2026-10-14。字段名称和默认值可能随版本变化,请在所用版本的文档中确认。