feat:助手首次改版

This commit is contained in:
R524809
2026-08-07 17:34:24 +08:00
parent f88b424301
commit 2083ad1954
29 changed files with 3817 additions and 0 deletions
View File
+37
View File
@@ -0,0 +1,37 @@
from pydantic import BaseModel, Field, field_validator
class CopyRequest(BaseModel):
source_text: str = Field(..., description="商品资料,可同时包含事实与本次生成要求")
product_name: str = Field(default="", description="当前表单商品名")
model_code: str = Field(default="", description="型号")
model: str = Field(default="", description="模型 id(可选,须在 models.yaml 白名单内)")
@field_validator("source_text")
@classmethod
def source_text_min_length(cls, value: str) -> str:
text = (value or "").strip()
if len(text) < 10:
raise ValueError("source_text 去空白后至少 10 个字符")
return text
@field_validator("model")
@classmethod
def normalize_model(cls, value: str) -> str:
return (value or "").strip()
class UsageInfo(BaseModel):
prompt_tokens: int = 0
completion_tokens: int = 0
class CopyResponse(BaseModel):
titles_ru: list[str]
titles_zh: list[str]
description_ru: str
description_zh: str
tags_ru: list[str]
tags_zh: list[str]
model: str
usage: UsageInfo