You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS Bedrock Agent格式输出不稳定,如何强制返回指定JSON?

AWS Bedrock Agent 严格返回指定JSON格式的解决方案
  • 强化系统提示的格式约束
    直接在系统提示开头明确强制要求:你必须直接返回符合以下JSON Schema的纯JSON内容,不得添加任何前置说明、解释性文字或后缀内容,随后用代码块包裹完整Schema定义,同时加入错误/正确输出示例强化认知:

    错误示例:"Here's the results in strict JSON format: {"key": "value"}"
    正确示例:"{"key": "value"}"

  • 锁定版本化提示模板
    通过Bedrock Agent的Prompt Management功能创建并绑定固定版本的系统提示模板,确保Agent始终使用经过验证的指令,避免动态调整导致的输出偏差。

  • 启用内置JSON输出解析器
    在Agent配置的「Output Configuration」中选择内置JSON输出解析器,上传或粘贴你的目标Schema。该解析器会强制模型输出匹配Schema格式的内容,不符合时会触发解析校验错误,迫使模型调整输出逻辑。

  • 优化模型生成参数

    • 将temperature参数设置为0.1-0.3的低数值,降低模型输出的随机性,提升指令遵循稳定性;
    • 根据预期JSON内容长度合理设置max_tokens,避免模型因输出空间冗余额外添加说明性文字。
  • Lambda代理中添加轻量级格式修正
    无需额外调用LLM,在现有Lambda处理逻辑中加入简单字符串处理:用正则表达式匹配并剔除常见前置文本(如Here's the results in strict JSON format:),提取纯JSON部分后再做格式校验。示例代码片段:

    import re
    import json
    
    def clean_agent_output(raw_output):
        # 匹配并移除前置说明文本
        cleaned = re.sub(r'^\s*Here\'s the results in strict JSON format:\s*', '', raw_output.strip())
        # 验证JSON有效性(可选)
        try:
            json.loads(cleaned)
            return cleaned
        except json.JSONDecodeError:
            # 处理无效情况,可返回默认结构或抛出错误
            return json.dumps({"error": "Invalid output format"})
    

内容的提问来源于stack exchange,提问作者Shivam Sahil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 05:25:53