Spring AI学习 程序接入大模型(框架接入)

终于来到了使用框架来接入大模型,这里我们使用两个流行的框架来接入大模型:

Spring AI:基于 Spring 生态系统的 AI 框架

LangChain4j:专注于构建 LLM 应用的 Java 框架,提供丰富的 AI 调用组件

Spring AI

首先就是我们常见的spring家族的新成员,Spring AI,旨在简化 AI 功能与 Spring 应用的集成。他集成了多种模型和各种AI常用的特性,比如RAG知识库、Tools 工具调用和 MCP 模型上下文协议,简化了AI的应用开发。

话不多说,直接快速开始:

引入依赖

复制代码
<dependency>
    <groupId>com.alibaba.cloud.ai</groupId>
    <artifactId>spring-ai-alibaba-starter</artifactId>
    <version>1.0.0-M6.1</version>
</dependency>

编写配置:

复制代码
spring:
  application:
    name: TT-ai-agent
  ai:
    dashscope:
      api-key: ${DASHSCOPE_API_KEY}
      chat:
        options:
          model: qwen-plus

编写示例代码:

复制代码
@Component
public class SpringAiAiInvoke implements CommandLineRunner {
    @Resource
    private ChatModel dashscopeChatModel;

    @Override
    public void run(String... args) throws Exception {
        AssistantMessage output = dashscopeChatModel.call(new Prompt("你好 我现在正在学习spring ai 你可以给我一些学习建议吗"))
                .getResult().getOutput();
        System.out.println(output.getText());
    }
}

这里简单说一下spring boot中的CommandLineRunner 接口,它是一个函数式接口,用于在Spring Boot应用程序启动后执行一些初始化操作。它提供了一个run方法,该方法在应用程序启动后被调用。

上述代码中我们是通⁠过 ChatModel 对象调用大模型,适合简单‌的对话场景。后续我们会学到ChatClient 调用方式,提供更‎多高级功能,比如会话记忆等,适合复杂的场景。

启动项目:

LangChain4j

同样引入依赖:

复制代码
<dependency>
    <groupId>dev.langchain4j</groupId>
    <artifactId>langchain4j-community-dashscope</artifactId>
    <version>1.0.0-beta2</version>
</dependency>

编写代码:

复制代码
public class Langchain4jAiInvoke {
    public static void main(String[] args) {
        QwenChatModel build = QwenChatModel
                .builder()
                .apiKey("sk-XXXXXXXXXXXXXX").modelName("qwen-max").build();
        String chat = build.chat("hello i am bbtat how are you");
        System.out.println(chat);
    }
}

执行结果:

从上面我们可以发现,使用框架实现程序接入大模型,代码更加整洁,清晰易懂。

相关推荐
ACCELERATOR_LLC几秒前
【DataWhale组队学习】DIY-LLM Task6 评估与基准测试
人工智能·深度学习·大模型·模型评估
我就是妖怪3 分钟前
Kimi K2.6 新手快速上手与实战指南
大数据·人工智能
Elcker3 分钟前
企业级RAG应用构建手册
人工智能·rag
蝎子莱莱爱打怪5 分钟前
小孩儿才做选择!Hermes 和OpenClaw 我都要!
人工智能·后端·github
imbackneverdie6 分钟前
sci期刊示意图、流程图、机制图怎么画?
人工智能·ai·aigc·科研绘图·ai工具·科研工具·ai生图
直奔標竿8 分钟前
SpringAI + RAG + MCP + Agent 零基础全栈实战(完结篇)| 27课完整汇总,Java开发者AI转型必看
java·开发语言·人工智能·spring boot·后端·spring
云烟成雨TD9 分钟前
Spring AI 1.x 系列【31】向量数据库:进阶使用指南
java·人工智能·spring
2601_9561394217 分钟前
政府事业机构品牌策划公司哪家专业
大数据·人工智能·python
安当加密17 分钟前
模型文件裸奔?TDE如何实现AI大模型“零损耗”透明加密与防逆向
人工智能
AI木马人23 分钟前
2.人工智能实战:大模型接口并发低、GPU利用率上不去?基于 vLLM 重构推理服务的完整工程方案
人工智能·transformer·vllm