from app.providers.base import AIProvider def get_provider(ai_config: dict) -> AIProvider: """Return an AIProvider instance for the active provider in the config.""" provider_name = ai_config.get("provider", "lmstudio") provider_cfg = ai_config.get(provider_name, {}) match provider_name: case "anthropic": from app.providers.anthropic_provider import AnthropicProvider return AnthropicProvider(provider_cfg) case "ollama" | "lmstudio": from app.providers.openai_compat import OpenAICompatProvider return OpenAICompatProvider(provider_cfg, provider_name=provider_name) case _: raise ValueError(f"Unknown AI provider: {provider_name!r}") __all__ = ["AIProvider", "get_provider"]