Appearance
Spring AI
NOTE
Spring AI 是 Spring 官方推出的 AI 集成框架,致力于让开发者像使用 Spring Data、Spring Cloud 一样,快速接入各类大语言模型服务。
1. Spring AI 能解决什么问题?
TIP
在传统企业应用中,接入 GPT、Baidu-ERNIE、阿里通义等多家大模型往往需要编写重复、零散的 HTTP SDK 代码。Spring AI 提供统一的 抽象层与自动配置能力,让你专注于业务而非底层接入细节。
传统做法 | Spring AI |
---|---|
手写模型 API 调用 | @Service 注入 ChatClient 即可 |
自行管理 Prompt | 提供 Prompt 工程与模板化能力 |
多模型切换困难 | 支持多厂商,通过配置即可切换 |
2. 典型业务场景
- 智能客服:结合向量检索实现 FAQ 解答。
- 代码辅助:在内网部署模型,做安全的代码补全。
- 报表分析:自然语言查询数据并生成图表。
调用流程示意
3. 快速上手(Kotlin 示例)
kotlin
// filepath: /demo/src/main/kotlin/com/example/ChatService.kt
package com.example
import org.springframework.ai.chat.ChatClient
import org.springframework.stereotype.Service
/**
* ChatService 展示如何通过 Spring AI 调用大模型。
*/
@Service
class ChatService(private val chatClient: ChatClient) {
fun ask(question: String): String {
// 调用大模型并直接返回回答
val response = chatClient.call(question)
return response.result
}
}
TIP
只要切换 application.yml
中的 spring.ai.openai.api-key
,即可从 OpenAI 换到 ERNIE、通义等,无需改动业务代码。