AIClient-2-API/configs/config.json.example
ZqinKing 4ec39f4df6 feat(fallback): 新增跨协议模型 Fallback 映射功能
## 功能概述
实现跨协议模型级别的 Fallback 映射机制,允许在主 Provider 不可用时,
根据模型名称自动映射到其他协议的 Provider 和模型。

## 设计原理
- 原有 providerFallbackChain 只支持同协议内回退
- 新增 modelFallbackMapping 支持跨协议映射(如 Gemini → Claude)
- 优先级:同协议回退 > 跨协议模型映射

## 代码修改
- configs/config.json.example: 新增 modelFallbackMapping 配置示例
- src/provider-pool-manager.js: 实现跨协议映射选择逻辑
- src/service-manager.js: 传递 actualModel 参数
- src/common.js: 处理模型 fallback 后的模型名更新
- src/ui-manager.js: UI配置读写支持
- static/app/config-manager.js: 前端配置管理
- static/app/i18n.js: 中英文国际化文案
- static/index.html: 高级配置区新增配置项

## 配置示例
modelFallbackMapping: {
  "gemini-claude-opus-4-5-thinking": {
    "targetProviderType": "claude-kiro-oauth",
    "targetModel": "claude-opus-4-5"
  }
}
2026-01-04 08:40:40 +08:00

49 lines
1.6 KiB
Text

{
"REQUIRED_API_KEY": "123456",
"SERVER_PORT": 3000,
"HOST": "0.0.0.0",
"MODEL_PROVIDER": "gemini-cli-oauth",
"SYSTEM_PROMPT_FILE_PATH": "configs/input_system_prompt.txt",
"SYSTEM_PROMPT_MODE": "overwrite",
"PROMPT_LOG_BASE_NAME": "prompt_log",
"PROMPT_LOG_MODE": "none",
"REQUEST_MAX_RETRIES": 3,
"REQUEST_BASE_DELAY": 1000,
"CRON_NEAR_MINUTES": 1,
"CRON_REFRESH_TOKEN": false,
"PROVIDER_POOLS_FILE_PATH": "configs/provider_pools.json",
"MAX_ERROR_COUNT": 3,
"providerFallbackChain": {
"gemini-cli-oauth": ["gemini-antigravity"],
"gemini-antigravity": ["gemini-cli-oauth"],
"claude-kiro-oauth": ["claude-custom"],
"claude-custom": ["claude-kiro-oauth"]
},
"modelFallbackMapping": {
"gemini-claude-opus-4-5-thinking": {
"targetProviderType": "claude-kiro-oauth",
"targetModel": "claude-opus-4-5"
},
"gemini-claude-sonnet-4-5-thinking": {
"targetProviderType": "claude-kiro-oauth",
"targetModel": "claude-sonnet-4-5"
},
"gemini-claude-sonnet-4-5": {
"targetProviderType": "claude-kiro-oauth",
"targetModel": "claude-sonnet-4-5"
},
"claude-opus-4-5": {
"targetProviderType": "gemini-antigravity",
"targetModel": "gemini-claude-opus-4-5-thinking"
},
"claude-sonnet-4-5": {
"targetProviderType": "gemini-antigravity",
"targetModel": "gemini-claude-sonnet-4-5"
}
},
"PROXY_URL": "http://127.0.0.1:1089",
"PROXY_ENABLED_PROVIDERS": [
"gemini-cli-oauth",
"gemini-antigravity"
]
}