一段 JavaScript 代码,集成网站AI语音助手

本文涉及的产品
函数计算FC,每月15万CU 3个月
简介: 根据本教程,只需通过白屏化的界面操作,即可快速构建一个专属的AI智能体。

一、引言

添加一段 JavaScript 代码,就能轻松将 AI 语音助手集成到现有网站?


根据本文的教程,只需通过白屏化的界面操作,即可快速构建一个专属的AI智能体,并通过视频云 ARTC 网络与终端用户进行实时交互,从而获得实时语音通话 AI 智能体,拥有即时、自然的 AI 语音交互体验。


为什么选择使用 AI 实时语音互动?


1、超拟人化体验:

  • 延时仅 1.5 秒,语音交互更流畅。
  • 支持智能环境音消除、智能语义识别、断句优化、高拟真音色与数字人形象。


2、灵活的智能体编排:

  • 控制台支持白屏化操作,轻松集成 AI 组件(ASR/TTS/数字人/LLM…)。
  • 快速构建企业专属云上 AI 智能体。


3、开放的 AI 生态:

  • 内置阿里百炼平台 AI 能力,支持接入第三方 AI 插件及客户自研模型。


4、高质量低延时通话:

  • 依托 ARTC 全球节点和 QoS 策略,保障音视频通话质量,覆盖全球用户需求。

该助手还支持移动端扫码快速访问H5页面上的AI语音助手、支持定制智能体的人设,接入个人的私有知识库等功能,提供更加个性化和专业的服务。


点击文末“阅读原文”,深入了解方案详情,还可参与活动赢取精美礼品!


打造高效 AI 语音交互,从这里开始!


二、整体架构

AI 实时互动是用户与 AI 的端到端交互,用户通过终端发起与云端 AI 智能体的实时音视频通话。


整体按以下步骤运行:


1、用户发起音视频通话请求。

2、AI 智能体接收音视频输入,启动工作流处理用户请求。

3、AI 智能体生成音视频响应流,通过 ARTC 网络推送给用户终端。

4、用户接收并播放响应流,与 AI 智能体完成自然互动。


AI 智能体是本方案的核心组件之一,能够在云端模拟高度拟真的用户交互。用户可以根据需求自行创建智能体。通过灵活的插件式和拖拽式方式,用户可以编排各个 AI 组件,如语音转文字、大语言模型、语音合成和自研向量数据库等,从而实现 AI 智能体的实时工作流。实时音视频通信技术(ARTC)为用户与AI智能体之间的音频通话提供了高可用、高品质、超低延时的保障。


AI 智能体接收到用户的音视频输入后,开始运转工作流,输出AI响应结果的音视频流并推送到 ARTC 网络,用户可以订阅该音视频流进行播放,从而完成用户与 AI 智能体的对话。智能媒体服务 IMS 用来创建 AI 智能体和实时工作流,实时音视频 ARTC 用来创建实时音视频应用,提供 AI 智能体和用户的实时音视频通话能力。当前方案中 Web 服务通过函数计算FC进行部署。


技术架构核心模块

  • 智能媒体服务(IMS): 用于创建 AI 智能体及工作流。
  • 实时音视频(ARTC): 提供全球 3200+ 节点支持,实现高质量低延时的实时音视频通信能力。
  • 函数计算(FC): 负责 Web 服务的轻量化部署。

技术总体架构图:

image.png

三、体验教程

1.创建实时音视频通信应用

实时音视频 ARTC 是智能体和用户之间建立起实时音频通信的基础,实现 AI 实时互动需要准备一个 ARTC 应用


2.创建AI智能体

(1)编排实时工作流

实时工作流是一种预先定义的流程模板,用于自动化处理 ARTC 音频流。支持创建语音通话并且预设了多种功能节点,包括语音转文字 (STT)、文字转语音 (TTS)、文生文大语言模型(LLM)等。

(2)创建智能体

AI 智能体是在 AI 实时互动解决方案中定义的高仿真用户,用户可以根据自身需求创建智能体,并将其集成到自己的应用中,使其能够按照既定工作流程在实时音频环境中运行,从而实现实时音频交互功能。


