1. 项目概述
最近AI技术发展迅猛,各种AI框架层出不穷。作为一名Java开发者,我一直在探索如何将AI能力集成到Spring Boot应用中。经过多次尝试,终于成功实现了一个基于Spring Boot 3 + LangChain4j + Vue的本地AI编程助手项目。这个项目最大的特点是可以调用本地部署的Ollama大模型,避免了依赖云端API带来的延迟和费用问题。
在开发过程中,我踩了不少坑,也积累了一些经验。本文将详细介绍整个项目的搭建过程、核心功能实现以及遇到的问题和解决方案。无论你是想学习AI集成,还是对LangChain框架感兴趣,相信这篇文章都能给你带来帮助。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 环境准备
2.1 开发环境配置
我的开发环境配置如下:
- 操作系统:macOS 15.7
- IDE:IntelliJ IDEA最新版
- Java版本:JDK 21
- Spring Boot版本:3.5.11
选择Java 21是因为LangChain4j框架最低要求Java 17,而21是目前最新的LTS版本,性能更好且更稳定。Spring Boot选择了3.5.11这个稳定版本,避免使用太新的版本可能带来的兼容性问题。
2.2 项目初始化
使用IDEA创建Spring Boot项目非常简单:
- 选择Spring Initializr
- 填写项目基本信息
- 选择Java 21作为SDK版本
- 添加必要的依赖:
- Spring Web:提供Web开发支持
- Lombok:简化代码编写
- Spring Boot DevTools:开发工具支持
提示:建议使用yaml格式的配置文件,相比properties文件更清晰易读。
3. LangChain4j集成
3.1 添加依赖
LangChain4j提供了多种集成方式,我们需要在pom.xml中添加以下核心依赖:
xml复制<dependency>
<groupId>dev.langchain4j</groupId>
<artifactId>langchain4j-ollama</artifactId>
<version>1.11.0</version>
</dependency>
<dependency>
<groupId>dev.langchain4j</groupId>
<artifactId>langchain4j-spring-boot-starter</artifactId>
<version>1.11.0-beta19</version>
</dependency>
<dependency>
<groupId>dev.langchain4j</groupId>
<artifactId>langchain4j-ollama-spring-boot-starter</artifactId>
<version>1.11.0-beta19</version>
</dependency>
这些依赖分别提供了:
- LangChain4j与Ollama的集成
- Spring Boot自动配置支持
- Ollama与Spring Boot的深度集成
3.2 配置Ollama模型
在application.yml中配置Ollama模型参数:
yaml复制langchain4j:
ollama:
chat-model:
base-url: http://localhost:11434
model-name: deepseek-r1:14b
log-requests: true
log-responses: true
temperature: 0.7
timeout: 6
