函数调用返回的 arguments 少了必填字段 order_id,直接入库报 NOT NULL constraint failed。第一次遇到会往复杂处想,其实漏掉的多是个小前提。

python -c "import jsonschema;jsonschema.validate(args,schema)"

模型生成的参数没有 schema 强校验,缺字段时也照常返回。代码里默认信任模型输出直接落库。这一点先确认清楚,后面就不用反复试。

碰到「函数调用参数校验」这类问题,我习惯先把当前配置原样备份一份,改坏了立刻换回来,不用现场推。新版本先放一台机器上跑一天再全量,问题一般在这段时间暴露。

备份不是备了就行,恢复一次才算数,很多备份文件打开才发现是空的。接口问题先分清是没发出去、发出去了没收到,还是收到了处理失败。

偶发问题先统计频率,一小时几次和一天一次,查法完全不同。

具体做法是,给函数定义写 JSON Schema 并在服务端校验;失败时把错误回传给模型重生成一次;仍失败走兜底流程人工确认;入库前再做一次字段非空检查。

改完照着核一遍,缺字段的样本被拦下并触发重生成 入库不再报 NOT NULL。

作者 9823189