fix: provider链白名单与实际config脱节导致模型无响应
- 原allowed仅4个provider(deepseek/volcengine/opencode-go*), config里只有deepseek(402欠费)→全链死 - 现按存活度排序: sense-nova(实测可用+tools支持)→deepseek→afw-proxy→ocg-key* - 模型名: options.model优先, 否则取provider models字典第一个key
This commit is contained in:
@@ -96,11 +96,17 @@ _DEFAULT_MODELS = {
|
|||||||
def _build_chain() -> list[tuple[str, str, str]]:
|
def _build_chain() -> list[tuple[str, str, str]]:
|
||||||
"""Build (provider_key, base_url, model_name) in priority order.
|
"""Build (provider_key, base_url, model_name) in priority order.
|
||||||
|
|
||||||
优先用 deepseek(直连,稳定)→ volcengine(代理→Go)→ opencode-go(备用)。
|
2026-07-23 修复:原白名单只有 deepseek/volcengine/opencode-go*,
|
||||||
|
但 config 里只有 deepseek(402欠费)→ 全链死 → 模型无响应。
|
||||||
|
现按实际存活度排序:sense-nova(实测可用+支持tools)→ deepseek →
|
||||||
|
afw-proxy(本地代理,活着时优先)→ ocg-key*(Windows IP 当前403,恢复即可用)。
|
||||||
|
模型名:options.model 优先,否则取 provider models 字典第一个 key。
|
||||||
"""
|
"""
|
||||||
allowed = ["deepseek", "volcengine", "opencode-go", "opencode-go-new"]
|
priority = ["sense-nova", "deepseek", "afw-proxy",
|
||||||
|
"ocg-key6", "ocg-key5", "ocg-key4", "ocg-key3", "ocg-key2", "ocg-key1",
|
||||||
|
"volcengine", "opencode-go", "opencode-go-new"]
|
||||||
chain = []
|
chain = []
|
||||||
for key in allowed:
|
for key in priority:
|
||||||
prov = _PROVIDERS.get(key)
|
prov = _PROVIDERS.get(key)
|
||||||
if not prov:
|
if not prov:
|
||||||
continue
|
continue
|
||||||
@@ -109,7 +115,12 @@ def _build_chain() -> list[tuple[str, str, str]]:
|
|||||||
api_key = opts.get("apiKey", "")
|
api_key = opts.get("apiKey", "")
|
||||||
if not base or not api_key:
|
if not base or not api_key:
|
||||||
continue
|
continue
|
||||||
model = opts.get("model") or _DEFAULT_MODELS.get(key, "deepseek-v4-flash")
|
model = opts.get("model")
|
||||||
|
if not model:
|
||||||
|
_models = prov.get("models", {})
|
||||||
|
model = next(iter(_models.keys()), None) if _models else None
|
||||||
|
if not model:
|
||||||
|
model = _DEFAULT_MODELS.get(key, "deepseek-v4-flash")
|
||||||
chain.append((key, base, model))
|
chain.append((key, base, model))
|
||||||
return chain
|
return chain
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user