Spring AI 从入门到精通-5 分钟跑起来:你的第一个 AI 应用

Spring AI 从入门到精通-5 分钟跑起来:你的第一个 AI 应用 2. 5 分钟跑起来你的第一个 AI 应用2.1 准备工作你只需要三样东西JDK 17Spring Boot 3.x 的最低要求一个 OpenAI API Key去 platform.openai.com 注册大概 5 分钟一个 IDEIntelliJ IDEA 社区版就够没钱充 API装个 Ollama下载llama3.2模型本地跑完全免费。后面会讲怎么配置。2.2 创建项目去 start.spring.io勾选Spring WebOpenAI在 AI Models 分类下或者直接用这个链接一键生成Spring Initializr with Spring AI2.3 配置 API Keysrc/main/resources/application.propertiesspring.application.namespring-ai-demo spring.ai.openai.api-key${OPENAI_API_KEY}安全提醒不要把 API Key 硬编码在 properties 文件里。用环境变量${OPENAI_API_KEY}或者在启动时传-Dspring.ai.openai.api-keysk-xxx。如何设置环境变量macOS / Linux在终端执行export OPENAI_API_KEYsk-xxx然后启动应用Windows (CMD)set OPENAI_API_KEYsk-xxxIntelliJ IDEARun → Edit Configurations → Environment Variables添加OPENAI_API_KEYsk-xxx如果你在国内直接调 OpenAI API 可能超时。两种方案① 配置 HTTP 代理② 换成国内厂商模型智谱 AI、通义千问或用 Ollama 本地跑。Spring AI 支持这些换依赖和配置就行代码不用改。2.4 写代码packagecom.example.springaidemo;importorg.springframework.ai.chat.client.ChatClient;importorg.springframework.boot.CommandLineRunner;importorg.springframework.boot.SpringApplication;importorg.springframework.boot.autoconfigure.SpringBootApplication;importorg.springframework.context.annotation.Bean;SpringBootApplicationpublicclassSpringAiDemoApplication{publicstaticvoidmain(String[]args){SpringApplication.run(SpringAiDemoApplication.class,args);}BeanCommandLineRunnerrunner(ChatClient.Builderbuilder){returnargs-{ChatClientchatClientbuilder.build();StringresponsechatClient.prompt().user(用一句话解释什么是 Spring AI).call().content();System.out.println(response);};}}2.5 跑起来./mvnw spring-boot:run你应该看到类似这样的输出Spring AI 是 Spring 生态中的一个应用框架它提供可移植的 API 和抽象 让 Java 开发者能够轻松地将 AI 模型如聊天、嵌入、图像生成等集成到 Spring Boot 应用中。2.6 发生了什么OpenAI APIChatModelChatClient你的应用OpenAI APIChatModelChatClient你的应用prompt().user(问题).call().content()构建 Prompt 对象HTTP POST /v1/chat/completionsJSON 响应ChatResponse 对象提取文本内容 (String)关键点ChatClient是门面你用它的流式 API 构建请求ChatModel是抽象负责跟具体的 AI 服务通信call().content()是同步调用拿到String结果2.7 如果你用 Ollama免费本地模型装好 Ollama 并下载模型后ollama pull llama3.2项目依赖改成dependencygroupIdorg.springframework.ai/groupIdartifactIdspring-ai-starter-model-ollama/artifactId/dependency配置spring.ai.ollama.base-urlhttp://localhost:11434 spring.ai.ollama.chat.options.modelllama3.2代码完全不用改。这就是 Spring AI 的可移植性。