二、减少不必要的输出内容
中文exp-2797未验证
在多数文本生成场景中,模型输出长度会显著影响整体响应时间。输出越长,模型需要生成的 Token 越多,用户等待完整结果的时间也越长。因此,减少不必要的输出,是最直接、最稳定的延迟优化方式之一。
可以从以下几个方面优化:
1. 控制输出长度
在多数生成场景中,输出内容越长,模型需要生成的 Token 越多,整体响应时间也会随之增加。因此,控制输出长度是降低延迟最直接的方法之一。
开发者可以从两个层面进行控制:一是在 Prompt 中明确回答长度和结构 ,二是在 接口参数中设置合理的最大输出长度 。前者用于引导模型生成更短、更聚焦的内容,后者用于避免模型输出超出业务预期。
例如,在智能客服、知识库问答、摘要生成等场景中,可以在 Prompt 中加入明确约束:
- 请用 3 条要点回答,每条不超过 30 字。 - 请直接给出结论,不需要解释推理过程。 - 请输出简洁版本,控制在 200 字以内。
相比“请详细回答”、“请完整说明”这类开放式指令,明确长度和结构的 Prompt 更容易让模型生成短而聚焦的结果。
对于输出形式比较固定的任务,还可以进一步限制模型只返回必要内容。例如:
请只输出 true 或 false。
同时,在确定业务场景不需要长文本时,可以设置合理的最大输出 Token 数,避免模型继续生成不必要的内容。例如,分类、判断、标签抽取等任务通常只需要很短的输出;长文本摘要、报告生成等任务则可以根据实际展示空间和业务需要设置更高的上限。
需要注意的是,最大输出长度并不是越大越好。如果设置过大,模型可能生成超出预期的内容;如果设置过小,则可能导致回答被截断。实际使用中,建议根据任务类型、前端展示位置和用户需求设置合适范围。
2. 避免重复生成固定模板
对于固定开头、固定结尾、标准说明、免责声明等内容,建议由业务系统拼接,而不是每次都让模型重新生成。
例如,客服场景中可以将固定话术放在前端或后端模板中,只让模型生成真正需要动态回答的部分。这样既能减少输出 Token,也能让内容风格更加稳定。
3. 精简结构化输出字段
在一些业务场景中,模型的输出并不是直接展示给用户,而是供后端程序继续处理。
以智能客服场景为例。智能客服需要先判断用户意图,再决定是否进入退款流程、是否检索知识库、是否转人工。这类场景通常会要求模型输出 JSON,方便系统解析和执行后续动作。
此时,JSON 字段应尽量保持 简洁、稳定和必要 。字段过多、字段名过长,都会增加模型生成内容,也会提高后续解析和维护成本。
例如,用户输入:
我想查一下退款什么时候到账。
模型可以只输出业务系统真正需要的字段:
{ "intent": "refund_status", "need_search": true, "query": "退款到账时间查询" }
其中, intent 用于识别用户意图, need_search 用于判断是否需要检索知识库或订单信息, query 用于生成后续检索关键词。相比让模型输出一大段解释,这种结构化结果更短、更稳定,也更适合程序直接读取。
如果字段只供系统内部使用,应避免加入不必要的说明性内容。例如,不建议让模型输出:
{ "user_intent_description": "用户想要查询退款什么时候可以到账", "whether_knowledge_base_search_is_required": true, "rewritten_search_query_for_retrieval": "退款到账时间查询" }
这类字段虽然更容易被人理解,但对程序解析并没有额外帮助,反而会增加输出长度。实际使用中,应根据业务需要保留必要字段即可。
复制后粘贴到 AI 对话框发送,本次对话全程生效
出处:智谱 GLM 官方提示词教程 · docs.bigmodel.cn/cn/best-practice/latency-optimization · 可信度 S · 标签:中文 / 提示词工程 / 长上下文 / 框架 / 检索增强 怎么用(对话型)复制后粘贴到对话框发送,本次对话全程生效。想长期用:支持自定义指令的产品(设置→个性化)可设为默认。