> ## Documentation Index
> Fetch the complete documentation index at: https://dripart-matt-router-pricing-pika-and-guard.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Fish Audio 提示词指南：在 ComfyUI 中撰写 Fish Audio TTS 提示词

> 为 ComfyUI 中的 Fish Audio 合作伙伴节点撰写提示词：情绪标签、语气标记、音频效果、停顿、音素控制和多说话人对话。

Fish Audio TTS 通过直接写在文本里的内联标签，让你精确控制语音的听感。本指南涵盖模型理解的全部标签类别、放置位置以及组合方式。下面的标签适用于 `s2.1-pro` 和 `s1`。Drama 3 则改用自然语言描述与成对词语标签，详见 [Fish Audio Drama 3](/zh/tutorials/partner-nodes/fishaudio/drama-3) 页面。

下面的示例可以直接在 Fish Audio Text to Speech 节点中使用。把它们直接输入 `text` 字段，替换成你自己的台词即可。节点设置、工作流模板与价格见 [Fish Audio：文本转语音、声音克隆与语音转文本](/zh/tutorials/partner-nodes/fishaudio/fish-audio)。

## 标签的工作方式

Fish Audio S2 模型可以理解写在方括号里的自然语言提示：

```text theme={null}
[happy] What a beautiful day!
[sad] I'm sorry to hear that.
[excited] This is amazing news!
```

这套系统有三个特点：

* **位置即语义。** 标签从出现的位置生效，直到下一个标签或句尾。`[whispering] I didn't want to go inside` 会让整句耳语，而 `I didn't want to go [whispering] inside` 只从 "inside" 开始耳语。
* **自由描述也能用。** 你不限于固定标签词表。能向配音演员描述的东西，都可以写进方括号：`[tired, end of a long shift]`、`[voice rough from crying, trying to sound normal]`、`[professional broadcast tone]`。
* **标签可以用你的语言写。** 用和台词相同的语言写提示：`[低声说] 不要让他们听见`、`[ため息をついて] もう一度やり直そう`。

旧版 `s1` 模型使用相同的情绪名称，但用圆括号包裹且仅支持固定词表：`(happy) What a beautiful day!` 当前 `s2.1-pro` 模型接受方括号提示和自由描述。

## 情绪标签

### 基础情绪

| 标签 | 表达效果 | 常见场景 |
| - | - | - |
| `[happy]` | 开心、明快 | 好消息、问候 |
| `[sad]` | 忧郁、低落 | 同情、坏消息 |
| `[angry]` | 恼怒、有攻击性 | 抱怨、警告 |
| `[excited]` | 精力充沛、热情 | 公告、庆祝 |
| `[calm]` | 平和、放松 | 指导、冥想 |
| `[nervous]` | 焦虑、不安 | 免责声明、道歉 |
| `[confident]` | 自信、笃定 | 演讲、销售 |
| `[surprised]` | 震惊、惊奇 | 反应、发现 |
| `[satisfied]` | 满意、愉悦 | 确认、评价 |
| `[delighted]` | 非常高兴、欢喜 | 庆祝、赞美 |
| `[scared]` | 惊恐、害怕 | 警告、恐怖故事 |
| `[worried]` | 担心、忧虑 | 疑虑、提问 |
| `[upset]` | 不安、苦恼 | 抱怨、问题 |
| `[frustrated]` | 烦躁、恼火 | 技术故障、延误 |
| `[depressed]` | 悲伤、绝望 | 严肃话题 |
| `[empathetic]` | 理解、关怀 | 支持、疏导 |
| `[embarrassed]` | 羞愧、尴尬 | 道歉、失误 |
| `[disgusted]` | 反感、厌恶 | 差评 |
| `[moved]` | 感动 | 走心时刻 |
| `[proud]` | 自豪、满足 | 成就、表扬 |
| `[relaxed]` | 放松、随意 | 日常聊天 |
| `[grateful]` | 感激、感恩 | 致谢 |
| `[curious]` | 好奇、感兴趣 | 提问、探索 |
| `[sarcastic]` | 讽刺、嘲弄 | 幽默、批评 |

### 进阶情绪

