背景
随着 AI 大模型的兴起,许多公司希望在现有基于 Java 8 的项目中集成 AI 功能。然而,许多最新的 AI 工具和库(如:Spring AI LangChain4j)已经转向支持更高版本的 Java(如 JDK 17),这给希望在 Java 8 环境中工作的开发者带来了挑战。看网上很多都没有关于JDK8相关资料,本文将提供一个解决方案,展示如何在 Java 8 环境下,使用 Spring Boot 框架集成 LangChain4j,并通过 Ollama 调用本地大模型。
提示
好多框架现在都是基于JDK17的,如spring AI 、 LangChain4j 的 0.31.0 之后的版本将不在支持Java jdk1.8,由于AI版本的更新迭代比较频繁,这也意味着我们的项目也要紧跟时代的潮流基于17来开发。
1. 环境准备
确保你的开发环境已安装以下工具:
Java JDK 1.8:确保你的项目使用的是 Java 8。
Maven:用于项目依赖管理。
Spring Boot:用于构建应用程序。
Ollama:本地大模型服务。
deepseek-r1:1.5b:系统资源有限就按照这个模型了。
2. 安装 Ollama
首先,确保你已经安装了 Ollama。你可以从 Ollama 官网 下载并安装 Ollama。
下载并安装你选择的模型,例如 DeepSeek-r1:1.5b:
ollama run deepseek-r1:1.5b
我这window的系统 如下效果,安装我就不介绍了,大家都会。
3. 添加LangChain4j maven 依赖
<dependency><groupId>dev.langchain4j</groupId><artifactId>langchain4j-core</artifactId><version>0.31.0</version></dependency><dependency><groupId>dev.langchain4j</groupId><artifactId>langchain4j-ollama</artifactId><version>0.31.0</version></dependency>
这里我就省略了其他spring boot 相关依赖了
4. 给spring注入bean LangChain4j
@Configuration
public class LangChain4jConfig {@Bean
public ChatLanguageModel chatLanguageModel() {return OllamaChatModel.builder().baseUrl("http://localhost:11434").modelName("deepseek-r1:1.5b").build();}
}
http://localhost:11434 这是我们ollama的服务地址
deepseek-r1:1.5b 这是我们需要使用的模型
上面的这些你们自己可以写到springboot的核心配置文件里,我有点懒,就不了 只是演示下
4. 写一个Controller演示一下
@RestController
public class ChatController {@Autowiredprivate ChatLanguageModel chatLanguageModel;@GetMapping("/chat")public String chat(@RequestParam(value = "message", defaultValue = "Hello") String message) {return chatLanguageModel.generate(message);}
}