Files
offerpai_python_ai/app/ai/browser_plug/form_filler.py
T
2026-05-11 11:06:25 +08:00

36 lines
1.2 KiB
Python

"""表单填写 AI 生成模块
根据用户简历、岗位信息和表单字段,调 LLM 生成填写内容。
依赖:LLM 枚举、browser_plug/prompts
"""
from app.ai.browser_plug.prompts import FORM_FILL_SYSTEM_PROMPT
from app.ai.models import LLM
from app.core.logger import log
async def generate_form_answer(resume_text: str, job_text: str, agent_config_text: str,
label: str, reference: str | None, field_type: str) -> str:
"""生成表单字段的填写内容"""
system_content = FORM_FILL_SYSTEM_PROMPT.format(
resume_text=resume_text,
job_text=job_text,
agent_config_text=agent_config_text,
)
# 构造用户消息
user_parts = [f"表单字段:{label}", f"字段类型:{field_type}"]
if reference:
user_parts.append(f"参考信息:{reference}")
user_message = "\n".join(user_parts)
messages = [("system", system_content), ("human", user_message)]
try:
llm = LLM.DOUBAO_PRO_32K.create(temperature=0.3)
result = await llm.ainvoke(messages)
return result.content.strip()
except Exception as e:
log.error(f"表单填写AI调用失败: {e}")
raise ValueError("AI生成回答失败,请稍后重试")