Firefly-Neko / readme.md
Shiina-Mahiru's picture
Upload readme.md with huggingface_hub
6a26d5e verified
|
raw
history blame
2.7 kB

Qwen-Firefly-Neko

注意

该仓库仅存储了部分代码文件,GPT-SoVITS的核心文件以及所有大于100M的文件均被删除(包括模型文件和一些代码文件等等),肯定无法直接运行,可通过链接直接从网盘下载一键包。

*链接暂未提供,因为文件夹太大了:(

项目简介

Qwen-Firefly-Neko 是一个集成了live2d模型、语音转文字(STT)和大语言模型(LLM)处理的项目。该项目使用 PyTorch 和 Transformers 库,通过并行处理实现实时语音转文字和文本生成。正如名字所见,本项目构建了一个流萤猫酱的形象。

功能

  • 实时语音转文字(STT)(使用FunASR
  • 文本生成和修正(LLM)(使用Qwen2.5-7B-Instruct模型)
  • 并行处理 STT 和 LLM 任务
  • 自动播放生成的语音文件(使用GPT-SoVITS
  • 具有live2d模型(使用是b站依七哒大佬的流萤前瞻小人模型)

依赖

请确保安装以下依赖项:(可使用pip install -r requirements.txt下载)

  • PyTorch
  • Transformers
  • FunASR
  • PyAudio
  • NumPy
  • jieba_fast
  • g2p_en
  • wordsegment
  • live2d-py

其中一些模块的下载需要依赖Microsoft Visual Studio,可下载vs然后选择“C/C++桌面开发”安装完后再用pip下载这些模块就不会build wheels error了。

使用方法

建议从网盘链接下载一键包。

*链接暂未提供,因为文件夹太大了:(

代码说明

初始化

在 QwenFireflyNeko 类的 __init__ 方法中,初始化了音频流、模型和相关配置。

语音转文字(STT)

stt 方法负责从音频中提取文本,并在检测到停顿时调用 correct 方法进行文本修正。(correct方法未实装,因为这样太慢了)

文本生成和修正(LLM)

process_llm 方法负责处理 LLM 的生成任务。

live2d模型渲染

live2d_main方法负责live2d模型的渲染和对口型。

并行处理

main 方法中,使用 concurrent.futures.ThreadPoolExecutor 来并行执行live2d_mainsttprocess_llm。每次从 stt 获取到新的 prompt 后,都会提交一个新的任务给线程池来处理 LLM 的生成任务。

注意事项

  • 请确保在运行脚本前,所有依赖项和模型文件已正确安装和配置。
  • 如果在运行过程中遇到任何问题,请检查依赖项版本和模型文件路径是否正确。

贡献

欢迎提交issues和pull requests来改进本项目。