[Dify实战] Workflow 输出 JSON 总是不稳定?先把字段和格式约束写清楚 上面这张图是本文专门整理的 Dify Workflow 结构图。它用“报销审核”做演示,但真正要解决的不是报销这一个场景,而是很多 Dify 工作流都会遇到的共同问题:用户输入是一段自然语言,后面的节点却需要一份字段固定、类型稳定、能继续传递的 JSON。很多人第一次在 Dify Workflow 里做结构化输出时,会把希望都放在一个 LLM 节点上:提示词里写一句“请输出 JSON”,然后期待模型每次都返回同样的字段。刚开始看起来能跑,真正多测几条样例就会发现问题:有时 JSON 外面多了一段解释,有时字段名从expense_type变成category,有时金额一会儿是数字、一会儿是字符串,有时缺失字段直接不见了。人能看懂这些变化,工作流后面的条件分支、变量引用和接口调用却不一定能接住。所以这篇文章想讲清楚一件事:Dify 里要让 JSON 稳定,不是靠反复提醒模型“严格一点”,而是要把字段、格式、缺失值和校验节点提前设计好。下面用一个最小报销审核流程跑一遍,你可以把同样方法迁移到采购需求抽取、客户投诉分级、合同条款提取、销售线索评级等场景。先把问题说透: