Willow推理服务器:优化的本地语音和语言处理解决方案

RayRay
Willow Inference ServerASRTTSCUDAWebRTCGithub开源项目

willow-inference-server

什么是Willow推理服务器?

Willow推理服务器(WIS)是一个专注且高度优化的语言推理服务器实现。它的目标是"自动"实现高性能、低成本的自托管,以支持最先进的语音和语言处理任务。WIS主要具有以下特点:

  1. 支持多种任务:自动语音识别(ASR)、文本到语音转换(TTS)和大型语言模型(LLM)。

  2. 优化的性能:针对CUDA进行优化,支持从入门级GPU(如Tesla P4、GTX 1060)到高端GPU(如RTX 4090)。也可以仅使用CPU运行。

  3. 内存优化:在6GB显存内同时加载三个默认Whisper模型(base、medium、large-v2)并支持TTS。LLM支持默认为int4量化。

  4. 多种传输方式:支持REST、WebRTC和WebSocket。

  5. 灵活配置:用户可以根据应用需求动态选择和配置Whisper模型和参数。

Willow Inference Server Architecture

主要功能

自动语音识别(ASR)

WIS对Whisper模型进行了高度优化,以实现高质量、近实时的语音识别。它支持多种输入方式,包括Willow设备、WebRTC、文件上传等。对于大多数预期的语音任务,处理时间可以控制在数百毫秒以内。

文本到语音转换(TTS)

WIS提供TTS功能,主要用于助手任务(如Willow!)和视障用户。它还支持自定义TTS语音,只需较小的音频录音即可创建和管理自定义语音。

大型语言模型(LLM)

WIS可以选择性地将输入通过配置的LLM进行处理,用于问答、聊天机器人和助手任务。目前支持LLaMA衍生模型,特别推荐使用Vicuna(13B版本)。内置支持量化到int4以节省GPU内存。

WebRTC支持

WIS对WebRTC进行了大量优化,支持从浏览器或WebRTC应用程序实时流式传输音频,以优化质量和响应时间。它还针对长时间运行的会话进行了优化,使用WebRTC音轨管理技术,可以将会话保持开放数天,同时实现数百毫秒内的自托管ASR转录,并节省网络带宽和CPU资源。

硬件要求和性能

WIS主要针对CUDA进行优化,因为便宜GPU(如Tesla P4和GTX 1060)的性能、成本和功耗优势太好了,不容忽视。目前支持的最低硬件配置为GTX 1060 3GB(ASR和TTS需要6GB)。

以下是一些性能基准测试结果:

设备模型Beam大小语音时长(ms)推理时间(ms)实时倍数
RTX 4090large-v25384014027x
GTX 1060large-v25384011143x
GTX 1070medium138404249x
GTX 1070base138407054x

可以看到,实时倍数随着语音片段的延长而显著增加。使用WebRTC或Willow时,浏览器/Willow和支持的应用程序中的端到端延迟是上述数字加上网络延迟响应时间。

Willow Inference Server Performance

部署和配置

安装依赖

对于CUDA支持,您需要为支持的硬件安装NVIDIA驱动程序。推荐使用Nvidia驱动程序版本530。

# 克隆仓库: git clone https://github.com/toverainc/willow-inference-server.git && cd willow-inference-server # 确保安装了nvidia-container-toolkit而不是nvidia-docker # 在Arch Linux上: yay -S libnvidia-container-tools libnvidia-container nvidia-container-toolkit docker-buildx # Ubuntu: ./deps/ubuntu.sh

安装、配置和启动WIS

# 安装 ./utils.sh install # 生成自签名TLS证书(或在nginx/key.pem和nginx/cert.pem放置"真实"证书) ./utils.sh gen-cert [your hostname] # 启动WIS ./utils.sh run

配置

系统运行时可以通过在WIS根目录放置一个.env文件来覆盖utils.sh设置的任何变量进行配置。您还可以通过复制settings.pycustom_settings.py来更改更多WIS特定参数。

