from pydantic import BaseModel class DeployConfig(BaseModel): job_id: str merge_with_base: bool = False export_format: str = "safetensors" # safetensors | gguf class DeployServeConfig(BaseModel): """部署为在线服务的配置。""" job_id: str merge_with_base: bool = True # 部署为服务时默认合并基础模型 port: int | None = None # 可选指定端口,为空则自动分配 host: str = "0.0.0.0" # 监听地址 class DeployResponse(BaseModel): task_id: str | None = None # 部署任务 ID(用于轮询状态) job_id: str status: str deploy_mode: str = "export" # export | serve progress: float = 0.0 output_path: str | None = None endpoint_url: str | None = None # serve 模式下的 base_url port: int | None = None error: str | None = None class DeployedServiceInfo(BaseModel): """已部署的在线服务信息。""" task_id: str job_id: str status: str # running | stopped | error endpoint_url: str | None = None base_url: str | None = None # 同 endpoint_url,方便 OpenAI SDK 使用 port: int | None = None output_path: str | None = None created_at: str | None = None error: str | None = None