from __future__ import annotations
from pydantic import BaseModel, Field
class EmbedRequest(BaseModel):
texts: list[str] = Field(..., description="Texts to embed.")
normalize: bool = Field(True, description="L2-normalise output vectors.")
class EmbedVectorSchema(BaseModel):
values: list[float]
dimensions: int
class EmbedResponse(BaseModel):
vectors: list[EmbedVectorSchema]
model_name: str
latency_ms: int
class BatchEmbedRequest(BaseModel):
texts: list[str] = Field(..., description="Texts to embed.")
normalize: bool = Field(True, description="L2-normalise output vectors.")
class BatchEmbedResponse(BaseModel):
vectors: list[EmbedVectorSchema]
model_name: str
total_latency_ms: int
per_batch_latency_ms: list[int]
class HealthResponse(BaseModel):
ready: bool
model_name: str
model_load_time_ms: int
class ReadyResponse(BaseModel):
ready: bool
class ModelInfoResponse(BaseModel):
model_name: str
dimensions: int
max_sequence_length: int
device: str