开发者分享五步给已有AI智能体添加语音功能
分享者已经为自己的AI智能体添加了语音功能。ElevenLabs语音引擎可以让智能体实现实时收听、对话、流式回复和处理打断操作。
第一步,安装开发工具包:运行npm install @elevenlabs/elevenlabs-js @elevenlabs/react,即可得到服务端桥接和浏览器调用界面。
第二步,向ElevenLabs配置智能体地址,配置项为speechEngine: { wsUrl: "wss://yourdomain.com/ws" }。可搭配ngrok完成本地测试,不需要电话号码或电信服务商。
第三步,封装你现有的大语言模型调用接口。转录文本可以发送给OpenAI、Claude、Gemini或者你自己训练的模型,将回复流式返回后,ElevenLabs就可以实时将内容转为语音输出。
第四步,在服务端生成一个短期有效的WebRTC令牌,调用示例为const { token } = await elevenlabs.conversationalAi.conversations.getWebrtcToken({ agentId: engineId }); return Response.json({ token });。浏览器会用该令牌换取实时音频会话,密钥信息始终保存在你的服务器中。
第五步,在浏览器中发起通话,调用方式为conversation.startSession({ conversationToken: token })。
整套实现代码大约100行,不需要更换现有的开发平台,语音相关功能全部由ElevenLabs处理。