前缀续写(Prefix Continuation)功能,本质上就是让模型从你指定的某个位置继续生成内容,而不是从头开始。Partial Mode(部分模式)专门用于实现这一目标——它基于给定的起始前缀,使模型输出与前文自然衔接。该功能在代码补全、文本续写或控制生成方向等场景中非常实用。

工作原理
使用 Partial Mode 时,关键在于对 messages 数组进行特殊配置:将最后一条消息的 role 设置为 assistant,并在 content 中填入你希望作为起始的前缀内容,同时为该消息添加 "partial": true 参数。模型一旦识别到这个标记,便会理解该内容为半成品,从而继续往下生成。以下是一个示例:
[
{
"role": "user",
"content": "Complete this Fibonacci function. Do not add anything else."
},
{
"role": "assistant",
"content": "def calculate_fibonacci(n):\n if n <= 1:\n return n\n else:\n",
"partial": true
}
]
模型接收到请求后,会从 else: 之后开始补全,直至生成完整的函数实现。请注意,不要在起始前缀前添加任何多余内容,否则模型可能会偏离预期方向。
支持的模型
并非所有模型都支持前缀续写功能,目前以下系列可以使用该特性:
- Qwen-Max 系列
- Qwen-Plus 系列(非思考模式)
- Qwen-Flash 系列(非思考模式)
- Qwen-Coder 系列
- Qwen-VL 系列 — qwen-vl-max 和 qwen-vl-plus 支持思考模式;qwen3-vl-plus 和 qwen3-vl-flash 仅支持非思考模式
- Qwen-Turbo 系列(非思考模式)
- Qwen 开源系列 — Qwen3.5 MoE/dense 模型支持思考模式;Qwen3.5-35B-A3B、Qwen3 和 Qwen3-VL 开源模型仅支持非思考模式
需要特别注意的是:思考模式不支持前缀续写。如果你使用的模型支持思考模式,请切换至非思考模式后再使用该功能;或者直接选择那些仅支持非思考模式的模型系列。简单来说,前缀续写要求模型“接着写”,而非“先想后写”——因此思考模式与它并不兼容。
