💬

聊天模板(Chat Template)

Chat Template
使用技巧
开源模型对话格式HuggingFace

是什么:聊天模型在训练时看到的输入不是一段裸文本,而是有固定格式的多轮对话——系统提示、用户消息、助手回复之间由特殊 token 分隔,不同模型家族的这套格式各不相同。聊天模板(chat template)就是把「消息列表」自动渲染成该模型所需格式字符串的规则。HuggingFace Transformers 里,每个模型的 tokenizer 自带一个模板,把 [{"role": "user", "content": "..."}] 这样的消息列表转成最终喂给模型的文本。

为什么重要

① 格式必须对齐训练分布——模型学的是「在这种分隔符之间接话」,如果手工拼文本时分隔符不对(比如漏掉 <|im_start|> 这类标记或顺序错了),模型等于在被要求回答一个它从没见过的场景,质量会显著下降;② 同一份本地模型权重,用模板聊天和不用模板聊天,表现可能天差地别;③ 做推理框架、微调或合并模型时,确认模板是基本功课。

适用边界

聊天模板主要针对开源/本地模型——调用闭源 API 时厂商服务端已替你处理格式,用户无感。另注意:模板只定义「对话长什么样」,不定义内容;多模态模型的模板会更复杂(内嵌图像占位符等)。HuggingFace Transformers 的实现基于模板语法渲染,可在官方文档中查看各模型的模板写法。

🔗 探索更多 AI 工具板块

除了本板块,AI工具宝箱还有这些独家内容板块,帮你从不同角度发现好工具。

☆ 0