"""IONOS AI Model Hub LLM provider for Local Deep Research."""

from ..openai_base import OpenAICompatibleProvider


class IONOSProvider(OpenAICompatibleProvider):
    """IONOS AI Model Hub provider using OpenAI-compatible endpoint."""

    provider_name = "IONOS AI Model Hub"
    api_key_setting = "llm.ionos.api_key"
    default_base_url = "https://openai.inference.de-txl.ionos.com/v1"
    default_model = ""  # User must explicitly pick a model — no silent fallback

    # Metadata for auto-discovery
    provider_key = "IONOS"
    company_name = "IONOS"
    is_cloud = True

    @classmethod
    def requires_auth_for_models(cls):
        """IONOS requires authentication for listing models."""
        return True
