diff --git a/litellm/types/completion.py b/litellm/types/completion.py index 87a7629dafe..78af7667bae 100644 --- a/litellm/types/completion.py +++ b/litellm/types/completion.py @@ -1,27 +1,10 @@ -from typing import List, Optional, Union, Iterable, cast +from typing import List, Optional, Union, Iterable -from pydantic import ConfigDict, BaseModel, validator, VERSION +from pydantic import BaseModel, validator from typing_extensions import Literal, Required, TypedDict -# Function to get Pydantic version -def is_pydantic_v2() -> int: - return int(VERSION.split(".")[0]) - - -def get_model_config() -> ConfigDict: - # Version-specific configuration - if is_pydantic_v2() >= 2: - model_config = ConfigDict(extra="allow", protected_namespaces=()) # type: ignore - else: - from pydantic import Extra - - model_config = ConfigDict(extra=Extra.allow) # type: ignore - - return model_config - - class ChatCompletionSystemMessageParam(TypedDict, total=False): content: Required[str] """The contents of the system message.""" @@ -208,4 +191,6 @@ class CompletionRequest(BaseModel): api_key: Optional[str] = None model_list: Optional[List[str]] = None - model_config = get_model_config() + class Config: + extra = "allow" + protected_namespaces = () diff --git a/litellm/types/embedding.py b/litellm/types/embedding.py index 831c4266c32..9db0ef29079 100644 --- a/litellm/types/embedding.py +++ b/litellm/types/embedding.py @@ -1,23 +1,6 @@ from typing import List, Optional, Union -from pydantic import ConfigDict, BaseModel, validator, VERSION - - -# Function to get Pydantic version -def is_pydantic_v2() -> int: - return int(VERSION.split(".")[0]) - - -def get_model_config(arbitrary_types_allowed: bool = False) -> ConfigDict: - # Version-specific configuration - if is_pydantic_v2() >= 2: - model_config = ConfigDict(extra="allow", arbitrary_types_allowed=arbitrary_types_allowed, protected_namespaces=()) # type: ignore - else: - from pydantic import Extra - - model_config = ConfigDict(extra=Extra.allow, arbitrary_types_allowed=arbitrary_types_allowed) # type: ignore - - return model_config +from pydantic import BaseModel, validator class EmbeddingRequest(BaseModel): @@ -34,4 +17,7 @@ class EmbeddingRequest(BaseModel): litellm_call_id: Optional[str] = None litellm_logging_obj: Optional[dict] = None logger_fn: Optional[str] = None - model_config = get_model_config() + + class Config: + # allow kwargs + extra = "allow"