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

相关推荐
前端若水18 小时前
【无标题】
java·人工智能·python·机器学习
tongluowan00718 小时前
@Autowired 和 @Resource 有什么区别?
java·spring·bean
Maiko Star19 小时前
* SpringBoot整合LangChain4j
java·spring boot·后端·langchain4j
MandalaO_O19 小时前
MyBatis:核心概念 + 环境搭建 + CRUD
java·tomcat·mybatis
明月_清风19 小时前
Go语言空接口与类型断言完全指南:从"万能容器"到"类型还原"
后端·go
DN金猿19 小时前
spring.cloud.nacos.discovery.server-addr和spring.cloud.nacos.server-addr区别
java·开发语言·nacos·springcloud·sca
每天进步一点_JL19 小时前
Spring Boot 缓存体系
后端
百珏19 小时前
[灰度发布]:全链路透传组件:APM、自研方案与 Java Agent 的实现取舍
后端·设计模式·架构
正在走向自律19 小时前
DISTINCT 去重查询为什么这么慢?聊聊我能理解的几种优化思路
后端