🛌 与 Amazon Bedrock 集成
本教程由社区贡献,不获得 Open WebUI 团队的支持。它仅作为演示,说明如何根据您的特定用例定制 Open WebUI。想要贡献?请查看贡献教程。
集成 Open-WebUI 与 Amazon Bedrock
在本教程中,我们将探讨将 Open-WebUI 与 Amazon Bedrock 集成的最常见和最流行的方法之一。
先决条件
为了遵循本教程,您必须具备以下条件:
- 一个活跃的 AWS 账户
- 一个活跃的 AWS 访问密钥和秘密密钥
- AWS 中用于启用 Bedrock 模型或已启用模型的 IAM 权限
- 系统上已安装 Docker
什么是 Amazon Bedrock
直接引自 AWS 官网
"Amazon Bedrock 是一项完全托管的服务,它通过单个 API 提供来自 AI21 Labs、Anthropic、Cohere、Luma、Meta、Mistral AI、poolside(即将推出)、Stability AI 和 Amazon 等领先人工智能公司的高性能基础模型 (FM),以及构建具有安全性、隐私性和负责任的人工智能的生成式 AI 应用程序所需的广泛功能集。使用 Amazon Bedrock,您可以轻松地为您的用例试验和评估顶级 FM,使用微调和检索增强生成 (RAG) 等技术通过您的数据对其进行私有自定义,并构建使用您的企业系统和数据源执行任务的代理。由于 Amazon Bedrock 是无服务器的,您无需管理任何基础设施,并且可以使用您熟悉的 AWS 服务安全地将生成式 AI 功能集成并部署到您的应用程序中。"
要了解有关 Bedrock 的更多信息,请访问: Amazon Bedrock 官方页面
集成步骤
步骤 1:验证对 Amazon Bedrock 基础模型的访问
在与 Bedrock 集成之前,您首先需要验证您是否至少拥有一个(但最好是多个)可用基础模型的访问权限。在撰写本文时(2025 年 2 月),共有 47 个基础模型可用。您可以在下面的截图中看到我拥有对多个模型的访问权限。如果模型旁边显示“✅ Access Granted”(已授予访问权限),则表示您拥有该模型的访问权限。如果您没有访问任何模型的权限,则会在下一步中收到错误。
AWS 在此处提供了请求访问/启用这些模型的良好文档: Amazon Bedrock 模型访问文档
步骤 2:配置 Bedrock 访问网关
既然我们已经至少拥有一个 Bedrock 基础模型的访问权限,我们就需要配置 Bedrock 访问网关 (BAG)。您可以将 BAG 视为 AWS 开发的一种代理或中间件,它封装了 AWS 用于 Bedrock 的原生端点/SDK,进而暴露与 OpenAI 架构兼容的端点,而这正是 Open-WebUI 所需的。
供参考,以下是端点之间的简单映射
OpenAI 端点 | Bedrock 方法 |
---|---|
/models | list_inference_profiles |
/models/{model_id} | list_inference_profiles |
/chat/completions | converse 或 converse_stream |
/embeddings | invoke_model |
BAG 仓库可在此处找到: Bedrock 访问网关仓库
要设置 BAG,请按照以下步骤操作
- 克隆 BAG 仓库
- 删除默认的
dockerfile
- 将
Dockerfile_ecs
的名称更改为Dockerfile
现在我们已准备好使用以下命令构建并启动 docker 容器
docker build . -f Dockerfile -t bedrock-gateway
docker run -e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID -e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY -e AWS_SESSION_TOKEN=$AWS_SESSION_TOKEN -e AWS_REGION=us-east-1 -d -p 8000:80 bedrock-gateway
您现在应该能够访问 BAG 的 swagger 页面: https://:8000/docs
步骤 3:在 Open-WebUI 中添加连接
现在 BAG 已经启动并运行,是时候将其作为新连接添加到 Open-WebUI 中了。
- 在“管理面板”下,转到“设置”->“连接”。
- 使用“+”(加号)按钮在 OpenAI 下添加新连接
- 对于 URL,使用“http://host.docker.internal:8000/api/v1”
- 对于密码,BAG 中定义的默认密码是“bedrock”。您始终可以在 BAG 设置中更改此密码(参见 DEFAULT_API_KEYS)
- 单击“验证连接”按钮,您应该会在右上角看到“服务器连接已验证”的提示。
步骤 4:开始使用 Bedrock 基础模型
您现在应该能看到所有可用的 Bedrock 模型了!
其他有用的教程
以下是一些在集成 Open-WebUI 与 Amazon Bedrock 时非常有用的其他教程。