搭建langchain4j+SpringBoot的Ai项目

一.环境准备

对于搭建ai项目,首先我们得准备好一个适合ai项目的环境。

1.jdk:需要使用17以及以上的版本

2.springBoot:3.0及以上

3.大模型key: 使用大模型开发需在阿里云百炼平台申请API key

二.项目依赖

java 复制代码
       <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>dev.langchain4j</groupId>
            <artifactId>langchain4j-community-dashscope-spring-boot-starter</artifactId>
            <version>1.1.0-beta7</version>
        </dependency>

首先使用了springBoot的依赖,并且引入langchain4j的依赖,为了方便学习,我们使用的是阿里的社区版langchain4j。

三.实战开发

在这里我们引入了langchain4j框架,对里面的对话模型进行了测试。创建一个类。

1.application配置文件,配置在百炼大模型平台申请的api-key

java 复制代码
spring:
  application:
    name: aiHelper
  profiles:
    active: local
langchain4j:
  community:
    dashscope:
      chat-model:
        model-name: qwen-max
        api-key: <You API Key here>
            

2.创建aiHelper类

里面使用引入qwenModel对输入的内容进行内容生成。

java 复制代码
package com.example.aihelper.ai;

import dev.langchain4j.data.message.AiMessage;
import dev.langchain4j.data.message.UserMessage;
import dev.langchain4j.model.chat.ChatModel;
import dev.langchain4j.model.chat.response.ChatResponse;
import jakarta.annotation.Resource;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;

/**
 * @author zhou
 * @version 1.0
 * @description TODO
 * @date 2025/9/13 19:57
 */
@Service
@Slf4j
public class AiHelper {
    @Resource
    private ChatModel qwenChatModel;
    public String chat(String messages){
        UserMessage userMessage = UserMessage.from(messages);
        ChatResponse chatResponse = qwenChatModel.chat(userMessage);
        AiMessage aiMessage = chatResponse.aiMessage();
        log.info("Ai 输出:"+aiMessage.toString());
        return aiMessage.text();
    }
}

3.在test包下进行测试

java 复制代码
package com.example.aihelper;

import com.example.aihelper.ai.AiHelper;
import jakarta.annotation.Resource;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;

@SpringBootTest
class AiHelperApplicationTests {

    @Resource
    private AiHelper aiHelper;

    @Test
    void chat() {
        aiHelper.chat("您好,下半年广东附近有哪些马拉松比赛");
    }
}

四.遇到的问题

测试类启动加载失败:

junit包找不到方法

可能是maven仓库的原因,目前使用的3.8.6。第一次尝试搭建ai项目,更多的是配置有问题。

相关推荐
WX-bisheyuange1 小时前
基于Spring Boot的民宿预定系统的设计与实现
java·spring boot·后端·毕业设计
码界奇点1 小时前
Java设计模式精讲从基础到实战的常见模式解析
java·开发语言·设计模式·java-ee·软件工程
卷福同学2 小时前
【AI编程】用Codebuddy+lighthouse开发AI年龄模拟网站
javascript·后端
5***79002 小时前
后端API设计趋势,GraphQL与REST对比
后端·graphql
桜吹雪2 小时前
手搓一个简易Agent
前端·人工智能·后端
William_cl2 小时前
【ASP.NET进阶】Controller层核心:Action方法全解析,从基础到避坑
后端·asp.net
q***9443 小时前
springboot接入deepseek深度求索 java
java·spring boot·后端
诗9趁年华3 小时前
深入分析线程池
java·jvm·算法
百***06013 小时前
SpringBoot的@Scheduled和@Schedules有什么区别
java·spring boot·spring
喵了几个咪3 小时前
使用Bazel构建你的Kratos微服务
java·运维·微服务