SpringBoot整合LangChain4j
时间: 2025-05-21 07:32:37 浏览: 51
### Spring Boot 整合 LangChain4j 的教程
#### 项目初始化
通过 **Spring Initializr** 创建一个新的 Spring Boot 项目,确保选择以下依赖项来支持必要的功能[^1]:
- `Spring Web`:用于构建 RESTful API 和处理 HTTP 请求。
- `Lombok`(可选):简化 Java Bean 的开发过程。
完成项目创建后,将其导入到 IDE 中并验证环境配置是否正常运行。
#### 添加 LangChain4j 依赖
为了在 Spring Boot 应用程序中使用 LangChain4j 功能,需修改项目的 `pom.xml` 文件以引入相应的 Maven 依赖。以下是典型的依赖声明:
```xml
<dependency>
<groupId>com.langchain4j</groupId>
<artifactId>langchain4j-core</artifactId>
<version>0.9.0</version> <!-- 版本号可能随时间更新 -->
</dependency>
<!-- 如果需要 OpenAI 支持,则还需添加以下依赖 -->
<dependency>
<groupId>com.langchain4j</groupId>
<artifactId>langchain4j-openai</artifactId>
<version>0.9.0</version>
</dependency>
```
这些依赖允许开发者轻松调用 LangChain4j 提供的功能以及对接像 GPT 这样的 AI 大模型服务[^2]。
#### 配置 OpenAI API 密钥
LangChain4j 可与多个大语言模型交互,在此我们以 OpenAI 的 GPT 模型为例展示具体设置方式。首先获取自己的 OpenAI API Key 并保存至系统的环境变量或者应用属性文件当中。推荐做法是在 `application.properties` 或者 `application.yml` 文件里定义如下参数:
对于 `.properties` 格式的配置文件:
```properties
openai.api.key=your_openai_api_key_here
```
而对于 YAML 格式则可以这样写:
```yaml
openai:
api:
key: your_openai_api_key_here
```
接着编写一段简单的代码读取该密钥值以便后续传递给 LangChain4j 实例化对象时使用。
#### 编写 Controller 层逻辑
下面给出一个基于 RestController 的例子演示如何发起请求并通过 LangChain4j 调用远程 LLM 完成对话任务。
```java
import com.langchain4j.chain.ConversationalRetrievalChain;
import com.langchain4j.data.message.AIMessage;
import com.langchain4j.data.message.HumanMessage;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping("/api/chat")
public class ChatController {
@Value("${openai.api.key}")
private String openAiApiKey;
@PostMapping
public AIMessage sendMessage(@RequestBody HumanMessage humanMessage) {
// 初始化链路实例 (此处省略部分细节)
ConversationalRetrievalChain chain = new ConversationalRetrievalChain.Builder()
.withOpenAIApiKey(openAiApiKey)
.build();
return chain.call(humanMessage);
}
}
```
以上片段展示了接收前端传来的消息体之后立即转发查询给指定的大规模预训练模型,并返回其响应结果作为最终答复的过程[^1]。
#### 测试接口有效性
启动应用程序后可通过 Postman 工具或者其他类似的客户端工具发送 POST 请求测试刚才建立的服务端点工作情况。假设服务器地址为 localhost:8080 ,那么完整的 URL 就应该是 http://localhost:8080/api/chat 。记得按照预期格式准备 JSON 数据包提交过去即可获得即时反馈信息啦!
---
阅读全文
相关推荐









