Files
tatlock/src/anthropic/__init__.py
T
jpmschweitzerandClaude Fable 5 033a1c01e8 feat: make Ollama/gemma4 the primary backend with Claude as fallback
Rolls back the claudification backend preference: PREFER_CLOUD_BACKEND now
defaults to false, resolve_backend() picks Ollama first and uses Claude when
explicitly preferred or when the new Ollama startup health check fails. The
Steward retries mid-request failures on the other backend in both directions.

Also hardens the fallback itself: Anthropic SDK imports are lazy so a broken
anthropic package degrades to Ollama-only instead of crashing at import time
(root cause of the production outage since April), anthropic is pinned to a
pydantic-ai-1.27-compatible range, ANTHROPIC_MODEL defaults to claude-sonnet-5
(sonnet-4-20250514 retired 2026-06-15), sampling parameters are stripped from
Claude calls (Sonnet 5 rejects them), and the Steward timeout is configurable
(STEWARD_TIMEOUT, default 60s) since gemma4 needs ~35s warm for analysis.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-13 18:35:53 +02:00

27 lines
543 B
Python

"""
Anthropic/Claude integration module.
Provides model selection with Ollama as primary backend and Claude
as the cloud fallback.
"""
from src.anthropic.model_selector import (
check_claude_health,
check_ollama_health,
get_model,
get_tool_choice_settings,
is_claude_available,
is_ollama_available,
resolve_backend,
)
__all__ = [
"check_claude_health",
"check_ollama_health",
"get_model",
"get_tool_choice_settings",
"is_claude_available",
"is_ollama_available",
"resolve_backend",
]