Spring AI 集成 Ollama,完成 DeepSeek 对接
·
一、Spring AI 对接 Ollama
1、创建springboot项目
spring initialiar 官网:https://start.spring.io/,通过官网,快速生成工程
spring ai 官网:Ollama Chat :: Spring AI Reference
注意:
jdk >= 17
spring boot 推荐 3.3.x 版本

2、引入依赖
<properties>
<java.version>17</java.version>
<spring-ai.version>1.0.0-M6</spring-ai.version>
</properties>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-ollama-spring-boot-starter</artifactId>
<version>${spring-ai.version}</version>
</dependency>
3、配置
server:
port: 8080
spring:
ai:
ollama:
init:
pull-model-strategy: always
timeout: 60s
max-retries: 1
base-url: http://127.0.0.1:11434
chat:
options:
model: deepseek-r1:7b
4、Sample Controlle
- 创建实现类 LangChainController 文件。
package com.xdrs.st.controller;
import org.springframework.ai.chat.messages.UserMessage;
import org.springframework.ai.chat.model.ChatResponse;
import org.springframework.ai.chat.prompt.Prompt;
import org.springframework.ai.ollama.OllamaChatModel;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import reactor.core.publisher.Flux;
import java.util.Map;
@RestController
public class LangChainController {
@Autowired
private OllamaChatModel chatModel;
@GetMapping("/ai/generate")
public Map<String,String> generate(@RequestParam(value = "message", defaultValue = "Tell me a joke") String message) {
return Map.of("generation", this.chatModel.call(message));
}
@GetMapping("/ai/generateStream")
public Flux<ChatResponse> generateStream(@RequestParam(value = "message", defaultValue = "Tell me a joke") String message) {
Prompt prompt = new Prompt(new UserMessage(message));
return this.chatModel.stream(prompt);
}
}
- 启动后台服务
- 打开浏览器访问,验证

备注:实现spring ai 前提是 ollama 环境安装完成,没有问题方可使用。

更多推荐



所有评论(0)