--- description: 卡若AI API 接口排队与故障切换稳定性规则 alwaysApply: true --- # 卡若AI API 稳定性规则 ## 目标 - 所有 AI 请求优先走可用接口,单接口超时/报错时自动切换下一接口。 - 全部接口都失败时,必须触发邮件告警并返回可读降级回复。 ## 接口排队规则(按顺序) - 使用 `OPENAI_API_BASES` 配置接口队列(逗号分隔)。 - 对应密钥用 `OPENAI_API_KEYS`(可选);若缺省则回退 `OPENAI_API_KEY`。 - 对应模型用 `OPENAI_MODELS`(可选);若缺省则回退 `OPENAI_MODEL`。 ## 故障切换规则 - 单接口失败条件:超时、网络错误、HTTP 非 200、响应体不可解析。 - 每次请求必须按队列顺序逐个尝试,直到成功或队列耗尽。 - 队列耗尽后:发送告警邮件到 `ALERT_EMAIL_TO`(默认 `zhiqun@qq.com`),并返回降级回复,不得直接空响应。 ## 告警规则 - SMTP 默认:`SMTP_HOST=smtp.qq.com`、`SMTP_PORT=465`。 - 必填:`SMTP_USER`、`SMTP_PASS`、`ALERT_EMAIL_TO`(可不填则默认收件箱)。 - 为防刷屏,告警需带冷却时间(默认 300 秒)。 ## 安全规则 - 不在代码与规则里写死明文密钥。 - 仅记录必要错误摘要,不在日志输出完整 token。