Spaces:
Runtime error
Runtime error
from pydantic import BaseModel, Field | |
from typing import List, Optional, Dict, Union, Literal | |
from time import time | |
class ChatMessage(BaseModel): | |
role: str | |
content: str | |
class ChatCompletionRequest(BaseModel): | |
model: str | |
messages: List[ChatMessage] | |
stream: bool = False | |
class ChatCompletionMessage(BaseModel): | |
role: str = "assistant" | |
content: str | |
class ChatCompletionChoice(BaseModel): | |
index: int = 0 | |
message: ChatCompletionMessage | |
logprobs: Optional[None] = None | |
finish_reason: str = "stop" | |
class CompletionTokenDetails(BaseModel): | |
reasoning_tokens: int = 0 | |
accepted_prediction_tokens: int = 0 | |
rejected_prediction_tokens: int = 0 | |
class CompletionUsage(BaseModel): | |
prompt_tokens: int = 9 # Placeholder values | |
completion_tokens: int = 12 | |
total_tokens: int = 21 | |
completion_tokens_details: CompletionTokenDetails = Field(default_factory=CompletionTokenDetails) | |
class ChatCompletionResponse(BaseModel): | |
id: str = Field(default="chatcmpl-123") | |
object: str = "chat.completion" | |
created: int = Field(default_factory=lambda: int(time())) | |
model: str = "gpt-4o-mini" | |
system_fingerprint: str = "fp_44709d6fcb" | |
choices: List[ChatCompletionChoice] | |
usage: CompletionUsage = Field(default_factory=CompletionUsage) | |
def from_response(cls, content: str, model: str = "gpt-4o-mini") -> "ChatCompletionResponse": | |
"""Create a ChatCompletionResponse from a simple response string""" | |
return cls( | |
model=model, | |
choices=[ | |
ChatCompletionChoice( | |
message=ChatCompletionMessage(content=content) | |
) | |
] | |
) | |
class GenerateRequest(BaseModel): | |
prompt: str | |
system_message: Optional[str] = None | |
max_new_tokens: Optional[int] = None | |
class EmbeddingRequest(BaseModel): | |
text: str | |
class EmbeddingResponse(BaseModel): | |
embedding: List[float] | |
dimension: int | |
class SystemStatusResponse(BaseModel): | |
"""Pydantic model for system status response""" | |
cpu: Optional[Dict[str, Union[float, str]]] = None | |
memory: Optional[Dict[str, Union[float, str]]] = None | |
gpu: Optional[Dict[str, Union[bool, str, float]]] = None | |
storage: Optional[Dict[str, str]] = None | |
model: Optional[Dict[str, Union[bool, str]]] = None | |
class ValidationResponse(BaseModel): | |
config_validation: Dict[str, bool] | |
model_validation: Dict[str, bool] | |
folder_validation: Dict[str, bool] | |
overall_status: str | |
issues: List[str] |