LangChain-结构化输出与修复解析
- 定义 Pydantic 模型描述目标字段。
- 用
PydanticOutputParser生成解析器,并把format_instructions注入提示词。 - 将模型文本解析为对象,再按需转为字典或 JSON。
python
parser = PydanticOutputParser(pydantic_object=UserInfo)
prompt = PromptTemplate(
template=template,
partial_variables={
"format_instructions": parser.get_format_instructions(),
},
)格式错误时,OutputFixingParser 调用模型修复,再交给原解析器处理:
python
fixing_parser = OutputFixingParser.from_llm(
parser=parser,
llm=model,
max_retries=3,
)