gen_ai_hub.proxy.core.base module

class gen_ai_hub.proxy.core.base.BaseDeployment

Bases: BaseModel, ABC

Abstract base class for all deployment types.

Parameters:
  • BaseModel (pydantic.BaseModel) – the base model class from Pydantic.

  • ABC (abc.ABC) – the abstract base class module.

Returns:

the abstract base class for deployments.

Return type:

BaseDeployment

model_config: ClassVar[ConfigDict] = {'protected_namespaces': ()}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

abstractmethod additional_request_body_kwargs() Dict[str, Any]
abstract property prediction_url: Tuple[str]
abstractmethod classmethod get_model_identification_kwargs() Tuple[str]
classmethod get_main_model_identification_kwargs() str
class gen_ai_hub.proxy.core.base.InstanceCacheMeta

Bases: type

Metaclass that caches instances based on their initialization arguments.

Parameters:

type (type) – the metaclass type.

Returns:

the metaclass that caches instances.

Return type:

InstanceCacheMeta

clear_cache()

Clear the instance cache.

class gen_ai_hub.proxy.core.base.CombinedMeta(cls_name: str, bases: tuple[type[Any], ...], namespace: dict[str, Any], __pydantic_generic_metadata__: PydanticGenericMetadata | None = None, __pydantic_reset_parent_namespace__: bool = True, _create_model_module: str | None = None, **kwargs: Any)

Bases: InstanceCacheMeta, ModelMetaclass

class gen_ai_hub.proxy.core.base.BaseProxyClient

Bases: ABC, BaseModel

Abstract base class for all proxy clients.

model_config: ClassVar[ConfigDict] = {'protected_namespaces': ()}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

classmethod refresh_instance_cache()

Refresh the cache of instances.

abstract property request_header: Dict[str, Any]
abstract property deployments: Dict[str, Any]
abstract property deployment_class: Type[BaseDeployment]
abstractmethod select_deployment(**kwargs) BaseDeployment