大家好吖,我是你们 31 岁、还在持续折腾技术的小米。最近几天我沉迷了一件事------用 Spring AI + Azure OpenAI 做图像生成,越玩越停不下来。
你有没有这种感觉:
当年我们还在研究"怎么优化图片加载速度",结果现在直接一句 prompt,AI 就帮你把图画好。不仅会画,还会理解你的意图,甚至能帮你画得更好。
而且!Spring AI 真的太丝滑了,尤其是配合 Azure OpenAI 的图像能力(比如 DALL·E 3)------简直像你写一个配置,Spring 就帮你自动把"画图工具"接好。
这篇文章就带你从零开始,把 Azure OpenAI 图像模型接入 Spring Boot,跑通你的第一张 AI 图像生成!
坐稳啦,故事开始~
为什么我开始折腾 Azure OpenAI 图像模型?
前段时间,我有个朋友在做一个"智能家居装修灵感助手",需要给用户实时生成不同风格的客厅、厨房样例。当时他问我有没有简单点的 Java 接入方案。
我想了想:
- OpenAI 官方 SDK?也可以,但 Java 生态一般般。
- Azure OpenAI?企业级稳定性更好,也可以。
那整合方式呢?然后我突然想起 Spring AI。
我一试,哎哟我的天,简直 Java 程序员福音:
- 自动化配置
- 提供 ImageClient
- 能直接转模型响应
- 还能扩展模型参数
所以我就搞了一个 Demo,没想到越搞越爽,最后还生成了我家猫咪的"巴洛克风神像版本",今天就把全过程分享给你。
Azure OpenAI 图像模型简介:Java 党也能一行 prompt 出图
Azure OpenAI 的图像模型本体其实就是 OpenAI 的 DALL·E 系列,只是换成了 Azure 托管,可以绑定你的 Azure 密钥、计费方式、私有虚拟网络等能力。
可生成内容包括:
而 Spring AI 提供了一个很丝滑的封装------ImageClient。
你甚至可以直接这样调用:
imageClient.generate("画一个冲浪的橘猫");
它就会给你一张高质量图片。是不是感觉很爽?别急,我们继续装环境。
添加依赖:只需要一个 starter
如果你用的是 Maven,加入:
如果你是 Gradle:
implementation 'org.springframework.ai:spring-ai-azure-openai'
Spring AI 的理念非常一致:你加上 Starter,其他的它帮你自动装配好。
配置 Azure OpenAI 凭证:只需三行就能跑图像模型
在 application.yml 中加上:
最关键的是这两项:
Spring 看到这些配置后,就会自动创建一个 AzureOpenAiImageClient 给你使用。
小米第一次配置成功时,甚至还有点激动------Java 终于能轻松玩图像生成了!
AzureOpenAiImageOptions 可配置项
Spring AI 对 Azure 图像生成参数做了一层封装,就是 AzureOpenAiImageOptions。
我给你整理了一张清晰的表格:
关键点说明:
- size 越大,越清晰,计费也越高
- high 质量会增加费用
- 生成多张图 n>1 的时候要小心钱包
- b64_json 适合你要把图片存数据库或 OSS 时使用
这一层封装比直接调用 Azure API 清爽太多了。
调用 ImageClient:写出你的第一张 AI 图片
核心代码非常简单。
1. 注入 ImageClient
Spring 会自动选择 AzureOpenAiImageClient。
2. 发起文生图请求
最简版(小米最常用):
进阶版(带可选参数):
3. 拿到结果
点开就是生成的图像!我第一次看到自己的 prompt 变成图像时,真的有点震撼。科技的进步,比我头发掉得还快。
Java 玩图像生成,很舒服了
如果你是 Java 后端工程师,可能以前觉得"生成图片""这些都是前端或 Python 的活"。但 Spring AI + Azure OpenAI 出来之后,这个局面真的变了。
你可以:
- 给你的业务系统加入自动生成插画
- 给用户生成定制头像(比如"赛博朋克风的我")
- 生成装修图、产品海报、广告样机
- 甚至为内部系统生成自动 PPT 封面图
- 结合聊天模型做 Prompt 迭代,生成更精准图片
而所有这些,只要你写过 Spring Boot,就能立刻上手。
结语:别错过 Spring AI 这波红利
如果你之前没接触过 AI 模型,你可能会觉得"AI 开发好麻烦"。但 Spring AI 的出现,把这一切变成了简单的"写配置 + 调方法"。
Java 的 AI 生态正在从"没人做"迈向"谁都能用",而 Azure OpenAI 的企业级稳定性,更是让它可以放心上正式环境。
我现在已经给我们团队内部搞了好几个 Demo:
- 自动生成文章封面
- 帮产品经理生成界面草图
- 让后台系统根据日志生成图形化解释图
每个都被夸到飞起。
END
我是小米,一个喜欢分享技术的31岁程序员。如果你喜欢我的文章,欢迎关注我的微信公众号"软件求生",获取更多技术干货!