| 标签 | 表达效果 | 常见场景 |
| - | - | - |
| `[disdainful]` | 蔑视、轻蔑 | 批评、拒绝 |
| `[unhappy]` | 不满、不悦 | 抱怨、反馈 |
| `[anxious]` | 非常担忧、不安 | 紧急事务 |
| `[hysterical]` | 情绪失控 | 极端反应 |
| `[indifferent]` | 冷漠、中立 | 中性回复 |
| `[uncertain]` | 迟疑、不确定 | 猜测、提问 |
| `[doubtful]` | 怀疑、质问 | 不信、追问 |
| `[confused]` | 困惑、不解 | 请求澄清 |
| `[disappointed]` | 失望、失落 | 期望落空 |
| `[regretful]` | 后悔、懊悔 | 道歉、失误 |
| `[guilty]` | 内疚、有责任 | 忏悔、道歉 |
| `[ashamed]` | 深感羞愧 | 严重错误 |
| `[jealous]` | 嫉妒、怨恨 | 比较 |
| `[envious]` | 羡慕、眼红 | 带渴望的欣赏 |
| `[hopeful]` | 对未来乐观 | 未来计划 |
| `[optimistic]` | 积极乐观 | 鼓励 |
| `[pessimistic]` | 消极悲观 | 警告、疑虑 |
| `[nostalgic]` | 怀念过去 | 回忆、故事 |
| `[lonely]` | 孤独、寂寞 | 情感内容 |
| `[bored]` | 无聊、厌倦 | 兴致缺缺 |
| `[contemptuous]` | 鄙视 | 强烈批评 |
| `[sympathetic]` | 表示同情 | 慰问 |
| `[compassionate]` | 深切关怀 | 支持、帮助 |
| `[determined]` | 坚决、下定决心 | 目标、承诺 |
| `[resigned]` | 认命、接受 | 放弃、接受现实 |

## 语气标记

语气标记控制音量、强度和重音。把 `[emphasis]` 放在要强调的词或短语前面：

```text theme={null}
This is [emphasis] really important.
```

| 标签 | 表达效果 | 使用场景 |
| - | - | - |
| `[in a hurry tone]` | 匆忙、急迫 | 时效性信息 |
| `[shouting]` | 大声、呼喊 | 引起注意 |
| `[screaming]` | 非常大声、惊慌 | 紧急情况、恐惧 |
| `[whispering]` | 很轻、隐秘 | 秘密、安静场景 |
| `[soft tone]` | 温柔、轻声 | 安抚、摇篮曲 |
| `[emphasis]` | 重读某个词或短语 | 强调关键词 |

## 音频效果

音频效果标签添加自然的人类声音。有建议文本的标签，请在其后补上对应的文本：

| 标签 | 描述 | 标签后建议文本 |
| - | - | - |
| `[laughing]` | 大笑 | Ha, ha, ha |
| `[chuckling]` | 轻笑 | Heh, heh |
| `[sobbing]` | 痛哭 | 可选文本 |
| `[crying loudly]` | 放声大哭 | 可选文本 |
| `[sighing]` | 如释重负或沮丧的叹息 | sigh |
| `[groaning]` | 沮丧的呻吟 | ugh |
| `[panting]` | 气喘吁吁 | huff, puff |
| `[gasping]` | 倒吸一口气 | gasp |
| `[yawning]` | 疲惫的哈欠 | yawn |
| `[snoring]` | 睡觉打鼾 | zzz |
| `[clear throat]` | 清嗓子 | ahem |

## 停顿与特殊效果

| 标签 | 描述 |
| - | - |
| `[break]` | 短暂停顿 |
| `[long-break]` | 长时间停顿 |
| `[short pause]` | 短促的间隔 |
| `[long pause]` | 长时间的沉默 |
| `[audience laughing]` | 观众笑声 |
| `[background laughter]` | 环境笑声 |
| `[crowd laughing]` | 人群大笑 |

普通停顿词不需要任何标签也能塑造节奏："um"、"uh"、"嗯"、"啊"。

## 标签组合

**生理反应标签配情绪标签。** `[panting]`、`[whispering]` 这类生理标签单独使用也能生效，但配上情绪标签效果更稳定、更自然：

```text theme={null}
[panting] [tired] I've been running for twenty minutes.
[whispering] [scared] Don't move. Don't make a sound.
[shouting] [angry] I told you this would happen!
```

**叠加情绪表达复杂状态。** 每句的组合不要超过三个标签：

```text theme={null}
[sad][whispering] I miss you so much.
[angry][shouting] Get out of here now!
[excited][laughing] We won! Ha ha!
```

**用情绪转换**写出跨句的情感递进：

```text theme={null}
[happy] I got the promotion!
[uncertain] But... it means relocating.
[sad] I'll miss everyone here.
[hopeful] Though it's a great opportunity.
[determined] I'm going to make it work!
```

**添加背景效果**营造氛围：

```text theme={null}
The comedy show was amazing [audience laughing]
```

