[index-tts]降低 transformers 版本,以消除警告信息

2025-10-30 914 views
3

每次启动时,可以看到控制台输出了4条警告信息: FutureWarning: torch.utils._pytree._register_pytree_node is deprecated. Please use torch.utils._pytree.register_pytree_node instead. FutureWarning: torch.utils._pytree._register_pytree_node is deprecated. Please use torch.utils._pytree.register_pytree_node instead. FutureWarning: torch.utils._pytree._register_pytree_node is deprecated. Please use torch.utils._pytree.register_pytree_node instead. FutureWarning: torch.utils._pytree._register_pytree_node is deprecated. Please use torch.utils._pytree.register_pytree_node instead.

备注:还不能随意降低 transformers 版本,否则加载的 gpt 模型权重可能对不上。 或者在 webui.py 开头添加两句,以消除 FutureWarning 警告。

import warnings
warnings.filterwarnings("ignore", category=FutureWarning)
warnings.filterwarnings("ignore", category=UserWarning)

另外,如果是 fp16 推理,还需要安装 deepspeed,需要在 requirements.txt 里补充上。

pip install deepspeed

但发现这个 deepspeed 会报: test.c LINK : fatal error LNK1181: 无法打开输入文件“aio.lib” test.c LINK : fatal error LNK1181: 无法打开输入文件“cufile.lib”

回答

9

实测无论是升级 transformers 到最新版本,还是降低 transformers 版本,Index-TTS 都无法正常使用~ 必需要用 transformers==4.36.2 这个固定版本吗?

比如:升级到最新的 transformers == 4.51.2,提示 indextts\utils\typical_sampling.py 中的 LogitsWarper 已弃用。 修改成 LogitsProcessor 后,虽然代码没有问题,但推理会报错。

# from transformers import LogitsWarper
from transformers import LogitsProcessor

# class TypicalLogitsWarper(LogitsWarper):
class TypicalLogitsWarper(LogitsProcessor):
3

@juntaosun 可以试试我这个分支 : https://github.com/yrom/index-tts/tree/update-transformer

git remote add yrom https://github.com/yrom/index-tts.git
git fetch yrom update-transformer
git checkout update-transformer
pip install -e ".[webui]"

亲测在 macbook 上,升级之后, RTF 相对main分支有下降。但可能有别的未知问题

改动主要是attention_mask 需要先传:https://github.com/index-tts/index-tts/compare/main...yrom:index-tts:update-transformer