Skip to content

LiteLLmConfigFactory

autogen.interop.LiteLLmConfigFactory #

Bases: ABC

create_lite_llm_config classmethod #

create_lite_llm_config(llm_config)
Source code in autogen/interop/litellm/litellm_config_factory.py
@classmethod
def create_lite_llm_config(cls, llm_config: dict[str, Any]) -> dict[str, Any]:
    first_llm_config = get_first_llm_config(llm_config)
    for factory in LiteLLmConfigFactory._factories:
        if factory.accepts(first_llm_config):
            return factory.create(first_llm_config)

    raise ValueError("Could not find a factory for the given config.")

register_factory classmethod #

register_factory()
Source code in autogen/interop/litellm/litellm_config_factory.py
@classmethod
def register_factory(cls) -> Callable[[type[T]], type[T]]:
    def decorator(factory: type[T]) -> type[T]:
        cls._factories.add(factory())
        return factory

    return decorator

create classmethod #

create(first_llm_config)
Source code in autogen/interop/litellm/litellm_config_factory.py
@classmethod
def create(cls, first_llm_config: dict[str, Any]) -> dict[str, Any]:
    model = first_llm_config.pop("model")
    api_type = first_llm_config.pop("api_type", "openai")

    first_llm_config["provider"] = f"{api_type}/{model}"
    return first_llm_config

get_api_type abstractmethod classmethod #

get_api_type()
Source code in autogen/interop/litellm/litellm_config_factory.py
@classmethod
@abstractmethod
def get_api_type(cls) -> str: ...

accepts classmethod #

accepts(first_llm_config)
Source code in autogen/interop/litellm/litellm_config_factory.py
@classmethod
def accepts(cls, first_llm_config: dict[str, Any]) -> bool:
    return first_llm_config.get("api_type", "openai") == cls.get_api_type()  # type: ignore [no-any-return]