报错是这么冒出来的。新功能把收货地址整段拼进 prompt 调境外模型,合规评审时被要求提供出境评估材料,代码里没有任何字段级限制,日志还同时落在境外区域。

中间走过弯路,把「模型端点选在境外区域」当成主因,改完现象没变。

这类报错背后常见的原因有几处,逐个排除就行。没有做字段分级,地址被当成普通文本。也可能是缺少统一的脱敏中间层。

少数情况下是日志与追踪数据也一并出境。

梳理实际出境的字段

python trace_payload.py --log api.log --fields receiver,address,phone --top 20

接着在拼 prompt 前做字段级脱敏

prompt = template.format(city=addr.city, district=addr.district)  # 不传门牌

再往下把模型端点切到境内区域

export OPENAI_BASE_URL=https://api.cn.example.com/v1

保留评估材料与调用留痕

python audit_export.py --month 2024-08 --out export_report.csv

恢复的判定其实很直接。出境的 prompt 里只剩省市级别字段,端点解析到境内区域,评估材料能按月份导出。

容易忽略的是,出境合规看的是实际发送的字节,不是接口文档写的区域,先在日志里看清到底传了什么再改。改动前把原配置备份一份,出问题能马上回滚,这比任何技巧都实用。

作者 9823189