Spring AI 2.0 开发Java Agent智能体 - 新建 HelloWorld 项目

大家好,我是小锋老师,最近更新《2027版本 Spring AI 2.0 开发Java Agent智能体 视频教程》专辑,感谢大家支持。

本课程主要介绍和讲解Spring AI 2.0简介,Spring AI 2.0 HelloWorld搭建,Advisors --- 拦截器模式增强AI能力,对话与提示词工程(Prompt),工具调用(Function Calling / Tools) ,RAG(检索增强生成),MCP(模型上下文协议)和多模态支持。

等这个Spring AI2.0基础课程录制完成,接下来要发布2个 企业级Java AI实战课程,RAG企业知识库系统和AI智能客服系统。大家可以点点关注,后面更精彩。

视频教程+课件+源码打包下载:

链接:https://pan.baidu.com/s/1o-zRfndo1HHrS_uFroOiCw?pwd=1234

提取码:0000

Spring AI 2.0 开发Java Agent智能体 - 新建 HelloWorld 项目

我们新建一个Spring AI的HelloWorld项目,IDEA里点新建项目,选择Spring Initializr,Type选Maven,JDK用17,Packaging选Jar,然后点Next

SpringBoot我们选4.0.5,依赖我们先选Spring Web和OpenAI,后面不够再加。

因为阿里百炼平台支持OpenAI规范,所以试用OpenAI接口直接可以调用阿里百炼云平台的大模型。

首先第一步,配置application.yml,配置上api-key(读取系统环境变量),以及base_url,和模型

复制代码
spring:
  application:
    name: helloWorld
  ai:
    openai:
      api-key: ${OPENAI_API_KEY}
      base-url: https://dashscope.aliyuncs.com/compatible-mode
      chat:
        options:
          model: qwen3.6-plus

第二步,新建AiConfiguration配置类,配置ChatClient聊天客户端

复制代码
package com.java1234.config;

import org.springframework.ai.chat.client.ChatClient;
import org.springframework.ai.openai.OpenAiChatModel;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class AiConfiguration {

    /**
     * 创建一个 ChatClient 对象,用于处理聊天请求。
     *
     * @param model OpenAiChatModel 对象,用于处理聊天请求。
     * @return ChatClient 对象,用于处理聊天请求。
     */
    @Bean
    public ChatClient chatClient(OpenAiChatModel  model){
        return ChatClient
                .builder(model) // 创建 ChatClient 对象,并设置模型为 model
                .build(); // 构建 ChatClient 对象
    }
}

第三步,新建MyAiChatController控制器,接受前端用户提问,构建提示器,发送请求给大模型,以及接收大模型返回的结果,返回给前端。

复制代码
package com.java1234.controller;

import org.springframework.ai.chat.client.ChatClient;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class MyAiChatController {

    @Autowired
    private ChatClient chatClient ;

    @RequestMapping("/ai")
    public String ai(String question) {
        return chatClient.prompt() // 创建一个 Prompt 对象,用于构建聊天请求。
                .user( question) // 设置用户输入的文本。
                .call() // 调用 ChatClient 对象的 call() 方法,发送聊天请求给大模型并获取响应。
                .content(); // 获取响应的文本内容。
    }
}

然后我们启动项目,测试,浏览器输入:

复制代码
http://localhost:8080/ai?question=你是谁?

大模型返回结果:

相关推荐
Muyuan19984 小时前
26.Paper RAG Agent 展示面收口:截图与项目表达更新记录
人工智能·python·django·fastapi
yue2004034 小时前
Spring IoC 与 DI 核心概念与原理笔记
java·笔记·spring
qq_411262424 小时前
基于四博 ESP32-S3 + VB6824 打造 A1 AI 智能拍学机:视觉识别、语音交互与 AI 学习应用落地方案
人工智能·智能音箱
中海德--陈顺真4 小时前
HONEYWELL 扫描架控制板 51000398
运维·服务器·人工智能
wuminyu4 小时前
专家视角看Java多态性的底层基石vtable(虚函数表)构建过程解析
java·linux·c语言·jvm·c++
数智前线4 小时前
零售连锁门店的柔性管理之困,海康云眸Claw如何破解?
人工智能
phltxy4 小时前
Spring Cloud 服务注册与发现:Eureka 从原理到实战
java·spring cloud·eureka
AI技术增长4 小时前
Pytorch图像去噪实战(十四):条件扩散模型图像去噪,让Diffusion根据带噪图恢复干净图
人工智能·pytorch·python
用户860821135654 小时前
ClassLoader体系概述
spring