如何让大模型稳定输出JSON格式数据

  1. prompt层面:首先在prompt中进行schema注入,写好输出示例并使用几组正负示例来规范模型输出。然后在prompt的末尾添加强约束进一步规范,或加校验指令,让模型自我校验格式是否正确。
  2. 模型层面:使用Structured Outputs,让模型每生成一个token都做语法校验,不符合json字符的语法禁止生成,最终生成预设的JSON结构。
  3. 代码层面的校验:对模型输出的JSON可以使用Pydantic、json.loads等方法校验json结构。除了对JSON结构的校验外,还可以针对实际业务,比如哪些json是必选字段但没生成、枚举值是否合法、嵌套结构是否完整等。
  4. 增加重试与降级策略:对于输出结构不对时,让模型结合报错信息重新生成,并追加更强约束的prompt。复杂 JSON 拆分为多个简单 JSON 分段生成,降低单轮生成难度。
  5. 对于工程化任务增加埋点进行观测,包括JSON 解析失败率、字段缺失率、重试次数、异常文本样本,根据这些异常去调整Prompt,对模型进行微调。
相关推荐
羊羊小栈1 天前
基于GraphRAG的税务财务智能问答系统(Neo4j_大语言模型)
人工智能·算法·语言模型·自然语言处理·毕业设计·neo4j·大作业
看-是灰机1 天前
使用go语言实现对接
linux·开发语言·后端·docker·语言模型·golang·飞书
大模型码小白2 天前
JAVA 集合框架进阶:List 与 Set 的深度解析与实战
java·开发语言·人工智能·windows·语言模型·list·ai编程
卖微积分的男孩2 天前
【论文精读】Tapered Language Models|锥形语言模型
人工智能·语言模型·自然语言处理
QN1幻化引擎2 天前
认知架构调度与语言模型辅助:DalinX V8 Track 1 实验报告
人工智能·语言模型·架构
大模型任我行2 天前
腾讯:预测散度掩码提升LLM强化学习
人工智能·语言模型·自然语言处理·论文笔记
phltxy2 天前
LangChain文本向量与检索器实践
人工智能·深度学习·语言模型·langchain
phltxy3 天前
LangChain从模型输出到RAG数据管道实战
服务器·人工智能·深度学习·语言模型·langchain
wish3663 天前
使用 Chainlit 调用 TextGen API + 本地 LLM 实现 RAG Chatbot 应用
人工智能·语言模型·自然语言处理·local llm
ck-joker3 天前
两个大模型同时翻车了--LLM应用A/B测试避坑实战
语言模型·ab测试