搭建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项目,更多的是配置有问题。

相关推荐
lee_curry5 小时前
第四章 jvm中的垃圾回收器
java·jvm·垃圾收集器
QQ1__8115175156 小时前
Spring boot名城小区物业管理系统信息管理系统源码-SpringBoot后端+Vue前端+MySQL【可直接运行】
前端·vue.js·spring boot
小码哥_常6 小时前
解锁AI编程密码:程序员常用的10个AI提示词
后端
九转成圣7 小时前
Java 性能优化实战:如何将海量扁平数据高效转化为类目字典树?
java·开发语言·json
直奔標竿7 小时前
Java开发者AI转型第二十七课!Spring AI 个人知识库实战(六)——全栈闭环收官,解锁前端流式渲染终极技巧
java·开发语言·前端·人工智能·后端·spring
金銀銅鐵8 小时前
[java] 编译之后的记录类(Record Classes)长什么样子(上)
java·jvm·后端
uzong9 小时前
我研读了 500 个 Spring Boot 生产级代码库,90% 都犯了这 7 个致命错误
后端
野生技术架构师9 小时前
金三银四面试总结篇,汇总 Java 面试突击班后的面试小册
java·面试·职场和发展
xiaobaoyu9 小时前
ssm知识点梳理
后端