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

相关推荐
苍何4 小时前
开源微信流 Windows,微信聊天记录,可以直接给 Codex 和 Obsidan 了
后端
代码什么用5 小时前
Spring基础使用
java·后端·spring
Su米苏6 小时前
Spring AI 中MCP 与普通 @Tool的区别
java·人工智能·spring
明月_清风6 小时前
Deno 终局来了:从挑战 Node 到被 Cloudflare 收编
前端·后端·node.js
码云数智-园园6 小时前
unique_ptr 还是 shared_ptr?C++ 智能指针选型与内存泄漏实战分析
java·开发语言
老板一杯拿铁6 小时前
Java 异常体系详解:从字节码原理到最佳实践
java
蜗牛互联网6 小时前
Java 17 HttpClient调用文件转写API的超时与失败回退
java·人工智能·后端
禾小西7 小时前
07丨Redis 哨兵机制:主库故障后,如何恢复服务?
java·开发语言·redis
我不是阵雨7 小时前
JDK 21虚拟线程Pinning陷阱:一文拔钉解困
java·开发语言
小卡车5557 小时前
java反射、自定义注解的应用(自定义分页)
java