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對話能力集成到傳統的電話系統中,為語言學習提供了一種新穎的實踐方式。