AI News HubLIVE
站内改写2 分钟阅读

能接电话的AI语言导师

一个基于Telnyx API的开源项目,让用户通过电话与AI进行外语对话练习。系统利用语音识别、AI推理和文本转语音技术,实现实时交互。

来源Hacker News AI作者: harpreetseehra

一个名为“AI Language Learning Phone Tutor”的开源项目近日在开发者社区引起关注。该项目利用Telnyx通信平台,让用户通过普通电话与AI进行外语对话练习。用户只需拨打一个号码,系统便会自动接听并开始交互。该项目基于Python开发,使用Telnyx的AI推理API(/v2/ai/chat/completions)进行对话处理,同时利用呼叫控制Webhook管理通话生命周期。

当来电被应答时,AI会播放欢迎语音,然后收集用户的语音或按键输入。收集到的输入被发送给AI推理引擎,后者生成回复并通过文本转语音(TTS)播放。整个过程形成一个循环,直到用户挂断。该项目支持多种事件处理,包括call.answered、call.gather.ended、call.hangup、call.initiated、call.speak.ended以及message.received。系统架构清晰:来电首先进入应答和问候模块,随后收集DTMF输入,然后调用AI推理引擎进行翻译或对话,最后以JSON响应返回。

项目提供了详细的配置指南。开发者需要复制.env.example文件并填写环境变量,包括TELNYX_API_KEY(Telnyx API v2密钥)、AI_MODEL(AI推理模型名称,如moonshotai/Kimi-K2.6)、TUTOR_NUMBER(教程号码)和PORT(HTTP服务器端口)。部署步骤简单:克隆GitHub仓库,安装依赖,运行Python脚本即可启动本地服务器。如果需要公网访问,可以使用ngrok隧道暴露本地端口,并在Telnyx Portal中配置Webhook URL。

该项目还提供了REST API接口,如GET /sessions用于查看当前会话(返回会话ID、状态、持续时间和轮次),GET /health用于健康检查(返回状态、运行时间、活跃会话数和版本)。Webhook端点POST /webhooks/voice接收Telnyx呼叫控制事件,并给出了事件示例。故障排除部分列出了常见问题:401 Unauthorized(API密钥无效或缺失)、Webhook未收到(本地服务器不可公开访问)、422 Unprocessable Entity(请求字段缺失或格式错误)。

此外,项目还列出了相关示例,如AI After Hours Emergency Triage、AI Assistant Knowledge Base等,以及资源链接(呼叫控制指南、AI推理指南、Telnyx开发者文档)。Telnyx平台本身是一个AI通信基础设施,提供语音、消息、SIP、AI和物联网服务,运行在私有全球网络上。这个项目展示了如何将AI对话能力集成到传统的电话系统中,为语言学习提供了一种新颖的实践方式。