Hacker News 中文摘要

RSS订阅

星号AI语音助手 -- Asterisk AI Voice Agent

文章摘要

这是一个开源的AI语音代理项目,能与Asterisk/FreePBX电话系统通过Audiosocket/RTP技术集成,使用Python开发,采用MIT许可证,当前版本为4.5.3。

文章总结

Asterisk AI 语音代理项目概览

项目简介

这是一个开源的AI语音代理系统,专为Asterisk/FreePBX设计,采用Audiosocket/RTP技术实现集成。项目提供模块化架构,支持混合搭配STT(语音转文字)、LLM(大语言模型)和TTS(文字转语音)服务提供商,并包含5个经过企业验证的黄金基线配置。

核心特性

  1. 模块化架构:自由组合不同供应商的STT、LLM和TTS服务
  2. 黄金基线配置
    • OpenAI实时API(推荐快速入门)
    • Deepgram企业级云服务
    • Google Live多模态AI
    • ElevenLabs优质语音服务
    • 本地混合方案(隐私优先)
  3. 自托管支持:通过Ollama运行本地LLM,无需API密钥
  4. 生产就绪功能
    • 完整的通话记录与分析
    • 实时打断功能优化
    • 多模型热切换
    • RTP安全加固

快速入门指南

  1. 环境检查:运行preflight.sh脚本自动生成.env文件
  2. 启动管理界面:通过Docker Compose启动Admin UI(默认端口3003)
  3. 配置向导:按界面指引设置供应商并测试通话
  4. 连接Asterisk:自动生成拨号方案配置

技术架构

  • 双容器设计
    • ai-engine:轻量级协调器,通过ARI连接Asterisk
    • local-ai-server:可选容器,运行本地AI模型
  • 支持协议:AudioSocket和ExternalMedia RTP双传输模式

系统要求

  • 平台:x86_64架构的Linux系统(Ubuntu/Debian/RHEL等)
  • 最低配置
    • 云方案:2核CPU/4GB内存
    • 本地混合方案:4核CPU/8GB内存
  • 依赖软件:Docker Compose v2 + Asterisk 18+

进阶功能

  • AI驱动操作:支持通话转接、语音信箱、邮件发送等
  • 管理工具
    • 网页管理界面(含实时监控)
    • 命令行工具集(健康检查、故障排查等)
  • 扩展能力:通过MCP协议集成外部服务

社区支持

  • Discord讨论组
  • GitHub问题追踪
  • 详细开发文档(含架构深度解析)

该项目采用MIT许可证,适合需要高定制化AI语音解决方案的企业和开发者。所有配置均可通过YAML文件管理,并提供完善的监控和日志功能。

(注:原文中的图片链接、版本历史细节等非核心内容已精简,保留主要功能说明和技术参数)

评论总结

总结评论内容:

  1. 支持AI电话的观点:
  • 认为AI电话带来新可能:"This opens up new possibilities for interactive phone services"(aftbit)
  • 欢迎AI电话:"I welcome the spam calls from our asterisk overlords"(johnebgd)
  1. 反对AI电话的观点:
  • 认为现有技术体验差:"a 3s latency waiting on a reply seems rage inducing"(wild_egg)
  • 担心被滥用:"All I can think of is more spammers, scammers, horrible customer support lines"(WD-42)
  1. 技术实用性讨论:
  • 偏好传统菜单:"Just give me a 'Type 1 for x, type 2 for y'"(krater23)
  • 遇到技术限制:"there is ten seconds timeout for scripts"(eugene3306)
  1. 集成可能性询问:
  • 关注与其他平台整合:"Can I connect this to Twilio"(nextworddev)
  1. 特定案例讨论:
  • 提及个人案例:"I had a talk with a shitty AI bot on a Fedex line"(krater23)
  • 讨论特定人物影响:"That seems like bad news for Allison"(looneysquash)