Skip to content

Latest commit

 

History

History
93 lines (57 loc) · 2.21 KB

DEPENDENCIES.md

File metadata and controls

93 lines (57 loc) · 2.21 KB

依赖与环境说明

本项目包含 推理(核心库)、GUI(PyQt6)、CLI(服务器部署)、模型导出脚本 四类用途。为避免仓库膨胀,模型文件、ffmpeg/llama.cpp 二进制、运行输出与临时目录默认不纳入版本控制(见 .gitignore)。


Python

  • 建议:Python 3.10(Windows 已验证较多)

Python 依赖文件

  • requirements.txt
    • 推理 + GUI 运行依赖(桌面使用)
  • requirements-cli.txt
    • 推理 + CLI 运行依赖(不含 PyQt6,适合服务器)
  • requirements-export.txt
    • 模型导出 依赖(导出 ONNX / GGUF 时需要,依赖较重)

安装示例:

# 桌面 GUI
pip install -r requirements.txt

# 服务器 CLI(推荐)
pip install -r requirements-cli.txt

# 导出模型
pip install -r requirements-export.txt

系统依赖:ffmpeg

用于音频/视频抽取与转码(GUI/CLI 都会用到)。

  • Windows:下载 ffmpeg 并加入 PATH,或将 ffmpeg.exe 放在项目根目录
  • Linux:sudo apt install ffmpeg
  • macOS:brew install ffmpeg

也可以通过环境变量指定:

  • FFMPEG_BINARY=/path/to/ffmpeg

llama.cpp / ggml 二进制

本项目使用 llama.cpp 推理 GGUF Decoder。你需要自行下载对应平台的预编译包,并将其放到:

  • fun_asr_gguf/bin/

推荐从 llama.cpp Releases 下载(文件名会随版本变化,例如 llama-bXXXX-bin-win-vulkan-x64.zip)。


模型文件(本地路径)

项目默认按 ./model 推导以下文件(GUI/CLI 均支持手动指定):

  • Fun-ASR-Nano-Encoder-Adaptor.fp32.onnx
  • Fun-ASR-Nano-CTC.int8.onnx
  • Fun-ASR-Nano-Decoder.q8_0.gguf
  • tokens.txt

GPU(可选)

  • Decoder(llama.cpp)可通过 Vulkan 进行 GPU offload(Windows 常用)
  • 通过环境变量控制(GUI/CLI 都支持):
    • VK_ICD_FILENAMES
    • GGML_VK_VISIBLE_DEVICES
    • GGML_VK_DISABLE_F16

临时目录(运行产物)

为便于排查与避免污染项目根目录,运行过程产生的文件默认写入:

  • ./temp/YYYY-MM-DD/<任务前缀-时间>/...

包含但不限于:

  • 抽取/转码后的 wav
  • 分段切片
  • benchmark 采样 csv/json