Java 终于有了自己的 AI 框架:Spring AI 2.0 一行注入搞定 GPT / Claude / Gemini

4 阅读5分钟
> 本文已收录到 [AI编程一站式导航](https://ai80.net)。本文链接:[03.9 2026 年最佳 AI 编码工具完全指南]
(https://code.ai80.vip/ai-tool-guides/03.9 2026 年最佳 AI 编码工具完全指南)
> 强烈推荐:AI编程巴士网站:[稳定纯净的ClaudeCode套餐供应](https://code.ai80.vip/home);

Java 终于有了自己的 AI 框架:Spring AI 2.0 一行注入搞定 GPT / Claude / Gemini

Spring AI 2.0 接入 AI 大模型完全指南:Java 开发者从零到生产(2026)

Python 玩 AI 快、生态好,Java 只能看着?

2026 年,这个说法该被推翻了。

Spring 官方推出了 Spring AI 2.0,就是 Spring Boot 同级别的一等公民,不是什么社区项目。3 月 26 日刚发了 2.0.0-M4。

它的逻辑很简单:你会 Spring Boot,你就会 Spring AI。 自动配置、依赖注入、application.yml,全是你熟悉的套路。

一行代码调大模型长什么样

@RestController
public class ChatController {
    private final ChatClient chatClient;

    public ChatController(ChatClient.Builder builder) {
        this.chatClient = builder.build();
    }

    @GetMapping("/chat")
    public String chat(@RequestParam String message) {
        return chatClient.prompt(message).call().content();  // 就这一行
    }
}

看懂了吗?就这样。

配置文件里填三行:

spring:
  ai:
    openai:
      api-key: ${API_KEY}
      base-url: https://api.ofox.ai
      chat:
        options:
          model: anthropic/claude-opus-4.6

跑起来。

2.0.0-M4 的几个关键变化

升级了基础设施:Spring Boot 4.0 + Spring Framework 7.0,最低 Java 17,推荐 21。原来是自己封装 HTTP,现在直接集成 OpenAI 官方 Java SDK。

结构化输出变简单了:以前让 AI 返回 JSON 然后手动解析,现在一行搞定:

MovieList result = chatClient.prompt("推荐 3 部科幻电影")
    .call()
    .entity(MovieList.class);  // 直接映射成你的 Java 对象

不需要写 JSON Schema,不需要处理解析失败,Spring AI 全帮你搞定了。

Agent Skills 系统:AI Agent 可以按需加载能力模块。加上 A2A 协议,多个 AI Agent 之间可以相互协作。

流式输出:打字机效果,四行实现

@GetMapping(produces = MediaType.TEXT_EVENT_STREAM_VALUE)
public Flux<String> stream(@RequestParam String message) {
    return chatClient.prompt(message)
        .stream()
        .content();
}

stream() 返回 Flux<String>,Spring WebFlux 自动转成 SSE 流推给前端。

不是 10 秒等一个完整回答,是 300ms 就出第一个字,然后像打字机一样逐字出现。

Function Calling:让模型调你的 Java 方法

定义一个 Bean,加个注解,就完事:

@Bean
@Description("查询指定城市的实时天气信息")
public Function<WeatherRequest, WeatherResponse> getWeather() {
    return request -> {
        // 实际调用天气 API
        return new WeatherResponse(request.city(), "晴", 26, "东南风 3 级");
    };
}

注册到 ChatClient:

return chatClient.prompt("杭州今天天气怎么样")
    .tools("getWeather")
    .call()
    .content();

Spring AI 自动处理:把工具定义发给模型 → 模型决定调哪个 → Spring AI 调你的 Java 方法 → 结果回传给模型 → 模型生成回答。

你的代码只负责写工具逻辑,调用编排全自动。

多模型切换:改一个参数就行

这是 Spring AI + API 聚合平台组合起来最爽的地方。

base-url 改成聚合平台地址,不同模型只是 model 参数的差异:

@GetMapping("/with-model")
public String chatWithModel(
    @RequestParam String message,
    @RequestParam(defaultValue = "anthropic/claude-opus-4.6") String model
) {
    return chatClient.prompt(message)
        .options(OpenAiChatOptions.builder().model(model).build())
        .call()
        .content();
}
# 切 Claude
curl "localhost:8080/api/chat?model=anthropic/claude-opus-4.6&message=你好"
# 切 GPT-5.4
curl "localhost:8080/api/chat?model=openai/gpt-5.4&message=你好"
# 切 Gemini
curl "localhost:8080/api/chat?model=google/gemini-3.1-pro&message=你好"

代码一行不改,只有 model 参数在变。

不同模型适合什么场景:

模型模型 ID用来干什么
Claude Opus 4.6anthropic/claude-opus-4.6复杂推理、代码生成天花板
Claude Sonnet 4.6anthropic/claude-sonnet-4.6日常均衡,性价比最优
GPT-5.4openai/gpt-5.4通用对话、工具调用最稳
Gemini 3.1 Progoogle/gemini-3.1-pro超长文档(2M 上下文)
DeepSeek V4deepseek/deepseek-chat-v4中文理解、成本低

生产环境别忘了这几件事

超时和重试:

spring:
  ai:
    openai:
      chat:
        options:
          connect-timeout: 10s
          read-timeout: 120s
      retry:
        max-attempts: 3
        backoff:
          initial-interval: 1s
          multiplier: 2

限流(防滥用):

private final Semaphore semaphore = new Semaphore(10); // 最多 10 个并发

if (!semaphore.tryAcquire()) {
    return ResponseEntity.status(429).body("服务繁忙,请稍后重试");
}

Docker 部署:

FROM eclipse-temurin:21-jre-alpine
COPY target/*.jar app.jar
ENV OFOX_API_KEY=""
EXPOSE 8080
ENTRYPOINT ["java", "-jar", "app.jar"]

API Key 安全:永远用环境变量,不要硬编码。

CLI 工具怎么配合

开发这套 Java 项目时,不同工具有不同分工:

Claude Code 适合深度理解复杂 Java 代码库——跨文件追踪调用链、理解 Spring IoC 容器的依赖关系,底层走 Opus 4.6,这类长链路推理正好是它的强项。

Codex CLI 适合跑日常 Maven/Gradle 命令、生成单元测试脚本,OpenAI 兼容接口,命令行工作流顺畅。

Gemini CLI 处理超长上下文——需要一次性把整个项目文档或 Javadoc 带进来分析时,2M 上下文有优势。

国内接入这几个工具,Code80 把 Claude Code、Codex CLI、Gemini CLI 的安装教程都整理好了,一个 Key 统一管理,省去分别折腾的麻烦。

常见报错速查

报错原因解决
401 UnauthorizedAPI Key 无效检查 Key 是否过期
404 Not Found模型 ID 写错确认格式(如 anthropic/claude-opus-4.6
429 Too Many Requests超频率限制降并发,或升级套餐
Connection timed out网络问题检查 base-url 是否正确
No bean of type ChatClient缺少依赖确认引入了 spring-ai-openai-spring-boot-starter

值得现在就上手

Spring AI 2.0 正式版预计 2026 年中发布。现在用 M4 版本,等 GA 发布时你已经是老手了。

如果你写过 Spring Boot,这个框架的学习成本接近零。AI 调用从今天起就可以和普通 Controller 一样优雅。

> 本文已收录到 [AI编程一站式导航](https://ai80.net)。本文链接:[03.9 2026 年最佳 AI 编码工具完全指南]
(https://code.ai80.vip/ai-tool-guides/03.9 2026 年最佳 AI 编码工具完全指南)
> 强烈推荐:AI编程巴士网站:[稳定纯净的ClaudeCode套餐供应](https://code.ai80.vip/home);