Files
2026-04-24 19:35:10 +08:00

40 lines
1.0 KiB
Python

"""技能差距分析 Schema
请求参数 Param。定制简历模型已抽到 customize_resume.py。
字段命名使用 camelCase alias,与前端 JSON 对齐。
"""
from typing import Literal
from pydantic import BaseModel, Field
# 定制简历可优化模块
OptimizeModule = Literal["summary", "skills", "experience"]
# ===== 请求参数 =====
class SkillGapParam(BaseModel):
job_id: int = Field(..., alias="jobId")
class CustomizeResumeParam(BaseModel):
job_id: int = Field(..., alias="jobId")
resume_id: int = Field(..., alias="resumeId")
optimize_modules: list[OptimizeModule] = Field(..., alias="optimizeModules")
add_skills: list[str] = Field(default_factory=list, alias="addSkills")
ChatRole = Literal["user", "assistant"]
class ChatMessage(BaseModel):
role: ChatRole
content: str
class AiEditParam(BaseModel):
job_id: int = Field(..., alias="jobId")
instruction: str = Field(...)
chat_history: list[ChatMessage] = Field(default_factory=list, alias="chatHistory")