ai 语音对话,bailing
2026-03-26
深度学习
00

目录

当前各模块:本地 / 云端
你能否“都改为本地执行”
建议的本地化配置方向(最实用)

https://github.com/wwbin2017/bailing

看代码好像不支持WebRTC,但 readme 说支持?

image.png

可以,先给你一个清晰结论:核心语音链路基本可以改成全本地,但“所有功能”想 100% 本地要做一些取舍。

当前各模块:本地 / 云端

  • ASR(语音识别)
    • 当前:FunASR + models/SenseVoiceSmall
    • 类型:本地
  • VAD(语音活动检测)
    • 当前:SileroVAD
    • 类型:本地(首次可能下载权重,之后本地)
  • LLM(主对话)
    • 当前:OpenAILLM 指向 OpenRouter
    • 类型:云端
    • 可改本地:可以,改成 OllamaLLM
  • Memory(记忆总结)
    • 当前:也是 OpenRouter
    • 类型:云端
    • 可改本地:可以,前提是代码支持把 Memory 也走本地模型(当前 memory.py 用的是 OpenAI 兼容调用)
  • TTS(语音合成)
    • EdgeTTS云端
    • GTTS云端
    • CHATTTS本地
    • KOKOROTTS本地(可能首次拉取 HuggingFace 模型)
    • MacTTS本地(仅 macOS)
  • RAG
    • 代码里 rag.py 基本是注释状态,未在主链路启用
    • config 里的 Rag.model_name/url/api_key 是云端配置,但当前主流程里影响不大
  • 插件工具(天气/网页搜索等)
    • 多数依赖外部 API/网络
    • 类型:云端或联网功能

你能否“都改为本地执行”

可以实现“主对话链路全本地”(ASR + VAD + LLM + TTS 全本地)。
但如果你要求“项目全部功能都离线”,要注意:

  • web_search、天气等工具天然依赖网络,无法离线等价替代
  • 若保留这些插件,就不是完全离线系统

建议的本地化配置方向(最实用)

config/config.yaml 里改这几项:

  • selected_module.LLM: OllamaLLM
  • LLM.OllamaLLM.model_name: <你的本地模型名>(如 qwen2.5:7b
  • LLM.OllamaLLM.url: http://localhost:11434/api/chat
  • selected_module.TTS: KOKOROTTS(或 CHATTTS
  • 保持 ASR: FunASRVAD: SileroVAD

另外:

  • TaskManager.aigc_manus_enabled: false(你现在已经是 false)
  • 不用会联网的工具插件时,禁掉相关函数加载(可进一步精简)

如果你要,我可以下一步直接给你一份**“最小全本地 config 样例”**(可直接粘贴替换)。另外提醒一下:你现在配置里出现了明文 OpenRouter key,建议尽快在 OpenRouter 后台旋转/废弃这个 key。

如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:Dong

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC。本作品采用《知识共享署名-非商业性使用 4.0 国际许可协议》进行许可。您可以在非商业用途下自由转载和修改,但必须注明出处并提供原作者链接。 许可协议。转载请注明出处!