mirror of
https://github.com/xinnan-tech/xiaozhi-esp32-server.git
synced 2026-07-27 01:23:55 +08:00
update: 更新文档
This commit is contained in:
@@ -1,9 +1,12 @@
|
|||||||
# IndexStreamTTS 使用指南
|
# IndexStreamTTS 使用指南
|
||||||
|
|
||||||
## 环境准备
|
## 环境准备
|
||||||
### 1. 克隆项目 (这里使用的为VLLM的版本)
|
### 1. 克隆项目 (注意这里使用的为VLLM1.0的Releases版本)
|
||||||
```bash
|
```bash
|
||||||
git clone https://github.com/Ksuriuri/index-tts-vllm.git
|
https://github.com/Ksuriuri/index-tts-vllm/releases/tag/IndexTTS-vLLM-1.0
|
||||||
|
```
|
||||||
|
进入解压后的目录
|
||||||
|
```bash
|
||||||
cd index-tts-vllm
|
cd index-tts-vllm
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -13,7 +16,7 @@ conda create -n index-tts-vllm python=3.12
|
|||||||
conda activate index-tts-vllm
|
conda activate index-tts-vllm
|
||||||
```
|
```
|
||||||
|
|
||||||
### 3. 安装PyTorch
|
### 3. 安装PyTorch 需要版本为2.8.0(最新版)
|
||||||
#### 查看显卡最高支持的版本和实际安装的版本
|
#### 查看显卡最高支持的版本和实际安装的版本
|
||||||
```bash
|
```bash
|
||||||
nvidia-smi
|
nvidia-smi
|
||||||
@@ -27,12 +30,11 @@ CUDA Version: 12.8
|
|||||||
```bash
|
```bash
|
||||||
Cuda compilation tools, release 12.8, V12.8.89
|
Cuda compilation tools, release 12.8, V12.8.89
|
||||||
```
|
```
|
||||||
#### 那么对应的安装命令 (请注意不要横跨大版本!!!)
|
#### 那么对应的安装命令(pytorch默认给的是12.8的驱动版本)
|
||||||
```bash
|
```bash
|
||||||
pip install torch==2.7.0 torchvision==0.22.0 torchaudio==2.7.0 --index-url https://download.pytorch.org/whl/cu128
|
pip install torch torchvision
|
||||||
```
|
```
|
||||||
优先建议安装 pytorch 2.7.0(对应 vllm 0.9.0),具体安装指令请参考:[pytorch 官网](https://pytorch.org/get-started/locally/]\)
|
需要 pytorch 版本 2.8.0(对应 vllm 0.10.2),具体安装指令请参考:[pytorch 官网](https://pytorch.org/get-started/locally/]\)
|
||||||
若显卡不支持,请安装 pytorch 2.5.1(对应 vllm 0.7.3),并将 requirements.txt 中 vllm==0.9.0 修改为 vllm==0.7.3
|
|
||||||
|
|
||||||
### 4. 安装依赖
|
### 4. 安装依赖
|
||||||
```bash
|
```bash
|
||||||
@@ -54,7 +56,7 @@ git lfs install
|
|||||||
```
|
```
|
||||||
创建模型目录,并拉取模型
|
创建模型目录,并拉取模型
|
||||||
```bash
|
```bash
|
||||||
mkkdir model_dir
|
mkdir model_dir
|
||||||
cd model_dir
|
cd model_dir
|
||||||
git clone https://www.modelscope.cn/IndexTeam/IndexTTS-1.5.git
|
git clone https://www.modelscope.cn/IndexTeam/IndexTTS-1.5.git
|
||||||
```
|
```
|
||||||
@@ -71,6 +73,9 @@ bash convert_hf_format.sh model_dir/IndexTTS-1.5
|
|||||||
|
|
||||||
### 6. 更改接口适配一下项目
|
### 6. 更改接口适配一下项目
|
||||||
接口返回数据与项目不适配需要调整一下,使其直接返回音频数据
|
接口返回数据与项目不适配需要调整一下,使其直接返回音频数据
|
||||||
|
```bash
|
||||||
|
vi api_server.py
|
||||||
|
```
|
||||||
```bash
|
```bash
|
||||||
@app.post("/tts", responses={
|
@app.post("/tts", responses={
|
||||||
200: {"content": {"application/octet-stream": {}}},
|
200: {"content": {"application/octet-stream": {}}},
|
||||||
@@ -104,7 +109,7 @@ async def tts_api(request: Request):
|
|||||||
vi start_api.sh
|
vi start_api.sh
|
||||||
```
|
```
|
||||||
### 将下面内容粘贴进去并按:输入wq保存
|
### 将下面内容粘贴进去并按:输入wq保存
|
||||||
#### 脚本中的/home/system/indexTTS/index-tts-vllm/model_dir/IndexTTS-1.5 请自行修改为实际路径
|
#### 脚本中的/home/system/index-tts-vllm/model_dir/IndexTTS-1.5 请自行修改为实际路径
|
||||||
```bash
|
```bash
|
||||||
# 激活conda环境
|
# 激活conda环境
|
||||||
conda activate index-tts-vllm
|
conda activate index-tts-vllm
|
||||||
@@ -129,17 +134,35 @@ else
|
|||||||
echo "已终止进程 $PID_VLLM"
|
echo "已终止进程 $PID_VLLM"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# 查找占用VLLM::EngineCore进程
|
||||||
|
GPU_PIDS=$(ps aux | grep -E "VLLM|EngineCore" | grep -v grep | awk '{print $2}')
|
||||||
|
|
||||||
|
# 检查是否找到进程号
|
||||||
|
if [ -z "$GPU_PIDS" ]; then
|
||||||
|
echo "没有找到VLLM相关进程"
|
||||||
|
else
|
||||||
|
echo "找到VLLM相关进程,进程号为: $GPU_PIDS"
|
||||||
|
# 先尝试普通kill,等待2秒
|
||||||
|
kill $GPU_PIDS
|
||||||
|
sleep 2
|
||||||
|
# 检查进程是否还在
|
||||||
|
if ps -p $GPU_PIDS > /dev/null; then
|
||||||
|
echo "进程仍在运行,强制终止..."
|
||||||
|
kill -9 $GPU_PIDS
|
||||||
|
fi
|
||||||
|
echo "已终止进程 $GPU_PIDS"
|
||||||
|
fi
|
||||||
|
|
||||||
# 创建tmp目录(如果不存在)
|
# 创建tmp目录(如果不存在)
|
||||||
mkdir -p tmp
|
mkdir -p tmp
|
||||||
|
|
||||||
# 后台运行api_server.py,日志重定向到tmp/server.log
|
# 后台运行api_server.py,日志重定向到tmp/server.log
|
||||||
export VLLM_USE_V1=0
|
nohup python api_server.py --model_dir /home/system/index-tts-vllm/model_dir/IndexTTS-1.5 --port 11996 > tmp/server.log 2>&1 &
|
||||||
nohup python api_server.py --model_dir /home/system/indexTTS/index-tts-vllm/model_dir/IndexTTS-1.5 --port 11996 > tmp/server.log 2>&1 &
|
|
||||||
echo "api_server.py 已在后台运行,日志请查看 tmp/server.log"
|
echo "api_server.py 已在后台运行,日志请查看 tmp/server.log"
|
||||||
```
|
```
|
||||||
给脚本执行权限并运行脚本
|
给脚本执行权限并运行脚本
|
||||||
```bash
|
```bash
|
||||||
chmod +x tmp
|
chmod +x start_api.sh
|
||||||
./start_api.sh
|
./start_api.sh
|
||||||
```
|
```
|
||||||
日志会在tmp/server.log中输出,可以通过以下命令查看日志情况
|
日志会在tmp/server.log中输出,可以通过以下命令查看日志情况
|
||||||
@@ -148,7 +171,7 @@ tail -f tmp/server.log
|
|||||||
```
|
```
|
||||||
## 音色配置
|
## 音色配置
|
||||||
index-tts-vllm支持通过配置文件注册自定义音色,支持单音色和混合音色配置。
|
index-tts-vllm支持通过配置文件注册自定义音色,支持单音色和混合音色配置。
|
||||||
在项目根目录下的assets/speaker.json文件中配置自定义音色
|
在项目根目录下的assets/speaker.json文件中配置自定义音色
|
||||||
### 配置格式说明
|
### 配置格式说明
|
||||||
```bash
|
```bash
|
||||||
{
|
{
|
||||||
@@ -161,5 +184,5 @@ index-tts-vllm支持通过配置文件注册自定义音色,支持单音色和
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
### 注意
|
### 注意 (需重启服务进行注册)
|
||||||
添加后需在智控台中添加相应的说话人(单模块则更换相应的voice)
|
添加后需在智控台中添加相应的说话人(单模块则更换相应的voice)
|
||||||
Reference in New Issue
Block a user