3.通过函数计算部署应用

4.应用体验

(1)实时语音对话

  1. 单击拨打按钮,即可开始与智能体对话。

image.png

  1. 浏览器弹窗请求使用麦克风,点击访问该网站时允许。

image.png

  1. 用户可以与智能体进行实时语音对话,页面上会同步展示当前对话的文字信息,以便用户查阅对话内容。

image.png

  1. 单击右上角的 image.png ,可以开启/关闭智能打断,以及选择切换音色。

image.png

(2)如何在已有网站中快速集成 AI 语音助手

  1. 已经拥有网站和域名,并且部署了SSL证书,可以在需要集成AI语音助手的网页中通过嵌入一段JavaScript代码来实现相应的功能。
  2. 请复制并粘贴以下代码段到您的网页代码中相应的位置。

image.png

<!-- 创建一个用于渲染 ARTC AI Call UI 的容器 -->
    <div id="root"></div>

    <!-- 引入 ARTC AI Call UI 的 JavaScript 文件 -->
    <script src="https://g.alicdn.com/apsara-media-aui/amaui-web-aicall/1.6.2/aicall-ui.js"></script>

    <!-- 初始化并渲染 ARTC AI Call UI -->
    <script>
      new ARTCAICallUI({
        userId: 'id',                          
        root: document.getElementById('root'),  
        appServer: 'https://<url>',             
        agentType: 0,                       
        userToken: 'token'                    
      }).render();
    </script>

参数说明:

  1. userId:字符串类型,按照业务需要传入,不能为空。
  2. root:页面渲染到的节点,画面完整填充整个区域。
  3. appServer:AI实时语音互动应用服务地址,当前即为函数计算 FC 中的访问域名。
  4. agentType:通话类型界面 0:语音通话,1:数字人通话,2:视频理解通话。
  5. userToken:用于应用鉴权,如果应用场景不需要鉴权,可以不传递此参数,但如果传递,则其值不能为空字符串。

(3)如何在移动端快速集成 AI 语音助手

  1. 当前DEMO提供了移动端扫码体验,支持使用微信/钉钉扫码,或复制链接后在手机浏览器中打开。

image.png

  1. 在移动端浏览器打开后,点击显示详细信息。

image.png

  1. 在展开的详细信息中,点击访问此网站。

image.png

  1. 接下来,即可在移动端体验AI实时语音对话。

image.png

(4)个性化定制智能体人设

可以修改现有的工作流模板,预设不同的场景和智能体人设,从而实现个性化定制,优化体验。

(5)接入私有知识库

如果希望智能体增强某些领域的专业知识,可以通过百炼平台创建知识库和 RAG 应用,并进行配置接入。







来源  |  阿里云开发者公众号




