ChatTTS 中文文档 下载 App

params_refine_text——用 RefineTextParams 控制韵律偏好

为什么有这个参数

ChatTTS 内部有一个"文本精炼"模块,它会在生成音频之前对输入文本做一轮处理:补充停顿、插入语气词、调整口语化程度。

params_refine_text 就是这个精炼模块的配置入口。不设置的话,模型用默认行为(中等口语化、自动停顿)。

基本用法

params_refine_text = ChatTTS.Chat.RefineTextParams(
    prompt='[oral_5][laugh_0][break_4]',
)
wavs = chat.infer(text, params_refine_text=params_refine_text)

prompt 字符串里可以包含多个标签,按任意顺序排列即可——模型会理解成"整体风格是 oral_5、不刻意笑、遇到该停的地方停 4 级"。

prompt 里能写什么

prompt 字符串里可以出现的标签就是 控制标签体系 那 5 类:

prompt 里不要写多个同一类型的标签(例如 [oral_3][oral_7]),模型会以后出现的为准或取平均。

效果调优建议

目标prompt 示例
自然聊天语气[oral_5][laugh_0][break_4]
偏正式播报[oral_1][laugh_0][break_2]
轻松有趣[oral_7][laugh_1][break_5]
严肃庄重[oral_0][laugh_0][break_3]

与内联标签的关系

prompt 设定的是整体风格,内联标签设定的是局部精确位置。两者可以共存,但需要注意:

默认值

不传 params_refine_text 时,模型使用默认配置,大致相当于:

prompt='[oral_4][laugh_0][break_3]'