AI音频翻译器:集成语音识别、大语言模型翻译与文本转语音
本文介绍了一个基于Python的开源AI音频翻译器,利用Telnyx API实现语音识别、大语言模型翻译和文本转语音的完整流程。用户可上传音频文件,获得翻译后的音频和对齐的转录文本。
这是一个基于Python的开源项目,旨在通过Telnyx的API实现一个完整的AI音频翻译器。用户可以将任何音频文件(如播客、会议录音或讲座)上传到系统中,系统首先使用语音识别(STT)将源语言转录为文本,然后调用大语言模型(LLM)进行翻译,最后通过文本转语音(TTS)生成目标语言的音频。输出结果包括翻译后的音频文件以及对齐的转录文本,便于用户对照和理解。
项目利用了Telnyx平台提供的三个核心API:STT Transcribe(用于语音转文本)、AI Inference(用于大语言模型推理翻译)和TTS Generate(用于文本转语音)。其架构设计清晰,流程如下:当API请求到达时,系统首先通过TTS播放一条欢迎消息,然后收集用户的语音输入并进行STT转录,接着将转录文本发送给AI Inference进行翻译处理,最后将翻译结果通过TTS转换为语音输出。整个过程可以循环进行,形成对话式的交互体验。最终,系统返回一个JSON响应,包含翻译任务的状态和其他元数据。
Telnyx作为AI通信基础设施平台,其独特优势在于将LLM推理与语音流量部署在同一个私有全球网络上,实现了低于200毫秒的往返时延。这确保了实时语音翻译的流畅性。环境变量的配置非常简单,只需设置TELNYX_API_KEY、AI_MODEL、TTS_MODEL和STT_MODEL四个参数即可快速上手。项目提供了详细的设置指南,包括如何克隆仓库、安装依赖、运行应用以及使用ngrok配置Webhook。
在API参考方面,项目提供了一个POST /translate端点,用户可以通过multipart表单上传音频文件,并指定源语言和目标语言。例如,使用curl命令可以轻松测试:curl -X POST http://localhost:5000/translate -F [email protected] -F source=en -F target=ja。响应中会返回任务ID、状态、源语言、目标语言以及原始和翻译后的音频长度等信息。此外,GET /health端点用于健康检查。
常见问题及解决方法包括:端口5000被占用时应检查是否有其他进程在使用;401未授权错误表示API密钥无效,需要重新生成;AI响应慢或为空则需要验证模型名称是否正确。项目还提供了相关示例和官方文档链接,方便用户进一步学习和扩展。