【Spring AI】 1接入 Ollama实践
Spring AI 接入 Ollama 实践学习笔记
- Ollama 官方文档
- Spring AI 快速开始
- Spring AI Ollama 集成文档
1. pom.xml 依赖配置
前置条件: 请确保你已安装好 Java 17+、Maven、Ollama,并已下载好所需大模型。
在 pom.xml
中添加 Spring AI 及 Ollama 相关依赖:
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-starter-model-ollama</artifactId>
</dependency>
<!-- 数据库相关依赖 -->
<dependency><groupId>com.mysql</groupId><artifactId>mysql-connector-j</artifactId><scope>runtime</scope>
</dependency>
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
2. application.yml 基础配置
注意: 你必须在 yml 中指定 Ollama 的 base-url 和模型名称,否则后续无法正常调用。
spring:ai:ollama:base-url: http://localhost:11434 # Ollama 服务地址chat:options:model: deepseek-r1:7b # 必须指定模型名!temperature: 0.7datasource:url: jdbc:mysql://localhost:3306/yourdb?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTCusername: rootpassword: yourpassworddriver-class-name: com.mysql.cj.jdbc.Driver
ollama的所有配置选项参考文档
https://www.spring-doc.cn/spring-ai/1.0.0/api_chat_ollama-chat.html
3. Ollama 基础模型调用
前置条件: 你已完成 yml 配置,且 Ollama 服务和模型已启动。
// 查看已安装模型
ollama list // 运行指定模型
ollama run 模型名称
最基础的 AI 聊天接口实现:
@Autowired
private OllamaChatModel chatModel;@GetMapping("/chat/ai/generate")
public RestVO<String> generate(@RequestParam String message) {return RestVO.success(this.chatModel.call(message));
}
4. 流式对话接口实现
通过 text/event-stream
实现流式输出,提升用户体验:
@GetMapping(value = "/chat/ai/generateStream", produces = "text/event-stream;charset=UTF-8")
public Flux<ChatResponse> generateStream(@RequestParam String message) {List<Message> messageList = List.of(new UserMessage(message), new SystemMessage("中文回答"));Prompt prompt = new Promp