Skip to main content

hackagent.router.provider_config

AgentTypeProviderConfig table.

The lookup table is the single source of truth for how each agent type maps to a LiteLLM call: provider prefix, the thinking knob translator, the allow-list of extra request keys that should pass through, and an optional :class:litellm.CustomLLM factory for agent types LiteLLM cannot speak natively (ADK, future MCP/A2A).

default_thinking_translator

def default_thinking_translator(thinking: Any,
*,
model_name: str = "") -> Dict[str, Any]

Provider-agnostic translation that matches LiteLLM's own conventions.

openai_thinking_translator

def openai_thinking_translator(thinking: Any,
*,
model_name: str = "") -> Dict[str, Any]

Map thinking to reasoning_effort for OpenAI reasoning models.

ollama_thinking_translator

def ollama_thinking_translator(thinking: Any,
*,
model_name: str = "") -> Dict[str, Any]

Map thinking to Ollama's native think field.

ProviderConfig Objects

@dataclass(frozen=True)
class ProviderConfig()

Per-AgentType knobs the router uses to drive litellm.completion.

get_provider_config

def get_provider_config(agent_type: AgentTypeEnum) -> Optional[ProviderConfig]

Return the ProviderConfig for agent_type, or None.