Output Constraint: LLM 输出约束

Output Constraint(输出约束) Output Constraint 是通过提示词、格式规范或模型能力,对 LLM 的输出内容、结构、长度、风格等进行约束,使输出结果可预期、可解析、可被下游系统直接消费的一类技术。 在 AI Agent 场景中,输出约束尤为重要——Agent 的输出往往需要被代码解析、传递给下一个工具,或渲染到 UI,任何格式偏差都可能导致流程中断。 约束维度 维度 说明 示例 格式约束 要求输出为特定结构 JSON、XML、Markdown 表格、YAML 内容约束 限定输出范围或值域 只能从给定选项中选择、不得包含某类内容 长度约束 限制输出的字数或条数 “不超过 100 字”、“恰好输出 3 条建议” 风格约束 限定语气、人称、语言 正式/口语、中文/英文、第一人称 Schema 约束 强制输出符合 JSON Schema 字段类型、必填项、枚举值 方式一:提示词约束(Prompt-based) 最简单直接的方式,在 System Prompt 或 User Prompt 中明确描述输出格式: system_prompt = """ 你是一个情感分析助手。 输出要求: - 只输出 JSON,不要有任何额外文字 - 格式如下: { "sentiment": "positive" | "negative" | "neutral", "confidence": 0.0 ~ 1.0, "reason": "简短理由(不超过 20 字)" } """ response = llm.call(system_prompt, user_input="这个产品真的太好用了!") # 输出:{"sentiment": "positive", "confidence": 0.95, "reason": "用户使用了强烈的赞美语气"} 优点:通用,任何模型都支持 缺点:无法 100% 保证格式,模型偶尔会"越界" ...

Created 26266-04-26 · Updated 23236-07-23 · 2 min · 316 words · -