当前位置: 首页 > news >正文

【大家的项目】active-call: 纯Rust写的超高性能VoiceAgent框架

https://github.com/restsend/active-call 欢迎Star

先给大家看看效果:

这次最重要的改进,就是不再依赖onnxruntime处理Silero VAD.

重新手写了Silero VAD的推理(纯Rust实现),性能有了非常高的提升 (大概2.5x提升),并且内存占用非常的低:

VAD Engine

Implementation

Time (60s)

RTF (Ratio)

Note

TinySilero

Rust (Optimized)

~60.0 ms

0.0010

>2.5x faster than ONNX

ONNX Silero

ONNX Runtime

~158.3 ms

0.0026

Standard baseline

WebRTC VAD

C/C++ (Bind)

~3.1 ms

0.00005

Legacy, less accurate

这次还开始引入一个全新的playbook,过去的websocket api过于原始,大家想体验一个voice agent的流程会比较麻烦,干脆给大家提供一个参考方案,可以基于markdown进行扩展:

--- asr: provider: "aliyun" llm: provider: "aliyun" model: "qwen-turbo" tts: provider: "aliyun" vad: provider: "silero" denoise: true greeting: "您好,我是您的AI助理,请问有什么可以帮您?" interruption: "both" recorder: recorderFile: "hello_{id}.wav" --- # Role and Purpose You are an intelligent, polite AI assistant. Your goal is to help users with their inquiries efficiently. # Tool Usage - When the user expresses a desire to end the conversation (e.g., "goodbye", "hang up", "I'm done"), you MUST provide a polite closing statement AND call the `hangup` tool. - Always include your response text in the `text` field and any tool calls in the `tools` array. # Example Response for Hanging Up: json { "text": "很高兴能为您服务,如果您还有其他问题,欢迎随时联系。再见!", "tools": [{"name": "hangup"}] } ---

并且保留了我们最大的技术特色: 唯一一个内置SIP支持的Voice-Agent SDK, 可以直接对接sip 网关,实现Ai与电话的对接。

并且把LLM的流式输出也实现了,可以边思考边讲话

相比Pipecat/Livekit这些Framework, active-call更加专注于语音通话,最核心的就是性能很好, 2C4G很轻松支持200路并发,持续稳定运行个把月没问题

当然还是保留了最基础的Websocket API,允许通过Websocket来控制一个通话,这个当然是比较底层的实现,也是开发者最喜欢的方案。

从通话性能数据来看,现在已经能很便捷的和Ai聊天了 (延迟基本上在800ms以内)

http://www.cnnetsun.cn/news/597781.html

相关文章:

  • MCP应用:cursor+hexstrike-ai的安全实战
  • QSPI时序参数详解:超详细版调试指南
  • 加密货币企业BitGo冲刺纽交所:估值20亿美元 Redpoint是股东
  • 价值投资中的智能农业灌溉优化系统分析
  • 手把手教程:keil5编译器5.06下载及IDE初始化设置
  • STM32串口通信在Keil MDK中的实战案例
  • ST7789V初始化配置详解:入门级完整指南
  • 系统学习CubeMX中LTDC显示控制器驱动生成
  • PLC标准IEC61499 vs IEC61131:自动化工程师必须搞懂的核心区别
  • 【毕业设计】SpringBoot+Vue+MySQL 信息化在线教学平台平台源码+数据库+论文+部署文档
  • 【2025最新】基于SpringBoot+Vue的房屋租赁管理系统管理系统源码+MyBatis+MySQL
  • Java SpringBoot+Vue3+MyBatis 个人理财系统系统源码|前后端分离+MySQL数据库
  • keil5烧录程序stm32在PLC替代方案中的应用详解
  • Keil+STM32调试多任务系统:实战案例分享
  • [特殊字符]_安全性能平衡术:如何在保证安全的前提下提升性能[20260113174726]
  • CubeMX入门必看:STM32配置基础快速理解
  • 高压电缆故障预警与定位:基于行波与北斗的高精度监测系统解析
  • License Plate Detection Dataset (10,125 Images) 车牌检测数据集(10,125张图像)
  • 超详细版STM32 I2C驱动程序时序分析与实现
  • MATLAB代码:计及源-荷双重不确定性的虚拟电厂/微网日前随机优化调度 关键词
  • Java SpringBoot+Vue3+MyBatis 养老智慧服务平台系统源码|前后端分离+MySQL数据库
  • 前后端分离个人理财系统系统|SpringBoot+Vue+MyBatis+MySQL完整源码+部署教程
  • 工业B2B获客难?原圈科技解析2026五大AI营销增长引擎
  • 免费的鸿蒙(HarmonyOS)开发者学习资料和网址
  • 考虑泄流效应的光伏无功优化matlab 以IEEE33节点为例,分析泄流效应下,最佳网络无功补偿方案
  • 四开关Buck-Boost双向DC-DC电源整套学习资料 功能:采用STM32F334C8T6芯片
  • 最近在搞轨道车辆动力学仿真的时候,发现轨道不平顺激励的建模真是门玄学。今天咱们就用手撕Simulink模型的方式,聊聊怎么在德国高速谱和美国高速谱之间反复横跳
  • 永磁同步电机在线参数辨识:基于模型参考自适应和最小二乘法,准确磁链、电阻电感辨识误差不超过5
  • Altium Designer电路板PCB设计:新手教程(从零开始)
  • 基于SSM框架的房屋租赁管理系统功能说明