DB-GPT/dbgpt/serve/evaluate/api/schemas.py
2024-10-19 16:00:31 +08:00

40 lines
1.8 KiB
Python

from enum import Enum
from typing import List, Optional
from dbgpt._private.pydantic import BaseModel, Field
from ..config import SERVE_APP_NAME_HUMP
class EvaluationScene(Enum):
RECALL = "recall"
APP = "app"
class EvaluateServeRequest(BaseModel):
evaluate_code: Optional[str] = Field(None, description="evaluation code")
scene_key: Optional[str] = Field(None, description="evaluation scene key")
scene_value: Optional[str] = Field(None, description="evaluation scene value")
datasets_name: Optional[str] = Field(None, description="evaluation datasets name")
datasets: Optional[List[dict]] = Field(None, description="datasets")
evaluate_metrics: Optional[List[str]] = Field(
None, description="evaluation metrics"
)
context: Optional[dict] = Field(None, description="The context of the evaluate")
user_name: Optional[str] = Field(None, description="user name")
user_id: Optional[str] = Field(None, description="user id")
sys_code: Optional[str] = Field(None, description="system code")
parallel_num: Optional[int] = Field(None, description="system code")
state: Optional[str] = Field(None, description="evaluation state")
result: Optional[str] = Field(None, description="evaluation result")
storage_type: Optional[str] = Field(None, comment="datasets storage type")
average_score: Optional[str] = Field(None, description="evaluation average score")
log_info: Optional[str] = Field(None, description="evaluation log_info")
gmt_create: Optional[str] = Field(None, description="create time")
gmt_modified: Optional[str] = Field(None, description="create time")
class EvaluateServeResponse(EvaluateServeRequest):
class Config:
title = f"EvaluateServeResponse for {SERVE_APP_NAME_HUMP}"