跳到主要内容

第 1.3.4 节:用上下文预算、密钥管理和常见坑控制调用风险

上下文预算、密钥管理和常见坑只有拆成可执行步骤,才容易复核、排错和交接。完成本节后,你应该能够按顺序说明上下文预算、密钥管理和常见坑的触发、处理、复核、记录和兜底步骤。

常见坑​

把模型当数据库​

模型不能保证知道你的企业资料,也不能保证记住你刚上传的文件。私有资料要通过 RAG(检索增强生成)、工具或数据库进入上下文。

把所有历史对话都塞进去​

多轮对话需要历史,但不需要无限保留。应该保留任务相关状态,过长历史要摘要或裁剪。

在日志里打印 API Key(接口密钥)​

调试时很容易把请求头、环境变量或错误上下文打印出来。日志系统必须避免泄露密钥。

没有重试和超时​

模型 API(应用程序接口)是外部服务。要考虑超时、限流、网络失败和供应商异常。

过早绑定单一供应商​

项目早期可以用一个供应商快速验证,但代码结构要允许后续替换。

失败场景与兜底​

失败场景表现兜底方式验收标准
模型超时用户长时间无响应设置超时、重试一次,并提示稍后再试或转人工日志记录超时和重试结果。
供应商限流大量请求失败降低并发、进入排队、切换备用供应商或 Mock(模拟)提示系统不崩溃,用户看到明确状态。
上下文过长请求失败或成本过高裁剪历史、摘要工具结果、减少检索片段单次调用 Token(文本计量单位)在预算内。
输出格式无效后端无法解析模型结果重新请求、降级为人工处理或返回安全提示无效输出不会进入业务动作。
密钥泄露风险日志或文档出现真实 Key(密钥)日志脱敏、密钥轮换、权限收紧检查文档和日志不包含真实密钥。
模型编造政策回答没有企业资料依据强制引用 RAG 片段,缺资料时拒答答案能追溯到资料来源。

工程检查清单​

  • API Key(接口密钥)是否只通过环境变量读取?
  • 是否有 .env.example?
  • 是否支持 Mock(模拟)模式?
  • 是否记录模型调用耗时和错误?
  • 是否控制输入和输出 Token(文本计量单位)?
  • 是否区分模型选择和业务逻辑?
  • 是否有供应商切换预留?
  • 是否说明模型能力和合规边界?

继续学习​