Spring AI 1.1 来了!Java 程序员的 AI 工具箱,这次直接「装满+扩容」!

79 阅读3分钟

📦 先看战绩

Spring AI 1.1 干了啥?
850+ 项改进
354 项新功能
241 个 bug 修复
100 处文档优化
23 项安全更新


🌟 五大「真香」新特性

1️⃣ MCP:让 AI 会「调工具」——像人类一样干活

以前:你写 Prompt → AI 生成代码 → 你手动查数据库/调 API
现在:直接告诉 AI:“去查用户天气”,它自己调你的 @McpTool

// ① 定义一个“查天气”工具(真实逻辑你写)
@McpTool
public String getCurrentWeather(String city) {
    return "🌧️ " + city + " 今天有阵雨,记得带伞~";
}

// ② 注入 AI Client(自动发现所有 @McpXxx)
@RestController
public class AiController {
    private final ChatClient chatClient;

    public String ask(String question) {
        // 用户问:"北京今天啥天气?"
        return chatClient.prompt()
                .system("你是个贴心天气助手,能调用工具查天气")
                .user(question)
                .call()
                .content();
        // ✅ 输出:"🌧️ 北京 今天有阵雨,记得带伞~"
    }
}

2️⃣ Prompt 缓存:成本直降 90%,老板看了想加薪!

Claude / Bedrock 的 Prompt 高价?Spring AI 1.1 给你「缓存大法」:

// 开启「系统消息+工具定义」缓存(TTL=1小时)
ChatClient chatClient = ChatClient.builder()
    .claude()
    .options(ClaudeChatOptions.builder()
        .cacheMode(ClaudeCacheMode.SYSTEM_AND_TOOLS) // 👈 关键!
        .cacheTtl(Duration.ofHours(1))
        .build())
    .build();
缓存策略成本降幅适用场景
NONE0%调试阶段
SYSTEM_ONLY~70%固定角色设定
TOOLS_ONLY~60%工具集稳定
SYSTEM_AND_TOOLS~90%✅ 推荐!标准 Agent 场景

💡 小算账:
以前 100 万 token ≈ ¥105(Claude)
现在 ≈ ¥10.5 → 省下的钱够团队吃两顿火锅 🍲


3️⃣ 自进化 Agent:让 AI 自己“卷”自己 🌀

新出的 RecursiveAdvisor —— 一个 AI 觉得答案不够好?自动喊另一个 AI 来优化!

@Bean
public RecursiveAdvisor selfImprovingAdvisor() {
    return RecursiveAdvisor.builder()
        .selfReflect(true)        // 开启自省
        .maxIterations(3)         // 最多卷 3 轮
        .build();
}

// 用户问:“写个冒泡排序,要优雅点”
// → 第 1 轮:基础版  
// → 第 2 轮:加注释 + 泛型  
// → 第 3 轮:换成 Stream API + 单元测试  
// ✅ 最终输出:“老板,这版够优雅了吗?” 😎

4️⃣ 新模型全家桶:Google / ElevenLabs 首次加盟!

模型厂商新增支持一句话亮点
GoogleGemini 2.0 Flash便宜 + 快 + 中文好
ElevenLabs文本转语音“你好呀~我是 Spring AI 的小助手!”(真人音质)
智谱GLM-4.6国产之光,中文理解强
OpenAIGPT-5 系列gpt-5-mini:又小又快

统一 TTS 接口示例(换供应商只需改一行!):

// 用 ElevenLabs 合成语音
TextToSpeechModel tts = new ElevenLabsTextToSpeechModel("xi-expressive");

byte[] audio = tts.generate("Spring AI 1.1 发布啦!"); // 🎵 输出 MP3 字节数组

✅ 以后需求会变成:
“这个接口返回语音,先用 ElevenLabs 试,上线前切成百度语音备胎”
—— Java 的优雅,就是配置驱动一切 🙌


5️⃣ 向量库 & 记忆升级:RAG 应用更稳更安全

  • MariaDB 向量存储:老项目不用换 DB
  • 只读 VectorStoreRetriever:防 RAG 被 prompt 注入攻击
  • MongoDB 聊天记忆:分布式环境 session 不丢
// 安全 RAG:只读向量检索(防篡改)
VectorStoreRetriever retriever = VectorStoreRetriever.builder()
    .vectorStore(mariaDbVectorStore)
    .similarityThreshold(0.7)
    .readOnly(true) // 👈 关键防护!
    .build();

🚀 一句话总结 Spring AI 1.1:

你想……Spring AI 1.1 给你……
降本✅ Prompt 缓存 → 省 90% 钱
增效✅ MCP 工具调用 → 少写 200 行胶水代码
稳定✅ 只读 RAG + 自动重试 → 上线不心慌
酷炫✅ 文本转语音 + 自进化 Agent → 汇报时全场鼓掌

“Spring AI 让 Java 再次伟大——这次,是带着 AI 的翅膀。” 🌟