mirror of
https://github.com/MODSetter/SurfSense.git
synced 2026-05-06 14:22:47 +02:00
feat(multi-agent): extend model fallback to general-purpose subagent
This commit is contained in:
parent
1745d7dccf
commit
b394dc71c7
2 changed files with 17 additions and 0 deletions
|
|
@ -230,6 +230,22 @@ def build_main_agent_deepagent_middleware(
|
||||||
logging.warning("ScopedModelFallbackMiddleware init failed; skipping.")
|
logging.warning("ScopedModelFallbackMiddleware init failed; skipping.")
|
||||||
fallback_mw = None
|
fallback_mw = None
|
||||||
|
|
||||||
|
# Mirror the parent's ordering: retry / fallback wrap caching, which wraps
|
||||||
|
# the model. ``gp_middleware`` is held by reference inside
|
||||||
|
# ``general_purpose_spec`` so this insertion propagates into the spec.
|
||||||
|
_gp_resilience: list[Any] = [m for m in (retry_mw, fallback_mw) if m is not None]
|
||||||
|
if _gp_resilience:
|
||||||
|
_cache_idx = next(
|
||||||
|
(
|
||||||
|
i
|
||||||
|
for i, m in enumerate(gp_middleware)
|
||||||
|
if isinstance(m, AnthropicPromptCachingMiddleware)
|
||||||
|
),
|
||||||
|
len(gp_middleware),
|
||||||
|
)
|
||||||
|
for offset, mw in enumerate(_gp_resilience):
|
||||||
|
gp_middleware.insert(_cache_idx + offset, mw)
|
||||||
|
|
||||||
registry_subagents: list[SubAgent] = []
|
registry_subagents: list[SubAgent] = []
|
||||||
try:
|
try:
|
||||||
subagent_extra_middleware: list[Any] = [
|
subagent_extra_middleware: list[Any] = [
|
||||||
|
|
|
||||||
|
|
@ -45,6 +45,7 @@ _FALLBACK_ELIGIBLE_NAMES: frozenset[str] = frozenset(
|
||||||
"RemoteProtocolError",
|
"RemoteProtocolError",
|
||||||
"TimeoutError",
|
"TimeoutError",
|
||||||
"TimeoutException",
|
"TimeoutException",
|
||||||
|
# Can be extended to other exceptions in the future
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue