文章目录
背景
大模型火热,Java如何与大模型交互,下班在家,在本地尝试下搭建模型,记录下来,方便备查。
项目环境
springBoot版本:3.x
JDK版本 : 17
搭建Deepseek本地模型,可参考博客【Deepseek得两种访问方式与本地部署】
第一步、新建项目
使用IDEA编辑器新建项目,
选择 springBoot项目
第二步、引入依赖
在pom 中引入 web、MySQL、lombok等依赖,如下所示。
<properties>
<java.version>17</java.version>
<spring-ai.version>1.0.0</spring-ai.version>
</properties>
<dependencies>
<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.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.22</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<scope>provided</scope>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-bom</artifactId>
<version>${spring-ai.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
第三步、添加配置文件
修改配置文件的类型,修改为【yaml】
使用的模型为deepseek,配置文件内容如下所示。
spring:
application:
name: learn-springai
ai:
ollama:
base-url: http://localhost:11434
chat:
model: deepseek-r1
第四步、设置客户端
新建configure文件,命名为 CommomConfiguration
代码如下所示
import org.springframework.ai.chat.client.ChatClient;
import org.springframework.ai.ollama.OllamaChatModel;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
* @auth wang
* @Date 2025/6/18 21:43
**/
@Configuration
public class CommomConfiguration {
@Bean
public ChatClient chatClient(OllamaChatModel model){
return ChatClient.builder(model).build();
}
}
第五步、设置访问端
新建controller文件,命名为ChatController
代码如下所示
import lombok.RequiredArgsConstructor;
import org.springframework.ai.chat.client.ChatClient;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @auth wang
* @Date 2025/6/19 22:02
**/
@RequiredArgsConstructor
@RestController
@RequestMapping("/ai")
public class ChatController {
private final ChatClient chatClient;
@RequestMapping("/chat")
public String chat(String str){
return chatClient.prompt().user(str).call().content();
}
}
第六步、启动与访问
项目启动,直接运行 Application 类文件,控制台打印如下所示,即说明项目访问成功。
在浏览器页面,输入【http://localhost:8080/ai/chat?str=你是谁?】,页面如下则说明访问成功!
异常处理
1、编译报错
错误信息:java: 警告: 源发行版 17 需要目标发行版 17
处理方案
1)检查pom中 JDK版本是否为17
JDK版本是否为17
<properties>
<java.version>17</java.version>
<spring-ai.version>1.0.0</spring-ai.version>
</properties>
2)检查项目结构中JDK版本
在【files文件】-【项目结构】-【项目设置】-【项目】,SDK版本是否为17,如下图所示。