(feat) litellm add types for completion, embedding request

This commit is contained in:
ishaan-jaff 2024-01-02 12:23:49 +05:30
parent 6d2b9fd470
commit 1f8fc6d2a7
2 changed files with 59 additions and 0 deletions

View file

@ -0,0 +1,36 @@
from typing import List, Optional, Union
from pydantic import BaseModel, validator
class CompletionRequest(BaseModel):
model: str
messages: List[str] = []
timeout: Optional[Union[float, int]] = None
temperature: Optional[float] = None
top_p: Optional[float] = None
n: Optional[int] = None
stream: Optional[bool] = None
stop: Optional[dict] = None
max_tokens: Optional[float] = None
presence_penalty: Optional[float] = None
frequency_penalty: Optional[float] = None
logit_bias: Optional[dict] = None
user: Optional[str] = None
response_format: Optional[dict] = None
seed: Optional[int] = None
tools: Optional[List[str]] = None
tool_choice: Optional[str] = None
logprobs: Optional[bool] = None
top_logprobs: Optional[int] = None
deployment_id: Optional[str] = None
functions: Optional[List[str]] = None
function_call: Optional[str] = None
base_url: Optional[str] = None
api_version: Optional[str] = None
api_key: Optional[str] = None
model_list: Optional[List[str]] = None
class Config:
# allow kwargs
extra = "allow"

View file

@ -0,0 +1,23 @@
from typing import List, Optional, Union
from pydantic import BaseModel, validator
class EmbeddingRequest(BaseModel):
model: str
input: List[str] = []
timeout: int = 600
api_base: Optional[str] = None
api_version: Optional[str] = None
api_key: Optional[str] = None
api_type: Optional[str] = None
caching: bool = False
user: Optional[str] = None
custom_llm_provider: Optional[Union[str, dict]] = None
litellm_call_id: Optional[str] = None
litellm_logging_obj: Optional[dict] = None
logger_fn: Optional[str] = None
class Config:
# allow kwargs
extra = "allow"