Files
ai-safety-platform/docs/adr/ADR-009-provider-configuration.md
T
baozaotumao2025 14722be770 first commit
2026-07-18 21:00:26 +08:00

1.3 KiB

ADR-009:模型连接配置持久化

状态

已接受

决策

  • 使用独立的 provider_configs 表保存唯一的 targetjudge 连接配置,提供认证后的 REST CRUD;model_profiles 继续保存历史能力档案。
  • 管理员可创建、更新、删除;已登录用户可读取配置及调用模型相关接口。
  • API Key 可写入但绝不回显,只返回 api_key_configured;日志不记录密钥、认证头或请求体。
  • 运行时优先读取数据库;某角色没有记录时回退同名 .env 配置,便于平滑升级与紧急删除错误覆盖。
  • targetjudge 是稳定的自然 provider_id。CRUD、连接检查和模型发现统一挂在 /providers/{provider_id} 下,不暴露内部数据库行 ID。
  • GET /providers 返回两条当前生效配置,并以 source=database|env 标明来源;两种来源都不回显 API Key。
  • check、模型发现和后台测试运行全部复用 ProviderFactory;能力探测由后台运行调用,避免配置只对管理接口生效。

边界

SQLite 中的 API Key 与原 .env 一样属于部署密钥,依赖主机文件权限和备份访问控制。当前不增加密钥管理服务或自定义加密层;接入集中式 KMS 后再替换存储方式。