mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-07-20 15:33:54 +00:00
refactor(agent): drop the solar-pro rolling alias, default to solar-pro3
Pin the Upstage default to the concrete solar-pro3 instead of the
solar-pro rolling alias:
- plugin fallback_models is now ("solar-pro3",); entry [0] is the setup default
- drop the "solar-pro" context-window fallback entry (solar-pro3 covers it)
- update the reasoning default-on docstring and profile tests accordingly
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
5f3d57400b
commit
35d3fc3b09
3 changed files with 8 additions and 13 deletions
|
|
@ -320,14 +320,12 @@ DEFAULT_CONTEXT_LENGTHS = {
|
|||
"kimi": 262144,
|
||||
# Upstage Solar — api.upstage.ai/v1/models does not return context_length,
|
||||
# so these fallbacks keep token budgeting / compression from probing down
|
||||
# to the 128k default. Substring matching is longest-first, so the versioned
|
||||
# ids win over the "solar-pro" rolling-alias entry, which in turn covers
|
||||
# future solar-pro* releases at the Pro context size.
|
||||
# to the 128k default. Ids are matched longest-first, so dated variants
|
||||
# (e.g. solar-pro3-250127) resolve via their family prefix.
|
||||
# Sources: Solar Pro 3 = 128K, Solar Pro 2 = 64K, Solar Mini = 32K,
|
||||
# Solar Open 2 = 256K.
|
||||
"solar-open2": 262144, # 256K
|
||||
"solar-pro3": 131072,
|
||||
"solar-pro": 131072, # rolling alias → latest Solar Pro (currently pro3)
|
||||
"solar-pro2": 65536,
|
||||
"solar-mini": 32768,
|
||||
# Tencent — Hy3 Preview (Hunyuan) with 256K context window.
|
||||
|
|
|
|||
|
|
@ -33,8 +33,8 @@ def _model_supports_reasoning(model: str | None) -> bool:
|
|||
other (incl. future) Solar model as reasoning-capable.
|
||||
|
||||
``None``/empty model → True: the provider default (``fallback_models[0]``,
|
||||
the ``solar-pro`` rolling alias) is reasoning-capable, so an unset model
|
||||
gets the same default-on behaviour.
|
||||
``solar-pro3``) is reasoning-capable, so an unset model gets the same
|
||||
default-on behaviour.
|
||||
"""
|
||||
m = (model or "").strip().lower()
|
||||
return not any(marker in m for marker in _NON_REASONING_MODEL_MARKERS)
|
||||
|
|
@ -103,10 +103,8 @@ upstage = UpstageProfile(
|
|||
base_url="https://api.upstage.ai/v1",
|
||||
auth_type="api_key",
|
||||
# default_aux_model left empty → auxiliary side tasks use the main model.
|
||||
# entry [0] is the setup default. solar-pro is a rolling alias for the
|
||||
# latest Solar Pro, so the default tracks the current flagship.
|
||||
# entry [0] is the setup default — solar-pro3, the current Solar Pro flagship.
|
||||
fallback_models=(
|
||||
"solar-pro",
|
||||
"solar-pro3",
|
||||
),
|
||||
)
|
||||
|
|
|
|||
|
|
@ -50,13 +50,12 @@ class TestUpstageProfile:
|
|||
# catalog — Mini is capable but not agentic, so it's never promoted as a
|
||||
# default. Live /v1/models still surfaces everything when a key is set.
|
||||
assert upstage_profile.fallback_models == (
|
||||
"solar-pro",
|
||||
"solar-pro3",
|
||||
)
|
||||
|
||||
def test_default_model_is_solar_pro(self, upstage_profile):
|
||||
def test_default_model_is_solar_pro3(self, upstage_profile):
|
||||
# Entry [0] is the setup default (get_default_model_for_provider).
|
||||
assert upstage_profile.fallback_models[0] == "solar-pro"
|
||||
assert upstage_profile.fallback_models[0] == "solar-pro3"
|
||||
|
||||
def test_aux_model_left_empty(self, upstage_profile):
|
||||
# Unset → auxiliary side tasks fall back to the user's main model.
|
||||
|
|
@ -163,7 +162,7 @@ class TestUpstageReasoning:
|
|||
|
||||
def test_none_model_defaults_to_reasoning(self, upstage_profile):
|
||||
# No model in context → treated as reasoning-capable, consistent with
|
||||
# the provider default (fallback_models[0] == "solar-pro").
|
||||
# the provider default (fallback_models[0] == "solar-pro3").
|
||||
_, top_level = upstage_profile.build_api_kwargs_extras(model=None)
|
||||
assert top_level == {"reasoning_effort": "medium"}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue