使用 AWS Bedrock 与 AI 服务(Claude、Nova、Polly、Transcribe)配合您现有的 OpenAI 代码
Source: Dev.to

TL;DR
使用您现有的兼容 OpenAI 的工具(OpenWebUI、n8n、Cline、Cursor)配合 AWS Bedrock 的 80 多种模型和 AWS AI 服务(Polly、Transcribe)。只需更改端点——无需修改代码。使用 Terraform 在 15 分钟内部署到您的 AWS 账户。数据保留在您的 AWS 环境中,满足 HIPAA/GDPR 合规要求。
30 秒内的解决方案
from openai import OpenAI
# Just change this line ↓
client = OpenAI(base_url="https://your-aws-api/v1", api_key="your-key")
# Everything else stays the same ↓
response = client.chat.completions.create(
model="anthropic.claude-sonnet-4-5-20250929-v1:0", # Claude 4.5 on Bedrock
messages=[{"role": "user", "content": "Hello from AWS!"}]
)
这能实现的功能
- 使用 OpenWebUI、n8n、Cline、Cursor 与 AWS Bedrock 以及 AWS AI 服务
- 访问 Claude 4.5、Nova、Qwen、DeepSeek、Mistral、Cohere 等 75+ 模型
- 文本转语音(Polly)、语音转文本(Transcribe)、图像生成、嵌入
- 将所有数据保留在您的 AWS 账户中(符合 HIPAA、GDPR、FedRAMP 要求)
- 单一端点实现多区域模型访问
我们解决的问题
大多数现代 AI 工具都是为 OpenAI 的 API 构建的,但 AWS Bedrock 使用的是完全不同的 SDK。这迫使你在使用熟悉的工具和因合规/成本原因转向 AWS 之间做出选择,并且需要重写所有代码。
我们在为一位客户工作时遇到了这种情况,该客户的需求包括:
| 需求 | 为什么重要 |
|---|---|
| 合规性 | 所有数据必须保留在其 AWS 账户中(符合 GDPR 要求) |
| 选择 | 多种模型(Claude、Nova、Qwen、Mistral、DeepSeek、Stability AI、Cohere) |
| 多区域访问 | 不同的 Bedrock 模型在不同的 AWS 区域可用 |
| 标准工具 | OpenWebUI、n8n、IDE 编码代理(Cline、Cursor) |
| 完整的 AWS AI 堆栈 | Bedrock 模型 + Polly(文本转语音)+ Transcribe(语音转文本) |
Source: …
我们的方法:兼容 OpenAI 的翻译层
stdapi.ai 是一个部署在您 AWS 账户中的 API 网关,能够将 OpenAI API 调用转换为对应的 AWS 服务。
关键特性
OpenAI API 兼容性
您现有的代码无需任何修改即可直接使用:
from openai import OpenAI
client = OpenAI(
base_url="https://your-deployment.example.com/v1",
api_key="your-api-key"
)
# Chat completions
response = client.chat.completions.create(
model="amazon.nova-pro-v1:0",
messages=[{"role": "user", "content": "Explain AWS Lambda"}]
)
# Text‑to‑speech with Polly
response = client.audio.speech.create(
model="amazon.polly-neural",
input="Welcome to the future of voice technology!"
)
# Speech‑to‑text with Transcribe
with open("meeting-recording.mp3", "rb") as audio_file:
transcription = client.audio.transcriptions.create(
model="amazon.transcribe",
file=audio_file,
response_format="json"
)
# Image generation with Bedrock
response = client.images.generate(
model="stability.stable-image-ultra-v1:0",
prompt="A serene mountain landscape at sunset"
)
# Embeddings with Bedrock
response = client.embeddings.create(
model="cohere.embed-v4",
input="Semantic search transforms how we find information"
)
多区域访问
通过单一端点即可访问多个 AWS Bedrock 区域的模型。不同模型在不同区域可用,您可以自行配置要包含的区域。Bedrock 推理配置会在需要时自动进行路由。
多模态能力
在一次请求中同时处理文本、图像、视频和文档。支持:
- HTTP URL
- S3 URL(直接访问您的数据)
- Base64 数据 URI
非常适用于视觉任务、文档分析以及检索增强生成(RAG)应用。
部署
使用 Terraform 在 5‑15 分钟内将其部署到您的 AWS 账户。
示例配置已设置:
- 带有 ECS/Fargate 的应用负载均衡器
- 具备最小权限访问的 IAM 角色
- CloudWatch 日志记录
- S3 存储
- 可选的自定义域名及 ACM 证书
开始使用: Sample Terraform configurations
使用场景
- Chat interfaces – OpenWebUI 或 LibreChat,用于私有的 ChatGPT 替代方案
- Workflow automation – n8n 将 AI 连接到 400+ 服务
- Developer tools – IDE 编码代理(Cline、Cursor、Continue)
- Knowledge management – AI 驱动的笔记和语义搜索
- Internal AI tools – 为 Slack、Discord、Teams 定制的聊天机器人
技术细节
工作原理
- 将 OpenAI API 格式转换为 Bedrock 的格式
- 将模型 ID 映射到相应的 AWS 服务和区域
- 在已配置的 AWS 区域中提供统一的模型访问
- 将 Bedrock 响应转换回 OpenAI 格式
- 支持通过服务器发送事件 (SSE) 进行流式传输
安全性
- 所有流量均保持在您的 AWS 账户内部
- 基于 IAM 角色的访问控制
- 可选的 API 密钥认证
- 支持 VPC 部署
- 与 AWS Bedrock 防护栏集成
性能
- 低延迟的转换层
- 支持流式响应
- 随 ECS/Fargate 自动伸缩而扩展
开源与商业选项
stdapi.ai 以开源(AGPL‑3.0)形式提供用于实验,也有附加支持、SLA 和托管服务选项的商业版本。
如有疑问或想要贡献,欢迎随时联系!
# Internal Use
**For production deployments, we recommend the AWS Marketplace version**, which includes:
- Hardened container images
- Regular security updates
- Production support
- 14‑day free trial
The commercial license also removes AGPL obligations for proprietary applications.
入门
🏢 推荐: AWS Marketplace (14‑day free trial, production‑ready)
🚀 开源: GitHub (AGPL‑3.0 for experimentation)
📦 示例部署: Terraform configurations
📚 文档: 完整指南和 API 参考
结论
这种翻译层方法在保持全部 AWS 原生的同时,解决了 AWS Bedrock 的兼容性差距。
主要优势
- 零代码更改 – 您的 OpenAI SDK 代码可直接使用
- AWS 原生 – 完全集成 Bedrock、Polly、Transcribe
- 多区域 – 通过单一端点访问跨 AWS 区域的模型
- 生产就绪 – Terraform 部署,CloudWatch 集成
我们期待您的反馈!您是否以其他方式解决了此问题?在将 Bedrock 集成到工作流中时遇到了哪些挑战?
接下来
我们计划提供以下详细教程:
- 在 AWS 上部署 OpenWebUI – 使用 Bedrock 的私有 ChatGPT 替代方案
- 构建 n8n 工作流 – 在自动化流水线中使用 AWS AI 服务
- IDE 编码代理设置 – 使用 Bedrock 配置 Cline 和 Cursor
- RAG 应用 – 使用 Bedrock 嵌入进行文档搜索
想要特定的教程吗? 在 GitHub 上留下评论或打开 issue!
