Skip to content

LangBot 语音插件,可利用多个TTS平台实现语音聊天

Notifications You must be signed in to change notification settings

the-lazy-me/NewChatVoice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

68 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NewChatVoice 语音聊天插件(v3)

一个强大的LangBot语音聊天插件,支持文本转语音(TTS)和语音识别(ASR)功能。

功能特点

  • 支持多种TTS和ASR模型
  • 用户个性化语音设置
  • 支持SILK格式输出(兼容QQ等平台)
  • 语音识别自动传入LLM处理
  • 支持QQ语音消息识别(通过napcat接口)
  • 高度模块化的设计,易于扩展
  • 简单易用的配置界面
  • 支持全局配置文件和临时文件目录管理

安装方法

配置完成 LangBot主程序后使用管理员账号向机器人发送命令即可安装:

!plugin get https://github.com/the-lazy-me/NewChatVoice.git

配置说明

插件首次运行时会在 data/plugins/NewChatVoice 目录下自动创建配置文件 config.yaml。这个配置文件是从插件目录下的 templates/config.yaml.example 模板复制而来。

配置文件内容如下:

# 全局配置文件

# 全局语音回复开关
voice_switch: true

# 全局语音识别开关
asr_switch: true

# 默认TTS模型
tts_model: qhai-tts:学姐

# 默认ASR模型
asr_model: qhai-asr-lite

# 最大文本长度
max_characters: 300

# 临时文件目录
temp_dir_path: data/plugins/NewChatVoice/temp

# napcat API端点
napcat_endpoint: http://127.0.0.1:3443

# 调试模式(启用详细日志和临时文件保存)
# 0: 关闭, 1: 开启
ncv_debug: 0

所有的配置信息都集中在这个文件中,您可以根据需要修改相关参数。

API配置

插件使用 启航AI 的API,需要在 data/config/provider.json 中配置:

{
  "requester": {
    "openai-chat-completions": {
      "base-url": "https://api.qhaigc.net/v1"
    }
  },
  "keys": {
    "openai": [
      "your-api-key-here"
    ]
  }
}

napcat配置

对于QQ平台语音识别,需要确保napcat正常运行并配置好一个HTTP Server服务器。默认端点为http://127.0.0.1:3443,您可以根据实际情况修改napcat_endpoint配置。

NapCat 设置 HTTP 服务器

模块化设计

插件采用高度模块化的设计,主要模块包括:

  • TTS服务:负责文本转语音功能
  • ASR服务:负责语音识别功能
  • 平台适配器:负责不同平台的适配,目前支持:
    • napcat平台(QQ)
    • 标准平台(通用平台,未经测试,大概率不能用🤪)
  • 语音管理器:整合TTS和ASR服务,提供统一接口
  • 配置管理器:负责配置文件管理

这种设计使得插件扩展更加灵活,只需实现新的平台适配器即可支持更多平台。

使用方法

文本转语音(TTS)功能

  1. 安装插件后,机器人会自动以语音形式回复文本消息
  2. 控制命令:
    • !ncv tts on - 开启语音回复功能
    • !ncv tts off - 关闭语音回复功能
    • !ncv list - 查看可用的语音角色列表
    • !ncv set <角色名称> - 设置自己偏好的语音角色
    • !ncv status - 查看当前语音功能的开启状态

语音识别(ASR)功能

  1. 默认情况下,当收到语音消息时,插件会自动识别并将结果转发给LLM处理
  2. 控制命令:
    • !ncv asr on - 开启语音识别功能
    • !ncv asr off - 关闭语音识别功能
    • !ncv status - 查看语音识别功能的开启状态

其他功能

  • !ncv help - 查看完整的帮助信息

注意事项

  1. 目前主要测试支持QQ平台(通过NapCat渠道)
  2. 语音识别功能支持LangBot支持的所有平台的语音消息

角色切换示例

NapCat 设置 HTTP 服务器

支持平台

  • QQ(通过napcat接口)
  • 可能的其他

About

LangBot 语音插件,可利用多个TTS平台实现语音聊天

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages