SillyTavern示例对话怎么写,说到底就是三件事:用 {{char}}: 与 {{user}}: 的前缀行分清说话人,用星号动作句给出身体语言,用二到三轮的短对白把称呼和句长钉住。它不是小剧场,而是贴在上下文里的一组语气样本,每加一段都要占预算。写之前先想清楚这一段要校准哪一个变量,写完之后把其余变量都留着不动——这比堆十段漂亮对白有用得多。
SillyTavern示例对话字段:位置、作用与边界
示例对话字段在角色卡里通常叫 example messages,编辑入口藏在高级定义那一栏,和描述、性格、场景并列。它跟世界书的运作方式完全不同:世界书要关键词命中才会插入,而它是常驻的,只要这一轮的窗口里还留着它,模型就会照着念。所以这是一块贵的字段,写多少就吃掉多少上下文。
它负责的活儿只有三件:定称呼、定句长、定动作与对白的配比。不归它的也清楚——剧情从哪儿起头由开场白负责;某座城、某段旧事由世界书负责;“绝对不能做什么”由提示词或边界字段负责。把后面这几样塞进来,模型会把它们当成语气模仿,而不是当成规则执行。
多段之间一般用 <START> 或自定的分隔行隔开,本地客户端里这种写法最常见。分隔符本身长什么样不重要,重要的是每段第一行都重新报一次说话人,别让模型靠上下文去猜。
分段原则:一段只校准一件事
最容易翻车的方式,是一段里同时想教温柔、毒舌、古文腔、短句、爱用拟声词。模型学到的不是这五个特征,而是它们的平均值,最后得到一个看不出性格的中间态。
稳妥做法是给每段派一个变量,一段只干一件事:
| 段落 | 校准变量 | 观察点 |
|---|---|---|
| 第一段 | 称呼与基本语气 | 角色怎么叫玩家 |
| 第二段 | 句长与断句 | 回答是长句还是短句 |
| 第三段 | 情绪波动时的变化 | 生气、紧张时句子怎么变 |
| 第四段 | 被拒绝或越界时的应答 | 怎么把话题拉回来 |
每段两到三轮就够。四段加起来五百到九百字,是一张卡比较舒服的量;超过这个数,很多细节在长会话里会被稀释,反不如把关键设定写进角色卡本体。
想直接试一试?
进合欢主站选一个角色,把上面的内容用起来。可免费试用,进阶能力按平台规则计费。
前缀行、动作句与收尾留白怎么写
前缀行写法上,统一用 {{char}} 与 {{user}} 两个变量占位,别把角色名写死。写死名字有两个代价:改名之后整段失效;玩家换个称呼时模型容易跟着错。变量写法在导入到别的平台时也更稳。
动作句统一一种包裹方式。要么全用星号,要么全用圆括号,别混着来,混用会让输出的格式跟着抖。动作要具体、能拍出来:把杯子推到桌角 比 心里有点难过 有用得多,后者属于心理描写,模型学去以后容易变成大段内心戏。
对白保持口语,别堆书面成语。收尾尤其关键,最后一句最好以动作或半句话结束,把话筒递过去。如果你替玩家把决定做了,下一轮模型多半会继续替你说话。
再看一组对照:
| 部位 | 推荐写法 | 反例 |
|---|---|---|
| 开场行 | {{char}}: |
林绯: |
| 动作 | 用指节敲了两下桌面 | 内心五味杂陈 |
| 对白 | 短句,带口语停顿 | 成语连用,一句三十字 |
| 收尾 | 她没再说话,等着 | 玩家点点头,转身离开 |
可复制的示例对话模板块
下面这个骨架可以直接抄,方括号里的部分按自己的角色替换。四段各改一个变量,其余照旧,这就是单变量段落的写法。
写完检查一遍:四段里玩家的台词加起来是不是比角色还长?如果是,先砍玩家的句子。玩家台词压在十五字以内,且不带动作,模型才学不会抢话。
排序、体积与三个常见反例
段落顺序有讲究。靠前的段落牵引更强,把最不能崩的那一段放第一,通常就是称呼和基本语气。如果角色后期会变脸,把变脸后的语气单独放一段,别和开场语气混在一起。
第一个反例:把它写成小剧场,一段七八轮,剧情全演完。模型会把剧情当成已经发生过的事,开局就复述。改法是砍到两轮,只留语气,剧情搬去开场白。
第二个反例:玩家的台词写得比角色还漂亮。模型很快开始替玩家写对白,甚至替玩家做决定。改法是给玩家句子设上限,并删掉所有属于玩家的动作。
第三个反例:用形容词代替行为。整段都在提示“她很温柔”,却没有一处具体动作。模型学到的是标签,输出时只会反复念那个词。改法是把形容词换成能拍出来的动作。
还得提一句边界:如果这段里包含角色面对情绪崩溃场景的应答,记得在角色卡其他位置写清楚——AI 没有真实情感,能保持称呼、语气和剧情连贯,但不承诺替代现实关系或心理咨询;遇到严重情绪困扰时,建议告诉身边的人或寻求专业帮助。
在合欢AI创作页落地的操作步骤
- 先定一个变量,比如“角色永远叫我先生,句子不超过二十字”,其余一律不管。
- 按上面的模板写第一段:玩家两句、角色两轮,玩家每句十五字以内,动作句统一用星号。
- 复制第一段成第二段,只把句子砍短一半,别动称呼和动作风格。
- 另起两段,分别写“情绪波动时”和“被拒绝时”的应答,每段仍旧两轮。
- 把四段一起放进角色的长文本字段,或直接导入 SillyTavern 角色卡 JSON;导入后到创作页核对一遍段落有没有断开,导入文件不含 CG 图。
- 试聊五轮,只观察称呼有没有漂、句子有没有变长;崩了就删掉最不像的那一句,而不是再加十句。
本地客户端改起来快、字段看得全,代价是换设备要自己搬文件;网页版登录同一账号就能接着聊,代价是部分本地扩展类能力用不了。两边各有取舍。想长期保存记录就注册登录,可免费试用,进阶能力按平台规则计费,以产品内显示为准。
常见问题
SillyTavern示例对话怎么写才能不挤占上下文?
少而准。两到四段、每段两轮,把最不能崩的变量放最前,其余交给世界书和开场白。一段只教一个变量,比五段混着教更省预算,也更不容易在长会话里被稀释。写完先看总字数,超过千字就该动手砍。
示例对话和开场白会打架吗?
会。如果开场白里已经把称呼和语气演完了,这段又立一套,模型就在两个样本之间摇摆。分工是:开场白定第一幕的场面与钩子,示例部分定长期稳定的称呼与句长。两处称呼必须一致,不一致时以更靠前的那处为准去改另一处。
一定要用 {{char}} 这种变量吗?
建议用。写死角色名会在改名后失效,也让导入到别的平台时更难对齐。动作句统一用星号或圆括号,别混用,否则输出格式容易抖。角色有多个昵称时,在人设里写明谁在什么场合用哪一个,这里只演示最常用的那个。
玩家台词写多长合适?
十五字以内,且不带动作。这一段里的玩家台词是正例,写长了模型会照着学,开始替玩家输出长篇对白甚至替玩家做决定。如果发现模型抢话,先回来检查这里,问题通常出在此处,而不是出在预设上。