停止序列做什么
停止序列(stop / stop_sequences)是指定一个或多个字符串,生成到该串即停止。典型用途有两种:批量生成多条内容时按分隔符截断,防止模型串写下一段;配合固定标记(如 </answer>)让输出在约定位置收尾。停止串本身通常不会出现在返回文本里,解析时要按「已被截掉」的预期处理。
基本信息
| 常见用途 | 多条目批量生成防串写;截断固定格式的尾部 |
|---|---|
| 解析预期 | 停止串本身不出现在返回文本中 |
| 替代方案 | 结构化输出场景用 schema 约束替代停用标记 |
| 平台差异 | 各平台对停止串数量与长度限制不同 |
典型使用场景
- 批量生成目录项:每条以分隔线结尾,生成到分隔线即停
- XML 风格输出:答案闭合标签作为停止串,闭合即结束
- 抽取任务:只取结果段,遇到「说明」小节前停止
- 对话式输出:避免模型自行追加追问或下一轮角色台词
- 流式输出:客户端按停止串切分,逐条处理返回内容
用法示例
用法示例
stop = ["\n###"] # 生成到分隔线即停,避免续写下一节
stop = ["</answer>"] # 配合 XML 风格输出,答案闭合即停
stop = ["\n<<<"] # 批量生成多条时的条目分隔
# 停止串要选不易自然出现的字符串,单换行容易过早截断
# 解析侧按「停止串已被截掉」处理,不要期望在文本里找到它
# 批量任务约定条目分隔符,并在提示里同步说明该分隔符停止串选择对照
| 停止串 | 适用 | 风险 |
|---|---|---|
| \n### | Markdown 分节批量生成 | 正文中自然出现三级标题时会提前截断 |
| </answer> | 固定标签结构的输出 | 需在提示中要求闭合该标签 |
| \n<<< | 多条目批量生成 | 属生僻串,较安全 |
| 单个换行 | 不推荐 | 几乎必然过早结束,输出被截成半句 |
停止串过短(如单个换行)会导致输出过早结束,应选在正常内容里不易自然出现的字符串。
不同平台对停止串的数量与长度限制不同,复用他人配置前先查官方约束,避免参数被静默忽略。