SpringBoot整合Langchain4j

发布于:2025-07-25 ⋅ 阅读:(16) ⋅ 点赞:(0)

1.什么是LangChain4j

LangChain4j 是一个 Java 版本的类 LangChain 框架,旨在帮助 Java 开发者更容易地构建基于 LLM(大语言模型)的应用程序,比如智能问答、聊天机器人、搜索增强生成(RAG)等。很多初学者搞不懂LangChain4j、Spring AI、Spring Cloud Alibaba AI都分别是干什么的,以及有什么作用和区别,以下是AI展示,可直观的展现出来

特性/框架 LangChain4j Spring AI Spring Cloud Alibaba AI
所属组织 社区开源 Spring 官方 阿里云官方
模型支持 多种模型(OpenAI、Qianfan、Claude 等) OpenAI、Azure、HuggingFace、百度千帆等 阿里云百炼、通义千问
是否支持 Agent ✅ 支持 Agent/Memory/Chain 等概念 ❌ 暂不支持 Agent ✅ 支持 Agent 模型
Prompt 模板 ✅ 支持 ✅ 支持 ✅ 支持
向量检索/文档问答(RAG)支持 ✅ 支持 ✅ 支持 ✅ 支持
对接方式 注解式 + 接口式(@AiService) 注入式(ChatClient) 注入式(BailianClient)
与微服务整合 ⚠️ 弱(可自行扩展) ✅ 强 ✅ 非常强(天然集成 SpringCloud Alibaba)
功能复杂度 ⭐⭐⭐⭐(偏开发者) ⭐⭐⭐(对用户友好) ⭐⭐⭐⭐(偏企业应用)
适合场景 自定义复杂智能体/工具调用/文档问答等 快速接入大模型能力 企业微服务中使用阿里云 AI 能力

1.1 整合LangChain4j需要什么环境

Spring3.0以上,jdk版本17以上

2.相关依赖介绍

2.1:langchain4j-open-ai-spring-boot-starter

        <!--langchain4j起步依赖-->
        <dependency>
            <groupId>dev.langchain4j</groupId>
            <artifactId>langchain4j-open-ai-spring-boot-starter</artifactId>
            <version>1.0.1-beta6</version>
        </dependency>

2.2: langchain4j-spring-boot-starter

<dependency>
    <groupId>dev.langchain4j</groupId>
    <artifactId>langchain4j-spring-boot-starter</artifactId>
    <version>1.1.0-beta7</version>
</dependency>
✅ 1. 快速接入 LangChain4j 功能

该 starter 提供了开箱即用的自动配置支持,方便你在 Spring Boot 项目中使用 LangChain4j 实现 AI 助手、Agent、对话模型调用、链式调用、记忆管理、工具调用等功能

✅ 2. 简化配置和开发

无需手动配置 Bean、Client,只需要少量注解(如 @AiService)即可快速声明 AI 服务。

✅ 3. 集成常见的 LLM 服务

自动支持接入多个大型语言模型(LLM)提供商,包括:

  • OpenAI(gpt-3.5 / 4)

  • Azure OpenAI

  • Ollama / Local LLM

  • Langchain4j Memory、Tool、Retrieval 等核心组件

✅ 4. 自动扫描和注入 AI Service

通过 @AiService 注解,你可以像写普通接口一样声明 AI 能力,LangChain4j 会自动为你生成代理对象调用 AI 模型

3. Spring整合Langchain4j

pom文件:

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <!--langchain4j起步依赖-->
        <dependency>
            <groupId>dev.langchain4j</groupId>
            <artifactId>langchain4j-open-ai-spring-boot-starter</artifactId>
            <version>1.0.1-beta6</version>
        </dependency>

yml文件:

langchain4j:
  open-ai:
    chat-model:
      base-url: https://dashscope.aliyuncs.com/compatible-mode/v1
      api-key: ${API-KEY}
      model-name: qwen-plus

注意:base-url是阿里云百炼上的url

,api-key是阿里云百炼上的key,配置在了电脑中的用户环境变量中(如果是在idea打开之后配置的,配置完成之后一定要重启idea)

controller层:

@RestController
public class ChatController {

    @Resource
    private OpenAiChatModel openAiChatModel;

    @RequestMapping("/chat")
    public String chat(String message){
        String chat = openAiChatModel.chat(message)

网站公告

今日签到

点亮在社区的每一天
去签到