Skip to content

Latest commit

 

History

History
172 lines (131 loc) · 3.79 KB

File metadata and controls

172 lines (131 loc) · 3.79 KB

FunSpeech 启动方式说明

本文档介绍如何通过环境变量启动 FunSpeech 服务,特别是 CPU 版本。

🚀 启动方式

方式 1: 使用环境变量(推荐,最简单)

启动 CPU 版本:

# 一行命令启动 CPU 版本
TTS_GPUS=cpu ASR_GPUS=cpu python start.py

# 或者导出环境变量后启动
export TTS_GPUS=cpu
export ASR_GPUS=cpu
python start.py

启动 GPU 版本:

# 使用 GPU 0
TTS_GPUS=0 ASR_GPUS=0 python start.py

# 使用多个 GPU
TTS_GPUS=0,1 ASR_GPUS=0,1 python start.py

开发调试模式:

# CPU + 调试模式
DEBUG=true TTS_GPUS=cpu ASR_GPUS=cpu python start.py

# GPU + 调试模式
DEBUG=true TTS_GPUS=0 ASR_GPUS=0 python start.py

方式 2: 使用启动脚本

CPU 版本:

./start_cpu.sh

自定义配置:

# 设置 Worker 数量
WORKERS=2 ./start_cpu.sh

# 设置端口和调试模式
PORT=9000 DEBUG=true ./start_cpu.sh

📋 环境变量说明

GPU 配置

环境变量 说明 示例
TTS_GPUS TTS GPU 配置 cpu, 0, 0,1
ASR_GPUS ASR GPU 配置 cpu, 0, 0,1

服务器配置

环境变量 说明 默认值 示例
HOST 服务绑定地址 0.0.0.0 127.0.0.1
PORT 服务端口 8000 9000
DEBUG 调试模式 false true

并发配置

环境变量 说明 默认值 示例
WORKERS Worker 进程数 1 2
INFERENCE_THREAD_POOL_SIZE 推理线程池大小 auto 4

日志配置

环境变量 说明 默认值 可选值
LOG_LEVEL 日志级别 INFO DEBUG, INFO, WARNING, ERROR

模型配置

环境变量 说明 默认值 可选值
ASR_MODEL_MODE ASR 模型加载模式 all realtime, offline, all
TTS_MODEL_MODE TTS 模型加载模式 all all, cosyvoice1, cosyvoice2

💡 常用场景示例

场景 1: 快速测试 CPU 版本

DEBUG=true TTS_GPUS=cpu ASR_GPUS=cpu python start.py

场景 2: 生产环境 CPU 部署

WORKERS=4 \
INFERENCE_THREAD_POOL_SIZE=2 \
LOG_LEVEL=INFO \
TTS_GPUS=cpu \
ASR_GPUS=cpu \
python start.py

场景 3: 开发环境(CPU + 调试)

DEBUG=true \
LOG_LEVEL=DEBUG \
PORT=8000 \
TTS_GPUS=cpu \
ASR_GPUS=cpu \
python start.py

场景 4: 混合模式(ASR CPU,TTS GPU)

ASR_GPUS=cpu \
TTS_GPUS=0 \
WORKERS=2 \
python start.py

场景 5: 使用配置文件

# 创建 .env 文件
cat > .env << EOF
TTS_GPUS=cpu
ASR_GPUS=cpu
DEBUG=true
WORKERS=2
LOG_LEVEL=INFO
EOF

# 加载环境变量并启动
export $(cat .env | xargs)
python start.py

📝 注意事项

  1. CPU 模式性能较慢:CPU 模式推理速度比 GPU 慢 5-10 倍,适合:

    • 开发测试
    • 无 GPU 环境
    • 低并发场景
  2. Worker 配置:

    • CPU 模式:建议 WORKERS=CPU核心数/2
    • GPU 模式:建议 WORKERS=显存GB/8
  3. 调试模式:

    • DEBUG=true 时启用 API 文档(访问 /docs)
    • DEBUG=true 时启用代码热重载(仅单 Worker 模式)
  4. 端口冲突:

    • main.py 会自动查找可用端口
    • 或使用 PORT=9000 指定端口

🆚 启动脚本对比

脚本 用途 推荐场景
start.py 标准启动脚本,支持所有环境变量 通用,推荐使用
start_cpu.sh CPU 版本快速启动脚本 快速测试 CPU 版本
main.py 主程序入口,自动端口选择 开发调试

更多信息请参考 部署文档 和 生产环境指南