Voice Chat Bridge

👤 zhangqinghua2015 📦 v2.3.5 ⭐ 4.3 ⬇️ 977 下载
🤖 AI-Agent 免费

📖 技能介绍


name: voice-chat description: 自动处理语音消息:将语音转写为文字,结合上下文生成智能回复,并合成语音回复。当收到语音或音频消息时自动激活。


Voice Chat Bridge

功能

自动处理语音消息,实现“语音 -> 文字 -> 智能回复 -> 语音”的完整闭环。

触发条件

当收到语音或音频消息时(message.typevoiceaudio),自动激活此技能。

处理流程

1. 检测语音

检查消息是否包含 media.type === 'voice'media.type === 'audio'

2. 转写 (STT)

立即运行转写脚本:

python3 /root/.agents/skills/voice-chat/scripts/transcribe_audio.py <audio_path>
  • 输入:音频文件路径(从 event.message.media.localPath 获取)。
  • 输出:转写文本。

3. LLM 分析

使用当前会话的上下文生成智能回复。 - Prompt: ```text 用户语音转写:{transcript}

请结合上下文,给出简洁、有帮助的回复。 ``` - 输出:回复文本。

4. 合成语音 (TTS)

立即运行 TTS 脚本:

想要更强大的技能插件,就来小葱技能站7w4.net看看吧。

python3 /root/.agents/skills/voice-chat/scripts/reply_with_tts.py "{reply_text}"
  • 输入:回复文本。
  • 输出:.opus 语音文件路径。

5. 发送回复

使用 message.send 工具发送生成的语音文件: - 文件:生成的 .opus 文件。 - Caption:可选的简短文字说明。 - 注意:不要发送中间状态文字(如“正在处理..."),直接发送最终语音回复。

技术细节

  • STT 引擎:Vosk (离线,中文小模型)。
  • TTS 引擎:Edge TTS (Microsoft Azure)。
  • 音频格式:OGG/Opus (48kHz, 单声道,64kbps)。
  • 临时文件目录/tmp/voice-chat/

依赖

  • 系统ffmpeg
  • Pythonvosk, edge-tts, pydantic, python-dotenv
  • 模型:Vosk 中文小模型 (vosk-model-small-cn-0.22)

许可证

MIT

🤖 AI 评测

这个 Skill 能把语音消息自动转成文字,再用 AI 生成回复并合成语音发回去,支持飞书和 Telegram。文档写得很详细,双引擎设计不容易出错。但首次使用要下载将近 1GB 的模型文件,配置步骤有点多,对新手不太友好。质量总体不错,就是前期的准备工作比较麻烦。

📊 多维度评分

适应性4.3
规范性4
有效性4.4
可靠性4.4
可信度4.8

📁 包含文件 (19 个)

📄 CHANGELOG.md 3.9 KB
📄 DESIGN.md 4.9 KB
📄 README.md 15.9 KB
📄 SKILL.md 1.9 KB
📄 _meta.json 129 B
📄 requirements.txt 309 B
📄 scripts/config.py 1.5 KB
📄 scripts/feishu_voice_handler.py 4.4 KB
📄 scripts/reply_with_tts.py 6.3 KB
📄 scripts/run_voice_chat.py 4.9 KB
📄 scripts/stt_engines.py 1003 B
📄 scripts/telegram_voice_handler.py 5.3 KB
📄 scripts/transcribe_audio.py 11.7 KB
📄 scripts/utils.py 1.4 KB
📄 tests/conftest.py 239 B
📄 tests/test_feishu_voice_handler.py 1.6 KB
📄 tests/test_reply_with_tts.py 944 B
📄 tests/test_telegram_voice_handler.py 2.2 KB
📄 tests/test_transcribe_audio.py 1.4 KB