相关实践学习
【文生图】一键部署Stable Diffusion基于函数计算
本实验教你如何在函数计算FC上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。函数计算提供一定的免费额度供用户使用。本实验答疑钉钉群:29290019867
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
相关文章
|
15天前
|
数据采集 人工智能 自然语言处理
AI终于能听懂宝宝说话了!ChildMandarin:智源研究院开源的低幼儿童中文语音数据集,覆盖22省方言
ChildMandarin是由智源研究院与南开大学联合推出的开源语音数据集,包含41.25小时3-5岁儿童普通话语音数据,覆盖中国22个省级行政区,为儿童语音识别和语言发展研究提供高质量数据支持。
115 20
AI终于能听懂宝宝说话了!ChildMandarin:智源研究院开源的低幼儿童中文语音数据集,覆盖22省方言
|
14天前
|
人工智能 自然语言处理 测试技术
亚马逊推出AI语音模型新标杆!Nova Sonic:多语言识别错误率仅4.2%,碾压GPT-4o-transcribe
亚马逊推出的Nova Sonic是一款整合语音理解与生成能力的AI模型,支持多语言交互,在LibriSpeech基准测试中平均单词错误率低至4.2%,具备实时双向流式传输能力。
72 5
亚马逊推出AI语音模型新标杆!Nova Sonic:多语言识别错误率仅4.2%,碾压GPT-4o-transcribe
|
3天前
|
存储 JavaScript 前端开发
在NodeJS中使用npm包进行JS代码的混淆加密
总的来说,使用“javascript-obfuscator”包可以帮助我们在Node.js中轻松地混淆JavaScript代码。通过合理的配置,我们可以使混淆后的代码更难以理解,从而提高代码的保密性。
38 9
|
25天前
|
人工智能 JavaScript 语音技术
HarmonyOS NEXT AI基础语音服务-语音输入
本案例展示了一个基于AI语音服务的实时语音转文字功能,通过麦克风采集音频并转换为文本。主要步骤包括:申请麦克风权限、初始化语音识别引擎、设置识别回调、配置音频参数及实现UI交互(长按按钮控制录音启停)。代码使用TypeScript编写,涵盖权限管理、引擎生命周期、异常处理等核心环节,确保功能稳定运行。适用于需要实时语音转写的场景,如会议记录、语音输入等。
HarmonyOS NEXT AI基础语音服务-语音输入
|
1月前
|
人工智能 并行计算 语音技术
Open-LLM-VTuber:宅男福音!开源AI老婆离线版上线,实时语音+Live2D互动还会脸红心跳
Open-LLM-VTuber 是一个开源的跨平台语音交互 AI 伴侣项目,支持实时语音对话、视觉感知和生动的 Live2D 动态形象,完全离线运行,保护用户隐私。
208 10
Open-LLM-VTuber:宅男福音!开源AI老婆离线版上线,实时语音+Live2D互动还会脸红心跳
|
24天前
|
前端开发 JavaScript
【Javascript系列】Terser除了压缩代码之外,还有优化代码的功能
Terser 是一款广泛应用于前端开发的 JavaScript 解析器和压缩工具,常被视为 Uglify-es 的替代品。它不仅能高效压缩代码体积,还能优化代码逻辑,提升可靠性。例如,在调试中发现,Terser 压缩后的代码对删除功能确认框逻辑进行了优化。常用参数包括 `compress`(启用压缩)、`mangle`(变量名混淆)和 `output`(输出配置)。更多高级用法可参考官方文档。
106 11
|
1月前
|
人工智能 自然语言处理 前端开发
用户说 | 零基础用通义灵码 AI 程序员开发个人笔记网站
通义灵码是一款基于通义大模型的智能编码辅助工具,支持自然语言生成代码、单元测试生成、代码注释生成等功能,兼容多种主流IDE和编程语言。对于零基础用户,只需通过自然语言描述需求,通义灵码即可自动生成代码,帮助快速开发个人笔记网站,极大简化开发流程,提升效率。
|
1月前
|
JavaScript 前端开发 算法
JavaScript 中通过Array.sort() 实现多字段排序、排序稳定性、随机排序洗牌算法、优化排序性能,JS中排序算法的使用详解(附实际应用代码)
Array.sort() 是一个功能强大的方法,通过自定义的比较函数,可以处理各种复杂的排序逻辑。无论是简单的数字排序,还是多字段、嵌套对象、分组排序等高级应用,Array.sort() 都能胜任。同时,通过性能优化技巧(如映射排序)和结合其他数组方法(如 reduce),Array.sort() 可以用来实现高效的数据处理逻辑。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
|
1月前
|
JavaScript 前端开发 API
JavaScript中通过array.map()实现数据转换、创建派生数组、异步数据流处理、复杂API请求、DOM操作、搜索和过滤等,array.map()的使用详解(附实际应用代码)
array.map()可以用来数据转换、创建派生数组、应用函数、链式调用、异步数据流处理、复杂API请求梳理、提供DOM操作、用来搜索和过滤等,比for好用太多了,主要是写法简单,并且非常直观,并且能提升代码的可读性,也就提升了Long Term代码的可维护性。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
|
1月前
|
移动开发 运维 供应链
通过array.some()实现权限检查、表单验证、库存管理、内容审查和数据处理;js数组元素检查的方法,some()的使用详解,array.some与array.every的区别(附实际应用代码)
array.some()可以用来权限检查、表单验证、库存管理、内容审查和数据处理等数据校验工作,核心在于利用其短路机制,速度更快,节约性能。 博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等