使用场景和应用

  1. 家庭助手集成:将WebRTC与Home Assistant仪表板集成,支持直接从桌面或移动设备的HA仪表板流式传输音频。

  2. 桌面/移动转录应用:开发独立的语音转文本应用程序。

  3. 桌面/移动助手应用:将Willow集成到各种设备和平台中。

  4. 自定义语音助手:利用WIS的ASR、TTS和LLM功能,构建个性化的语音交互系统。

  5. 实时字幕生成:为视频会议、直播等场景提供实时语音转文字服务。

  6. 多语言支持:随着Meta发布支持1000多种语言的MMS模型,WIS未来可以扩展到更多语言的语音识别和合成。

未来展望

  1. 更好的TTS:正在寻求社区反馈,以选择更优秀的TTS实现和语音。

  2. TTS缓存:支持TTS输出的磁盘缓存,以实现闪电般快速的TTS响应时间。

  3. 支持更多语言:随着Meta发布MMS,WIS计划支持更多语言的语音转文本和文本转语音。

  4. 代码重构和模块化:在1.0版本发布之前,WIS将进行代码重构、模块化和文档改进。

  5. 功能链接(应用程序):可能支持用户定义模块,将多个支持的任务链接在一个请求中,例如:

    • 语音输入 -> LLM处理 -> 语音输出
    • 语音输入 -> 调用任意API -> 语音输出

总的来说,Willow推理服务器为开发者和用户提供了一个强大、灵活且高效的语音和语言处理平台。通过其优化的性能、多样的功能和开放的架构,WIS为构建下一代智能语音应用开辟了新的可能性。无论是家庭自动化、辅助技术,还是企业级语音服务,WIS都为创新提供了坚实的基础。

编辑推荐精选

博思AIPPT

博思AIPPT

AI一键生成PPT,就用博思AIPPT!

博思AIPPT,新一代的AI生成PPT平台,支持智能生成PPT、AI美化PPT、文本&链接生成PPT、导入Word/PDF/Markdown文档生成PPT等,内置海量精美PPT模板,涵盖商务、教育、科技等不同风格,同时针对每个页面提供多种版式,一键自适应切换,完美适配各种办公场景。

AI办公办公工具AI工具博思AIPPTAI生成PPT智能排版海量精品模板AI创作热门
潮际好麦

潮际好麦

AI赋能电商视觉革命,一站式智能商拍平台

潮际好麦深耕服装行业,是国内AI试衣效果最好的软件。使用先进AIGC能力为电商卖家批量提供优质的、低成本的商拍图。合作品牌有Shein、Lazada、安踏、百丽等65个国内外头部品牌,以及国内10万+淘宝、天猫、京东等主流平台的品牌商家,为卖家节省将近85%的出图成本,提升约3倍出图效率,让品牌能够快速上架。

iTerms

iTerms

企业专属的AI法律顾问

iTerms是法大大集团旗下法律子品牌,基于最先进的大语言模型(LLM)、专业的法律知识库和强大的智能体架构,帮助企业扫清合规障碍,筑牢风控防线,成为您企业专属的AI法律顾问。

SimilarWeb流量提升

SimilarWeb流量提升

稳定高效的流量提升解决方案,助力品牌曝光

稳定高效的流量提升解决方案,助力品牌曝光

Sora2视频免费生成

Sora2视频免费生成

最新版Sora2模型免费使用,一键生成无水印视频

最新版Sora2模型免费使用,一键生成无水印视频

Transly

Transly

实时语音翻译/同声传译工具

Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通用,扫除语言障碍,让全世界的语言交流不再有国界。

讯飞绘文

讯飞绘文

选题、配图、成文,一站式创作,让内容运营更高效

讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。

热门AI辅助写作AI工具讯飞绘文内容运营AI创作个性化文章多平台分发AI助手
TRAE编程

TRAE编程

AI辅助编程,代码自动修复

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
商汤小浣熊

商汤小浣熊

最强AI数据分析助手

小浣熊家族Raccoon,您的AI智能助手,致力于通过先进的人工智能技术,为用户提供高效、便捷的智能服务。无论是日常咨询还是专业问题解答,小浣熊都能以快速、准确的响应满足您的需求,让您的生活更加智能便捷。

imini AI

imini AI

像人一样思考的AI智能体

imini 是一款超级AI智能体,能根据人类指令,自主思考、自主完成、并且交付结果的AI智能体。

下拉加载更多