Spaces:
Running
Running
Upload 2 files
Browse files- lumen_router_config.py +26 -24
- test_lumen_router_config.py +29 -24
lumen_router_config.py
CHANGED
|
@@ -80,30 +80,30 @@ GEMINI_MODELS: dict[str, dict[str, Any]] = {
|
|
| 80 |
"stream": True,
|
| 81 |
"search_grounding": False, "map_grounding": False, "url_context": True,
|
| 82 |
},
|
| 83 |
-
# УБРАНО (ау
|
| 84 |
-
#
|
| 85 |
-
#
|
| 86 |
-
# "
|
| 87 |
-
#
|
| 88 |
-
#
|
| 89 |
-
#
|
| 90 |
-
#
|
| 91 |
-
#
|
| 92 |
-
#
|
| 93 |
-
#
|
| 94 |
-
#
|
| 95 |
-
#
|
| 96 |
-
#
|
| 97 |
-
#
|
| 98 |
-
#
|
| 99 |
-
#
|
| 100 |
-
#
|
| 101 |
-
#
|
| 102 |
-
|
| 103 |
-
|
| 104 |
-
|
| 105 |
-
|
| 106 |
-
|
| 107 |
# Gemini 3.5 Flash-Lite — новая версия самой быстрой и экономичной модели,
|
| 108 |
# вышла 21 июля 2026 вместе с 3.6 Flash; превосходит 3.1 Flash-Lite в агентных
|
| 109 |
# задачах и длинном контексте, до 350 токенов/сек.
|
|
@@ -547,6 +547,7 @@ GEMINI_HEAVY_CHAIN: list[str] = [
|
|
| 547 |
"gemini-3.7-flash",
|
| 548 |
"gemini-3.6-flash",
|
| 549 |
"gemini-3.5-flash",
|
|
|
|
| 550 |
"gemini-3.5-flash-lite",
|
| 551 |
"gemini-3.1-flash-lite",
|
| 552 |
"gemini-2.5-flash",
|
|
@@ -567,6 +568,7 @@ GEMINI_SEARCH_CHAIN: list[str] = [
|
|
| 567 |
"gemini-3.7-flash",
|
| 568 |
"gemini-3.6-flash",
|
| 569 |
"gemini-3.5-flash",
|
|
|
|
| 570 |
]
|
| 571 |
# Совпадает по составу с прежним quota_fallback_chain — используется как дефолт,
|
| 572 |
# если ask_gemini вызвана без явной цепочки (например, напрямую из теста).
|
|
|
|
| 80 |
"stream": True,
|
| 81 |
"search_grounding": False, "map_grounding": False, "url_context": True,
|
| 82 |
},
|
| 83 |
+
# УБРАНО (17 августа 2026), ВОССТАНОВЛЕНО (22 августа 2026) — см. ниже.
|
| 84 |
+
# ВОССТАНОВЛЕНО: владелец прислал прямой скриншот официальной страницы модели
|
| 85 |
+
# ai.google.dev/gemini-api/docs/models/gemini-3-flash-preview — "Last updated
|
| 86 |
+
# 2026-08-18 UTC" (4 дня назад от сегодня), с полной живой таблицей возможностей
|
| 87 |
+
# (Model code: gemini-3-flash-preview, вход Text/Image/Video/Audio/PDF, 1,048,576
|
| 88 |
+
# вход/65,536 выход токенов, Search grounding/Grounding with Google Maps/URL
|
| 89 |
+
# context — все "Supported"). Это прямой первоисточник от самого Google,
|
| 90 |
+
# актуальный на 4 дня назад — перевешивает более ранний вывод (17 августа) о
|
| 91 |
+
# ретирке, который опирался на страницу Vertex AI Enterprise Agent Platform
|
| 92 |
+
# (другой продукт, не сам Gemini API) и сторонний changelog GitHub Copilot —
|
| 93 |
+
# ни один из них не есть офиц. страница модели самого Gemini API. Ошибочно
|
| 94 |
+
# интерпретированный вывод 17 августа отменён.
|
| 95 |
+
# search_grounding/map_grounding здесь всё равно False — страница модели говорит
|
| 96 |
+
# "Supported" (модель технически умеет), но реальная бесплатная КВОТА на эти
|
| 97 |
+
# инструменты (что и определяют эти два флага, см. заметку про бакеты выше) по
|
| 98 |
+
# дашборду AI Studio — 0/0 что для "Gemini 3 Flash" (RPM/TPM/RPD 0/5, 0/250K,
|
| 99 |
+
# 0/20 — тот же профиль, что у остальной линейки 3.x), что для общего бакета
|
| 100 |
+
# поиска "Gemini 3" — тот же паттерн "0 квоты", что уже задокументирован для
|
| 101 |
+
# всей линейки 3.x в заметке про бакеты в начале этого словаря.
|
| 102 |
+
"gemini-3-flash-preview": {
|
| 103 |
+
"stream": True,
|
| 104 |
+
"search_grounding": False, "map_grounding": False, "url_context": True,
|
| 105 |
+
},
|
| 106 |
+
|
| 107 |
# Gemini 3.5 Flash-Lite — новая версия самой быстрой и экономичной модели,
|
| 108 |
# вышла 21 июля 2026 вместе с 3.6 Flash; превосходит 3.1 Flash-Lite в агентных
|
| 109 |
# задачах и длинном контексте, до 350 токенов/сек.
|
|
|
|
| 547 |
"gemini-3.7-flash",
|
| 548 |
"gemini-3.6-flash",
|
| 549 |
"gemini-3.5-flash",
|
| 550 |
+
"gemini-3-flash-preview",
|
| 551 |
"gemini-3.5-flash-lite",
|
| 552 |
"gemini-3.1-flash-lite",
|
| 553 |
"gemini-2.5-flash",
|
|
|
|
| 568 |
"gemini-3.7-flash",
|
| 569 |
"gemini-3.6-flash",
|
| 570 |
"gemini-3.5-flash",
|
| 571 |
+
"gemini-3-flash-preview",
|
| 572 |
]
|
| 573 |
# Совпадает по составу с прежним quota_fallback_chain — используется как дефолт,
|
| 574 |
# если ask_gemini вызвана без явной цепочки (например, напрямую из теста).
|
test_lumen_router_config.py
CHANGED
|
@@ -162,30 +162,35 @@ def test_new_gemini_models_present_and_prioritized():
|
|
| 162 |
assert lumen_router_config.GEMINI_SEARCH_CHAIN[0] == "gemini-2.5-flash"
|
| 163 |
|
| 164 |
|
| 165 |
-
def
|
| 166 |
-
#
|
| 167 |
-
#
|
| 168 |
-
#
|
| 169 |
-
#
|
| 170 |
-
#
|
| 171 |
-
#
|
| 172 |
-
|
| 173 |
-
|
| 174 |
-
|
| 175 |
-
|
| 176 |
-
|
| 177 |
-
#
|
| 178 |
-
#
|
| 179 |
-
|
| 180 |
-
assert "gemini-3-flash-preview"
|
| 181 |
-
|
| 182 |
-
|
| 183 |
-
|
| 184 |
-
|
| 185 |
-
#
|
| 186 |
-
#
|
| 187 |
-
#
|
| 188 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 189 |
|
| 190 |
|
| 191 |
def test_gemini_3_7_flash_config_matches_3_6_flash_pattern():
|
|
|
|
| 162 |
assert lumen_router_config.GEMINI_SEARCH_CHAIN[0] == "gemini-2.5-flash"
|
| 163 |
|
| 164 |
|
| 165 |
+
def test_gemini_3_flash_preview_restored_after_official_docs_confirmation():
|
| 166 |
+
# ИСТОРИЯ: удалена 17.08.2026 (ошибочный вывод — источники были Vertex AI
|
| 167 |
+
# Enterprise Agent Platform и сторонний GitHub Copilot changelog, ни один не
|
| 168 |
+
# офиц. страница модели самого Gemini API). ВОССТАНОВЛЕНА 22.08.2026: владелец
|
| 169 |
+
# прислал скриншот ai.google.dev/gemini-api/docs/models/gemini-3-flash-preview —
|
| 170 |
+
# "Last updated 2026-08-18 UTC", живая таблица возможностей, Model code
|
| 171 |
+
# gemini-3-flash-preview. Первоисточник перевешивает прежний (неверный) вывод.
|
| 172 |
+
assert "gemini-3-flash-preview" in lumen_router_config.GEMINI_MODELS
|
| 173 |
+
assert "gemini-3-flash-preview" in lumen_router_config.GEMINI_HEAVY_CHAIN
|
| 174 |
+
assert "gemini-3-flash-preview" in lumen_router_config.GEMINI_SEARCH_CHAIN
|
| 175 |
+
assert "gemini-3-flash-preview" in lumen_router_config.GEMINI_LINK_CHAIN
|
| 176 |
+
assert "gemini-3-flash-preview" in lumen_router_config.GEMINI_LINK_SEARCH_CHAIN
|
| 177 |
+
# Позиция — после 3.5 Flash по номеру версии (3, 3.1, 3.5, 3.6, 3.7), перед
|
| 178 |
+
# lite-вариантами.
|
| 179 |
+
chain = lumen_router_config.GEMINI_HEAVY_CHAIN
|
| 180 |
+
assert chain.index("gemini-3.5-flash") < chain.index("gemini-3-flash-preview") < chain.index("gemini-3.5-flash-lite")
|
| 181 |
+
|
| 182 |
+
|
| 183 |
+
def test_gemini_3_flash_preview_quota_config_matches_dashboard():
|
| 184 |
+
# Страница модели говорит "Search grounding: Supported"/"Grounding with Google
|
| 185 |
+
# Maps: Supported" — модель технически умеет. Но реальная бесплатная КВОТА на
|
| 186 |
+
# оба (что и кодируют эти два флага) по дашборду AI Studio — 0/0, тот же паттерн,
|
| 187 |
+
# что и у всей остальной линейки 3.x (см. заметку про бакеты в начале GEMINI_MODELS).
|
| 188 |
+
conf = lumen_router_config.GEMINI_MODELS["gemini-3-flash-preview"]
|
| 189 |
+
assert conf.get("search_grounding") is False
|
| 190 |
+
assert conf.get("map_grounding") is False
|
| 191 |
+
assert conf.get("url_context") is True
|
| 192 |
+
assert conf.get("stream") is True
|
| 193 |
+
assert not conf.get("no_system")
|
| 194 |
|
| 195 |
|
| 196 |
def test_gemini_3_7_flash_config_matches_3_6_flash_pattern():
|