你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

适用于语音和音频的 GPT-4o 实时 API(预览版)

注意

此功能目前处于公开预览状态。 此预览版未提供服务级别协议,不建议将其用于生产工作负载。 某些功能可能不受支持或者受限。 有关详细信息,请参阅 Microsoft Azure 预览版补充使用条款

适用于语音和音频的 Azure OpenAI GPT-4o 实时 API 是 GPT-4o 模型系列的一部分,该系列支持低延迟的“语音传入,语音传出”对话交互。 GPT-4o 音频 realtime API 旨在处理实时、低延迟的对话交互,非常适合涉及用户与模型之间的实时交互的用例,例如客户支持代理、语音助理和实时翻译。

实时 API 的大多数用户都需要实时传送和接收来自最终用户的音频,包括使用 WebRTC 或电话系统的应用程序。 实时 API 未设计为直接连接到最终用户设备,而是依靠客户端集成来终止最终用户音频流。

支持的模型

目前仅 gpt-4o-realtime-preview 版本:2024-10-01-preview 支持实时音频。

gpt-4o-realtime-preview 模型可用于美国东部 2 和瑞典中部地区的全局部署。

重要

系统会按照 Azure OpenAI 服务的服务特定产品条款中的“滥用监视的数据使用和访问”部分所述存储提示和补全,但有限例外情况不适用。 即使已批准修改滥用监视的客户,也会启用滥用监视,以便使用 gpt-4o-realtime-preview API。

API 支持

首次在 API 版本 2024-10-01-preview 中添加了对实时 API 的支持。

注意

有关 API 和体系结构的详细信息,请参阅 GitHub 上的 Azure OpenAI GPT-4o 实时音频存储库

先决条件

为实时音频部署模型

在使用 GPT-4o 实时音频之前,需要在受支持的区域中部署 gpt-4o-realtime-preview 模型,如支持的模型部分所述。

  1. 转到“Azure AI Foundry 主页”,确保使用包含 Azure OpenAI 服务资源(含或不含模型部署均可)的 Azure 订阅登录。
  2. 在左窗格的“资源操场”下选择“实时音频”操场。
  3. 选择“+ 创建部署”以打开部署窗口。
  4. 搜索并选择 gpt-4o-realtime-preview 模型,然后选择“确认”。
  5. 在部署向导中,请确保选择 2024-10-01 模型版本。
  6. 按照向导部署模型。

部署了 gpt-4o-realtime-preview 模型后,你可以在 Azure AI Foundry 门户“实时音频”操场或实时 API 与其进行实时交互。

使用 GPT-4o 实时音频

提示

现在,使用 GPT-4o 实时 API 开始开发的最快方法是从 GitHub 上的 Azure OpenAI GPT-4o 实时音频存储库下载示例代码。

若要在 Azure AI Foundry 实时音频操场中与已部署的 gpt-4o-realtime-preview 模型聊天,请按照以下步骤操作:

  1. Azure AI Foundry 门户中的“Azure OpenAI 服务”页。 请确保使用包含 Azure OpenAI 服务资源且已部署 gpt-4o-realtime-preview 模型的 Azure 订阅登录。

  2. 在左窗格的“资源操场”下选择“实时音频”操场。

  3. 从“部署”gpt-4o-realtime-preview下拉列表中选择部署的 模型。

  4. 选择“启用麦克风”以允许浏览器访问麦克风。 如果已授予权限,则可以跳过此步骤。

    实时音频操场的屏幕截图,其中选择了已部署的模型。

  5. (可选)可以在“为模型提供说明和上下文”文本框中编辑内容。 为模型提供有关它应该如何运行以及在生成回复时应引用的任何上下文的说明。 你可以描述助手的个性,告诉它应该回答什么和不应该回答什么,并告诉它如何设置回复的格式。

  6. (可选)更改阈值、前缀填充和静音持续时间等设置。

  7. 选择“开始收听”以启动会话。 可以对着麦克风说话来开始聊天。

    实时音频操场的屏幕截图,其中启用了“开始收听”按钮和麦克风访问。

  8. 可以随时通过说话来中断聊天。 可以通过选择“停止收听”按钮来结束聊天。

JavaScript Web 示例演示了如何使用 GPT-4o 实时 API 实时与模型实时交互。 示例代码包括一个简单的 Web 界面,该界面从用户的麦克风捕获音频,并将其发送到模型进行处理。 模型使用文本和音频进行响应,示例代码在 Web 界面中呈现。

可以按照以下步骤在计算机本地运行示例代码。 有关最新说明,请参阅 GitHub 上的存储库

  1. 如果未安装 Node.js,请下载并安装 LTS 版本的 Node.js

  2. 将存储库克隆到本地计算机:

    git clone https://github.com/Azure-Samples/aoai-realtime-audio-sdk.git
    
  3. 转到首选代码编辑器中的 javascript/samples/web 文件夹。

    cd ./javascript/samples
    
  4. 运行 download-pkg.ps1download-pkg.sh 来下载所需的包。

  5. ./javascript/samples 文件夹中转到 web 文件夹。

    cd ./web
    
  6. 运行 npm install 以安装包依赖项。

  7. 运行 npm run dev 以启动 Web 服务器,根据需要导航任何防火墙权限提示。

  8. 在浏览器中,从控制台输出(如 http://localhost:5173/)转到提供的任何 URI。

  9. 在 Web 界面中输入以下信息:

    • 终结点:Azure OpenAI 资源的资源终结点。 无需追加 /realtime 路径。 示例结构可能是 https://my-azure-openai-resource-from-portal.openai.azure.com
    • API 密钥:Azure OpenAI 资源的相应 API 密钥。
    • 部署在上一部分中部署gpt-4o-realtime-preview 模型的名称。
    • 系统消息:(可选)可以提供系统消息,例如“你说话总是像个友好的海盗”。
    • 温度:(可选)可以提供自定义温度。
    • 语音:(可选)可以选择语音。
  10. 选择“录制”按钮以开始会话。 如果系统提示,请接受使用麦克风的权限。

  11. 主输出中应会显示 << Session Started >> 消息。 然后,可以对着麦克风说话来开始聊天。

  12. 可以随时通过说话来中断聊天。 可以通过选择“停止”按钮来结束聊天。