本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用响应 API 进行推理
Amazon Bedrock 通过终端节点提供OpenAI响应 API,该bedrock-mantle终端节点由 Mantle 提供支持,Mantle 是一款用于大规模机器学习模型服务的分布式推理引擎。此终端节点允许您在 Amazon Bedrock 模型中使用熟悉的 OpenAI SDK 和工具,使您只需更新基本 URL 和 API 密钥即可迁移现有应用程序,只需更新您的基本 URL 和 API 密钥即可。
重要
在 Amazon Bedrock 上使用OpenAI软件开发工具包时,必须将其指向亚马逊 Bedrock 终端节点,而不是终端节点。OpenAI设置以下环境变量:
OPENAI_BASE_URL="https://bedrock-mantle.<your-region>.api.aws/v1" OPENAI_API_KEY="<your Bedrock API key>"
请勿使用您的 OpenAI API 密钥或OpenAI基本网址 (https://api.openai.com/v1)。它们OpenAI直接连接到亚马逊 Bedrock,而不是与 Amazon Bedrock 相连。要创建 Amazon Bedrock API 密钥,请参阅API 密钥。
主要优势包括:
-
异步推理 — 通过响应 API 支持长时间运行的推理工作负载
-
状态对话管理 — 自动重建上下文,无需在每个请求中手动传递对话历史记录
-
简化工具使用 — 简化了代理工作流程的集成
-
灵活的响应模式 — Support 支持直播和非直播响应
-
易于迁移 — 与现有 OpenAI SDK 代码库兼容
支持的区域和终端节点
终bedrock-mantle端节点可在以下 AWS 区域使用:
| 区域名称 | 区域 | 端点 |
|---|---|---|
| 美国东部(俄亥俄州) | us-east-2 | bedrock-mantle.us-east-2.api.aws |
| 美国东部(弗吉尼亚州北部) | us-east-1 | bedrock-mantle.us-east-1.api.aws |
| 美国西部(俄勒冈州) | us-west-2 | bedrock-mantle.us-west-2.api.aws |
| 亚太地区(雅加达) | ap-southeast-3 | bedrock-mantle.ap-southeast-3.api.aws |
| 亚太地区(孟买) | ap-south-1 | bedrock-mantle.ap-south-1.api.aws |
| 亚太地区(悉尼) | ap-southeast-2 | bedrock-mantle.ap-southeast-2.api.aws |
| 亚太地区(东京) | ap-northeast-1 | bedrock-mantle.ap-northeast-1.api.aws |
| 欧洲地区(法兰克福) | eu-central-1 | bedrock-mantle.eu-central-1.api.aws |
| 欧洲地区(爱尔兰) | eu-west-1 | bedrock-mantle.eu-west-1.api.aws |
| 欧洲(伦敦) | eu-west-2 | bedrock-mantle.eu-west-2.api.aws |
| 欧洲地区(米兰) | eu-south-1 | bedrock-mantle.eu-south-1.api.aws |
| 欧洲地区(斯德哥尔摩) | eu-north-1 | bedrock-mantle.eu-north-1.api.aws |
| 南美洲(圣保罗) | sa-east-1 | bedrock-mantle.sa-east-1.api.aws |
先决条件
在使用 OpenAI API 之前,请确保您具备以下条件:
-
身份验证-您可以使用以下方式进行身份验证:
-
亚马逊 Bedrock API 密钥(OpenAI软件开发工具包所必需的)
-
AWS 凭证(支持 HTTP 请求)
-
-
OpenAI软件开发工具包(可选)— 如果使用 SDK-based 请求,请安装 OpenAI Python 开发工具包。
-
环境变量-设置以下环境变量:
-
OPENAI_API_KEY— 设置为你的 Amazon Bedrock API 密钥 -
OPENAI_BASE_URL— 设置为您所在地区的 Amazon Bedrock 终端节点(例如,https://bedrock-mantle.us-east-1.api.aws/v1)
-
模型 API
模型 API 允许您在由 Mantle 提供支持的 Amazon Bedrock 中发现可用的模型。使用此 API 检索可用于响应 API 的模型列表。有关完整的 API 详细信息,请参阅OpenAI模型文档
列出可用型号
要列出可用型号,请选择首选方法的选项卡,然后按照以下步骤操作:
响应 API
Responses API 提供有状态的对话管理,支持直播、后台处理和多回合互动。如需了解完整的 API 详情,请参阅OpenAI响应文档
注意
并非所有模型都支持响应 API。要查看哪些模型支持响应 API,请参阅API 兼容性。
响应 API 如何存储对话状态
Responses API 可以使用存储状态来启用多回合对话,并允许您通过previous_response_id参数引用之前的回合。默认情况下,存储处于启用状态,但可以通过store参数根据请求禁用。存储的响应按项目划分范围。来自一个项目的响应不能用作先前的响应,也不能在第二个项目中读取。有关项目的更多信息,请参阅项目 (OpenAI-compatible)。
-
如果
store为true(默认),Amazon Bedrock 会在请求的源区域将响应(包括输入和输出)保留 30 天。在此窗口中,您可以通过传递previous_response_id和检索响应来链接后续请求GET /v1/responses/{id}。30 天后,回复将自动删除,且无法再检索。 -
如果
store是false,Amazon Bedrock 将不会保留请求或响应中的任何数据。该previous_response_id参数不能用于继续对话。
默认值true与OpenAI响应 API 规范相匹配。不希望 Amazon Bedrock 保留对话数据的客户应false在每次请求store时明确设置为。存储的数据保存在请求的源区域,静态加密,并限定在调用 AWS 账户的 Project 资源范围内。存储数据仅用于满足您的请求,不会用于或保留用于任何其他目的。
基本请求
要创建响应,请选择首选方法的选项卡,然后按照以下步骤操作:
直播回复
要以增量方式接收响应事件,请选择首选方法的选项卡,然后按照以下步骤操作: