Re-freeze phase 3 for the slow mandatory candidate: hard per-model timeout, no client retries, declared unit subset
This commit is contained in:
parent
784e412c24
commit
ef797101c1
1 changed files with 16 additions and 2 deletions
|
|
@ -52,9 +52,22 @@ MANDATORY = "gemini-3.1-pro-preview" # обязательный канди
|
|||
MAX_EDITORS = 5
|
||||
|
||||
|
||||
# ⚠ ПЕР-МОДЕЛЬНЫЙ ТАЙМАУТ И ЗАПРЕТ SDK-РЕТРАЕВ. Поймано исполнением: `gemini-3.1-pro-preview`
|
||||
# держал ОДИН вызов 70.8 минуты без ошибки — таймаут 900 с умножался на внутренние ретраи
|
||||
# клиента, и клетка не закрывалась вовсе (за то же время он отдал 1 клетку из 16). Это тот же
|
||||
# класс, что его серия HTTP 503 на скрине: модель в этой роли на проводе не работоспособна.
|
||||
# Здесь она получает жёсткую границу, чтобы отказ БЫЛ ИЗМЕРЕН, а не съел прогон.
|
||||
SLOW = {"gemini-3.1-pro-preview": 300}
|
||||
# ⚠ ПОДМНОЖЕСТВО ЕДИНИЦ ДЛЯ МЕДЛЕННОЙ МОДЕЛИ, объявлено ДО покупки: первые 8 по стабильному
|
||||
# порядку `units_zh`. Основание — замер, а не удобство: при наблюдённой скорости 16 клеток
|
||||
# недостижимы, а 8 дают парную статистику с честно объявленной мощностью.
|
||||
SLOW_UNITS = 8
|
||||
|
||||
|
||||
def client(model: str) -> OpenAI:
|
||||
base, env, *_ = CANDIDATES[model]
|
||||
return OpenAI(api_key=os.environ[env], base_url=base, timeout=900)
|
||||
return OpenAI(api_key=os.environ[env], base_url=base,
|
||||
timeout=SLOW.get(model, 900), max_retries=0)
|
||||
|
||||
|
||||
RESERVE = "glm-5" # ратифицированный резерв D39.22 = арм B эксп-21
|
||||
|
|
@ -159,7 +172,8 @@ def cmd_run(argv: list[str] | None = None) -> None:
|
|||
if m == BATTLE:
|
||||
print(f" {m}: клетка куплена в Ф2 (tp2-edit) — не перекупается")
|
||||
continue
|
||||
for u in M.units_zh():
|
||||
us = M.units_zh()[:SLOW_UNITS] if m in SLOW else M.units_zh()
|
||||
for u in us:
|
||||
if not base_text(u["uid"]):
|
||||
print(f" ⚠ {u['uid'][:6]}: якорной базы нет — клетка пропущена")
|
||||
continue
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue