前两天,项目组开周会,我们后端组被老板点名了——“AI能力接得挺快,但你们这提示词里一堆让人晕的 JSON 字符串能不能整得优雅点?”
场面一度非常尴尬。
那一刻,我突然想起前几天翻 Spring AI 文档时瞄到的一句话:结构化输出(Structured Output)支持!
嘿,就是它了!今天这篇文章,我就用我昨天下午鼓捣了一下午的结果,跟你们聊聊这个“结构化输出转换器”是怎么一回事,有哪些玩法、用法、踩坑,适合谁用,不适合谁用。
结构化输出 API 是什么?
还记得你刚开始玩 AI 接口时,是不是一开始就让它直接输出文本?但随着业务需求上升,你很快就会遇到两个字:“结构”。
比如我要从 AI 那里拿到如下内容:

但如果只是简单提示词 + 纯文本,结果可想而知——字段名千奇百怪,格式松散,解析代码写得你怀疑人生。
Spring AI 正是为了解决这种混乱,引入了结构化输出(Structured Output)能力。它不再只是给你一堆文本,而是可以直接解析为 Java 对象、Map、List!这就是它的魔力。
可用的转换器有哪些?
Spring AI 提供了多个转换器(Converter),用于将 AI 输出的“自然语言”或“JSON格式文本”转换为结构化数据。以下是它支持的主要几种:

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



