重构简历优化

This commit is contained in:
zk
2026-06-23 18:21:30 +08:00
parent 1edc28e332
commit 2f38c80207
11 changed files with 99 additions and 113 deletions
+15 -2
View File
@@ -1,10 +1,11 @@
"""简历上传解析接口"""
from fastapi import APIRouter, UploadFile, File
from pydantic import BaseModel, Field
from app.core.context import RequestContext
from app.core.database import get_db
from app.services.resume_parse_service import ResumeParseService
from app.services.resume_service import ResumeService
router = APIRouter(prefix="/resume", tags=["简历"])
@@ -15,7 +16,7 @@ async def upload_resume(file: UploadFile = File(...)):
user_id = RequestContext.user_id.get()
content = await file.read()
service = ResumeParseService()
service = ResumeService()
# 文件解析 + AI 结构化(不占数据库连接)
parsed = await service.parse_and_extract(file.filename, content)
# 短事务:只做数据库写入
@@ -23,3 +24,15 @@ async def upload_resume(file: UploadFile = File(...)):
async for session in get_db():
resume_id = await service.save_resume(session, user_id, file.filename, parsed)
return {"resumeId": resume_id}
class PolishParam(BaseModel):
content: list[str] = Field(..., description="待润色的简历段落文本数组")
@router.post("/polish", summary="AI润色简历段落")
async def polish_resume(param: PolishParam):
"""对前端提交的简历段落做表达层面的润色(格式/错字/表达),不改内容,返回等长数组"""
service = ResumeService()
result = await service.polish_paragraphs(param.content)
return {"content": result}