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

相关推荐
青山木1 小时前
Hot 100 --- 岛屿数量
java·数据结构·算法·leetcode·深度优先·广度优先
嘉伟桑1 小时前
Python调用电价API返回JSON示例:分时电价、现货电价和字段解析
后端
程序员-珍1 小时前
报错下载android sdk失败
android·java
武子康1 小时前
Shippy:确定性工具、会话级 Sandbox 与 Live-Data Eval(4 类收敛 + 7 步实现方案 + 6 类评测指标)
前端·人工智能·后端
糖果店的幽灵1 小时前
langgraph分支之 - 动态分支(Dynamic Branch)
java·前端·javascript·人工智能·langgraph
我叫黑大帅2 小时前
我为什么单一消费者的场景下,要用 Redis List 当消息队列?
redis·后端·面试
吃饱了得干活2 小时前
亿级订单表分库分表设计,从0到1全流程
java·数据库·面试
AskHarries2 小时前
文件上传系统
后端
唐青枫2 小时前
Java Spring Security 实战详解:从登录认证到 JWT 权限控制
java
曹牧2 小时前
文档格式:OFD
java