AI 语音通话
手动部署
15
https://www.aliyun.com/solution/tech-solution/real-time-interaction
方案概览
AI 智能体实时语音互动是一个端到端的解决方案,旨在为用户与AI智能体之间提供实时音频交互。用户通过终端 SDK 发起与云端 AI 智能体的音频通话请求,AI 智能体接收到用户的音频输入后,依据预定义的工作流进行处理,生成相应的音频响应,并通过 ARTC 网络将响应结果推送给用户。用户可以订阅该音频流进行播放,从而实现与 AI 智能体的对话。
本技术解决方案将介绍如何快速在阿里云上构建 AI 智能体实时语音互动能力。
方案架构
AI 智能体是本方案的核心组件之一,能够在云端模拟高度拟真的用户交互。用户可以根据需求自行创建智能体。通过灵活的插件式和拖拽式方式,用户可以编排各个 AI 组件,如语音转文字、大语言模型、语音合成和自研向量数据库等,从而实现 AI 智能体的实时工作流。实时音视频通信技术(ARTC)为用户与AI智能体之间的音频通话提供了高可用、高品质、超低延时的保障。
方案架构如下图所示:
本方案的技术架构包括以下基础设施和云服务:
函数计算 FC :用于部署应用程序。
实时音视频 ARTC :用来创建实时音频应用,提供AI智能体和用户的实时音频通话能力。
智能媒体服务 IMS :用来创建实时工作流和 AI 智能体。
准备账号
如果您还没有阿里云账号,请访问阿里云账号注册页面,根据页面提示完成注册。阿里云账号是您使用云资源的付费实体,因此是部署方案的必要前提。
为阿里云账号充值:AI 实时互动支持每天20通免费通话,实时音视频 ARTC 的计费标准为0.006元/分钟(双向收费)。此外,函数计算 FC 与百炼服务提供了一定的免费试用额度。若您已使用完这些免费额度,体验本方案的预计成本将不会超过1元。
百炼提供的新人免费额度可以完全覆盖本教程所需资源消耗。额度消耗完后按 token 计费,相比自行部署大模型可以显著降低初期投入成本。
函数计算提供的试用额度(点此领取)可以完全覆盖本教程所需资源消耗。额度消耗完后按量计费,对于本教程所涉及的Web服务,只在有访问的情况下才会产生费用。
创建实时音视频通信应用
1
实时音视频 ARTC 是智能体和用户之间建立起实时音频通信的基础,实现 AI 实时互动需要准备一个 ARTC 应用,参照以下步骤开通并创建 ARTC 应用。
创建AI智能体
2
1.编排实时工作流
实时工作流是一种预先定义的流程模板,用于自动化处理 ARTC 音频流。支持创建语音通话并且预设了多种功能节点,包括语音转文字 (STT)、文字转语音 (TTS)、文生文大语言模型(LLM)等。平台提供了可直接选用的预置模板,同时,也支持根据需求创建自定义模板,让智能体自动按照预设好的流程工作。
登录智能媒体服务控制台,点击立即开通按钮。
在服务开通页面,勾选服务协议,点击立即开通按钮。
点击服务授权按钮。
在服务授权页面,点击同意授权按钮。
登录AI实时互动-工作流管理,单击创建工作流模板。
说明AI 实时互动目前在国内可选地域包括杭州、上海、北京和深圳。请您根据自身的实际需求,先在导航栏中选择相应的地域,然后再继续进行创建操作。
配置基础信息:可以自定义工作流名称,便于后续创建与管理智能体时选择对应的工作流模板。
配置工作流模板:工作流类型选择语音通话,工作流已预先配置好节点,并不支持增删操作,但可以自由编辑节点内容。
依次编辑 STT 语音转文字节点、LLM 大语言模型节点、TTS 文字转语音节点的节点名称。以 SST 语音转文字节点为例,点击编辑图标。
在弹出的节点配置页面,输入节点名称,修改完成后点击保存。
工作流节点全部修改完成后,点击保存。
2.创建智能体
AI 智能体是在 AI 实时互动解决方案中定义的高仿真用户,用户可以根据自身需求创建智能体,并将其集成到自己的应用中,使其能够按照既定工作流程在实时音频环境中运行,从而实现实时音频交互功能。
登录 AI实时互动-智能体管理,单击创建智能体。
配置基础信息:可以自定义智能体名称。
工作流配置:绑定之前创建的实时工作流 ID 和实时音视频 ARTC 应用,可以依据需求定制智能体的开场问候语,完成后点击提交。
部署应用
1
请点击应用模板链接打开我们提供的函数计算应用模板,填写配置。
项目
描述
示例值
部署类型
部署方式
直接部署
应用名称
自动生成
默认
角色名称
模板所需的角色(如果需要授权,请按照控制台提示进行授权)。
默认
实时音视频AppId
实时音视频应用 ID
打开视频云直播控制台,点击左侧导航栏直播+ > 实时音视频(原互动直播) > 应用管理,单击目标应用操作列中的管理。在基本信息页面可以看到应用 ID 和 AppKey
实时音视频AppKey
实时音视频AppKey
语音通话智能体的AgentId
智能体ID
打开智能体管理,找到并复制当前智能体 ID。
RAM角色ARN
函数计算访问相应服务时使用的函数角色。
如果提示您当前选择的应用还需要额外一些权限,请单击前往授权。
地域
当前应用支持杭州、深圳、北京和上海四个地域。注意选择的地域与之前创建的智能体所在地域必须保持一致。
默认 华东1(杭州)
其他配置项保持默认,点击页面左下角的创建并部署默认环境,等待项目部署完成即可。
应用部署完成后,可以在应用的环境详情中找到示例网站的访问域名,点击即可查看,确认示例网站已经部署成功。
当您点击拨打按钮后,系统会提示使用HTTPS访问页面。请根据提示点击所提供的链接,以完成页面跳转。
浏览器会提示安全证书警告或错误,可以选择点击高级选项,然后点击继续前往以访问该网站。
说明应用程序需要使用麦克风,浏览器要求必须通过 HTTPS 进行连接。当前应用程序部署使用的域名是由 CNCF SandBox 项目下的 Serverless Devs 社区提供的临时域名,尚未绑定有效的 SSL/TLS 证书,因此当用户访问时,浏览器会提示连接不安全。建议在生产环境中部署该应用程序时,绑定一个有效的 SSL/TLS 证书,以确保通过 HTTPS 协议实现安全连接。
应用体验
10
完成及清理
1
清理资源
在本方案中,创建的云服务资源在体验完毕后,可以参考以下规则处理对应产品,避免继续产生费用:
删除函数计算应用:
登录函数计算控制台,在左侧导航栏,单击应用。找到目标应用,单击右侧操作列的删除应用。
删除智能体:
登录智能媒体服务控制台,在智能生产制作 > AI 实时互动 > 智能体管理页面,找到智能体并单击删除。
删除实时工作流模板:
登录智能媒体服务控制台,在智能生产制作 > AI 实时互动>工作流管理页面,找到工作流模板并单击删除。
删除 ARTC 应用:
登录视频直播控制台,在直播+ >实时音视频 > 应用管理页面,找到 ARTC 应用并单击删除。
删除百炼应用和数据:
登录百炼控制台,在我的应用中,找到应用并单击右下角更多,在下拉列表中点击删除应用。
在数据应用 > 知识索引页面,找到知识库并点击操作栏中的删除。
在数据管理页面,找到上传的文档并点击操作栏中的删除。