IboChat
基于 Flask 的多语言 AI 语音聊天应用,角色可文字回复与语音合成,支持 24 种以上语言及自定义角色创建,采用三级语音管线降级设计
时间轴 (近 90 天)
IboChat 是一个基于 Flask 的应用,每个角色既能文字回复也能语音说话,支持 24 种以上语言,用户可在几分钟内创建自定义角色。
IboChat 的技术栈包括 Flask 单文件应用、GLM glm-4.5-air 通过 Z.ai API、本地运行的 faster-whisper、SQLite + Werkzeug 哈希账户管理、Docker 部署在 Cloudflare 之后。
IboChat 的 /speak 端点按顺序尝试三条语音路径:GPT-SoVITS(克隆音色最佳,耗时约 5–18 秒,仅支持英中日韩,加载后永久占用约 3.9GB 显存)、OmniVoice Studio(支持任意语言,耗时约 30–40 秒,通过 OpenAI 兼容端点调用)、Edge TTS(微软免费神经语音,无克隆能力,支持 24 种语言、零延迟、永不失败)。
IboChat 在 4GB 显存的单 GPU 上运行,GPT-SoVITS 和 OmniVoice 共享同一块 GPU,作者通过按需启动 GPT-SoVITS、看门狗线程在空闲 120 秒后杀死进程、每次调用 OmniVoice 前清空其显存来解决资源争抢导致的音频损坏问题。
IboChat 的语音模型加载需要约 30–50 秒,服务器会先探测模型是否就绪,未就绪则直接降级到下一级语音方案,而非让用户等待。
IboChat 对 AI 端点的速率限制使用指数退避重试策略。
IboChat 从 YouTube 克隆语音的流程已自动化:yt-dlp 抓取片段、ffmpeg 裁剪、OmniVoice 生成声纹、按角色缓存。
IboChat 的端点名称仍为 /api/gemini,因为早期版本使用 Google Gemini,现在代理到 Z.ai,更改名称会破坏前端。
移动端浏览器在用户触碰页面前拒绝自动播放音频,因此 IboChat 的第一条回复要等首次点击后才播放。
IboChat 目前将角色明确标注为 AI 戏仿,作者计划加入跨会话长期记忆和更好的对话中途语言切换。
全部知识事实 (10)
IboChat 是一个基于 Flask 的应用,每个角色既能文字回复也能语音说话,支持 24 种以上语言,用户可在几分钟内创建自定义角色。
50%待验证IboChat 的技术栈包括 Flask 单文件应用、GLM glm-4.5-air 通过 Z.ai API、本地运行的 faster-whisper、SQLite + Werkzeug 哈希账户管理、Docker 部署在 Cloudflare 之后。
50%待验证IboChat 的 /speak 端点按顺序尝试三条语音路径:GPT-SoVITS(克隆音色最佳,耗时约 5–18 秒,仅支持英中日韩,加载后永久占用约 3.9GB 显存)、OmniVoice Studio(支持任意语言,耗时约 30–40 秒,通过 OpenAI 兼容端点调用)、Edge TTS(微软免费神经语音,无克隆能力,支持 24 种语言、零延迟、永不失败)。
50%待验证IboChat 在 4GB 显存的单 GPU 上运行,GPT-SoVITS 和 OmniVoice 共享同一块 GPU,作者通过按需启动 GPT-SoVITS、看门狗线程在空闲 120 秒后杀死进程、每次调用 OmniVoice 前清空其显存来解决资源争抢导致的音频损坏问题。
50%待验证IboChat 的语音模型加载需要约 30–50 秒,服务器会先探测模型是否就绪,未就绪则直接降级到下一级语音方案,而非让用户等待。
50%待验证IboChat 对 AI 端点的速率限制使用指数退避重试策略。
50%待验证IboChat 从 YouTube 克隆语音的流程已自动化:yt-dlp 抓取片段、ffmpeg 裁剪、OmniVoice 生成声纹、按角色缓存。
50%待验证IboChat 的端点名称仍为 /api/gemini,因为早期版本使用 Google Gemini,现在代理到 Z.ai,更改名称会破坏前端。
50%待验证移动端浏览器在用户触碰页面前拒绝自动播放音频,因此 IboChat 的第一条回复要等首次点击后才播放。
50%待验证IboChat 目前将角色明确标注为 AI 戏仿,作者计划加入跨会话长期记忆和更好的对话中途语言切换。
50%