feat(litellm): enable OAuth models and AI Studio aliases

This commit is contained in:
Codex
2026-10-08 21:53:19 -07:00
parent 6473297555
commit 9af7b98f17
2 changed files with 16 additions and 10 deletions
+11 -8
View File
@@ -5,9 +5,10 @@
2026-10-09:已通过 Arcane 上线,LiteLLM 1.104.2 与 PostgreSQL 均 healthy。
UI HTTP 200;应用 virtual key 的 OpenRouter MiMo 请求返回 OK。
ZenMux Sonnet 5.5 原生 Messages 正常;重复请求证实写入与读取
21,502 prompt-cache tokens。Codex/xAI OAuth 模块检查通过,但尚未独立授权。
PAYG key 的 Claude 请求被上游拒绝;该线路未通过验收,普通客户端 key 不允许使用。
Google AI Studio key 尚未取得;latest 自动维护尚未实现。
21,502 prompt-cache tokens。Codex/xAI 已独立授权,SDK 原生请求验证
Luna、Sol 6.1 和 Grok 4.7 返回 OK。用户更新后的 PAYG key 原生 Claude 请求 HTTP 200。
Google AI Studio key 模型目录 HTTP 200,使用上游提供的三个 latest 别名。
本项目对其他模型的自动 latest 维护尚未实现。
- Environment:`ff859844-8393-4f87-8caf-054df735a65d`。
- Project:`06052b47-f640-4e23-968d-bfc25a8a6e7a`,名称 `tools-litellm`。
@@ -55,7 +56,7 @@ Claude 客户端优先使用原生 `/v1/messages`,保留 `cache_control`、
开放模型优先经 OpenRouter;首版 `models.yaml` 来自实际 provider 目录。
`latest` 目前只是手动维护的稳定别名,没有自动追踪新版本。
Google AI Studio 预留独立 key 与模型表;取得有效 key 后查询目录再添加,
Google AI Studio 使用独立 key 与模型表,已实际查询模型目录,
不把 Google OAuth/ADC 当成 AI Studio API key。
## 密钥
@@ -66,8 +67,8 @@ ZenMux subscription/PAYG 的 key 需要明确确认用途,不能按外观推
`LITELLM_MASTER_KEY` 以 `sk-` 开头,salt 独立随机生成。
UI 使用数据库管理员 `kai@litellm.local`(只是登录标识,不发送邮件),
设置 `disable_env_credential_login: true`,禁用 UI_PASSWORD 以及 master key 的网页登录。
临时密码保存在 .145 的 `.secrets/tools-litellm-ui-login.env`(0600);
首次登录必须修改,修改后该文件的临时密码不再有效。数据库保存密码哈希。
用户已修改首次临时密码,临时文件已删除。数据库保存密码哈希,
用户的新密码不写入环境变量,也不由 Agent 保存。
master key 仍能管理 API,用于恢复权限,不再充当网页登录密码。
不能直接用这份配置初始化空库后期待默认 admin 登录:必须预先通过
`/user/new` 建立管理员,再 `/user/update` 设置临时密码,随后启用限制。
@@ -102,9 +103,11 @@ bash oauth-login.sh xai
登录 helper 使用 host network 仅供本地 OAuth 回调,生产代理仍使用独立 bridge。
确认账号实际支持的模型 ID 后,在 `models.yaml` 的 `chatgpt`/`xai` 表添加别名。
已预置的 OAuth 候选为 gpt-luna-latest/gpt-sol-latest/grok-latest,
只是先前 Hindsight 使用过的模型,不代表本代理独立账号已授权。
OAuth 映射为 gpt-luna-latest -> gpt-6-luna、gpt-sol-latest -> gpt-6.1-sol、
grok-latest -> grok-4.7,独立账号目录与 SDK 请求均已验证。
Codex 路线由 `chatgpt/` 访问,优先 `/v1/responses`;
使用消息列表形式的 input 和 stream=true,按 SSE 读取到 response.completed。
实测直接给字符串 input 会被 Codex backend 拒绝;不要把已授权误写成协议完全兼容。
xAI 路线使用 `xai/` 与 `use_xai_oauth: true`,不能设置 XAI API key 覆盖它。
新增 token 后需重启代理,运行时 refresh 会写回同一个持久卷。
+5 -2
View File
@@ -9,11 +9,14 @@ openrouter:
glm-latest: z-ai/glm-5.3-prime
kimi-latest: moonshotai/kimi-k3
mimo-flash-latest: xiaomi/mimo-v2.6-flash
google_ai_studio: {}
google_ai_studio:
gemini-flash-latest: gemini-flash-latest
gemini-flash-lite-latest: gemini-flash-lite-latest
gemini-pro-latest: gemini-pro-latest
# 已有 Hindsight 部署用过的候选模型;本代理仍需独立授权与请求验收。
# renderer 在实际 token 出现前排除这些路线。
chatgpt:
gpt-luna-latest: gpt-6-luna
gpt-sol-latest: gpt-6-sol
gpt-sol-latest: gpt-6.1-sol
xai:
grok-latest: grok-4.7