**用强度修饰词**调节情绪强弱：

```text theme={null}
[slightly sad] I'm a bit disappointed.
[very excited] This is absolutely amazing!
[extremely angry] This is unacceptable!
```

## 最佳实践

**推荐：**

* 每句话只用一个主情绪
* 情绪与语境逻辑匹配
* 音效标签后补上文本，例如 `[laughing]` 后面写 "Ha ha"
* 拉开情绪变化的间隔，更真实
* 在同一个音色上测试不同组合

**避免：**

* 在短文本里滥用标签
* 一句话里混用冲突情绪
* 方括号里的描述写得过长、打断阅读
* 描述性标签后面不跟台词
* 把句级情绪提示放在离它控制的句子很远的地方

如果输出听起来不自然，可以拉开情绪变化间隔、降低强度，或换一个音色：同一个标签在不同音色上的效果不同。

## 多说话人对话

连接两个或更多音色到 Fish Audio Text to Speech 节点，然后在文本中用 `@Voice1`、`@Voice2` 等标记说话人切换。每个已连接的音色都必须在文本中至少出现一次，否则节点会报错。音色连接方式见 [Fish Audio：文本转语音、声音克隆与语音转文本](/zh/tutorials/partner-nodes/fishaudio/fish-audio#连接音色)。

```text theme={null}
@Voice1 [nervous] You're sure no one followed you?
@Voice2 [calm] Relax. I took the long way, exactly like you asked.
@Voice1 [sighing][relieved] Good. Then let's see what's inside.
@Voice2 [curious] You don't even know what it is?
```

## 音素控制

音素标签可以为名字、多音字、缩写和技术术语指定精确发音。把替换发音包在 `<|phoneme_start|>` 和 `<|phoneme_end|>` 标签里。音素标签不会被文本规范化改写，所以保持 `normalize` 开启即可。

**英文**（CMU Arpabet，替换单个单词）：

```text theme={null}
I am an <|phoneme_start|>EH1 N JH AH0 N IH1 R<|phoneme_end|>.
```

**中文**（带声调拼音，替换单个字或音节，适合多音字和人名地名）：

```text theme={null}
我是一个<|phoneme_start|>gong1<|phoneme_end|><|phoneme_start|>cheng2<|phoneme_end|><|phoneme_start|>shi1<|phoneme_end|>。
```

**日文**（OpenJTalk 风格 romaji 加音高重音数字）：

```text theme={null}
<|phoneme_start|>ha0shi1ga0<|phoneme_end|>見えます。
```

音素控制可以和其他标签在同一文本中组合使用：

```text theme={null}
I am, um, an [break] <|phoneme_start|>EH1 N JH AH0 N IH1 R<|phoneme_end|>.
```

## 参数调节

默认值已经调得很好，只在需要时调整：

| 参数 | 默认值 | 作用 |
| - | - | - |
| `temperature` | 0.7 | 表现力。越高越多变，越低越稳定 |
| `top_p` | 0.7 | 核采样多样性 |
| `speed` | 1.0 | 语速，0.5 到 2.0 |
| `volume` | 0.0 | 音量调节（分贝），-10 到 10 |
| `normalize` | true | 展开数字和日期以便自然朗读。除非规范化改写了你想逐字朗读的内容，否则保持开启 |

`seed` 只控制节点是否重跑；无论 seed 值是多少，结果都是非确定性的。

## 声音克隆质量

对 Fish Audio Instant Voice Clone 节点来说，参考录音的质量决定克隆效果。录音时长限制见 [Fish Audio：文本转语音、声音克隆与语音转文本](/zh/tutorials/partner-nodes/fishaudio/fish-audio#音色克隆限制)：

* 录 2 到 3 段、每段 15 到 20 秒的音频，总共不超过 270 秒
* 只有一个说话人，音量平稳，语气和情绪一致
* 句间留小停顿，约半秒
* 安静的房间，麦克风离嘴约一个手掌宽
* 手机录音或耳麦都可以；避免背景音乐、电视声和回声

如果克隆出来的声音很机械，录更多的素材（总共 30 到 60 秒），自然地讲话并留出停顿。

只克隆你有权使用的声音：你自己的声音，或获得明确授权的人的声音。

## 参考资料

* [Fish Audio 情绪控制文档](https://docs.fish.audio/developer-guide/core-features/emotions)
* [Fish Audio 细粒度控制文档](https://docs.fish.audio/developer-guide/core-features/fine-grained-control)
* [Fish Audio 声音克隆最佳实践](https://docs.fish.audio/developer-guide/best-practices/voice-cloning)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.