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=你是谁?

大模型返回结果:

相关推荐
搜yyzk6681 小时前
智能电话机器人:1天千通电话,高效低成本
人工智能
程序员黑豆5 小时前
Java类型推断完全指南:从var到菱形运算符,掌握使用限制与最佳实践
java·前端·ai编程
fthux5 小时前
装闭 RenoPit 源码解析(09):AnalysisEngine装修闭坑分析主流程
人工智能·ai·开源·github·open source·renopit
敏编程5 小时前
开源项目 NextBand:探索融合健康传感、语音交互与 AI Agent 的下一代可穿戴设备
人工智能
风流 少年6 小时前
Spring AI 2.0:Memory
java·后端·spring
ovO6 小时前
我按下“发送”之后:DeepSeek Harness 如何把一次请求变成 1,177 个增量片段
人工智能·开源·deepseek
码匠许师傅6 小时前
【C++ 面试真题】聊聊 C++ 的移动语义与右值引用
java·c++·面试
昨日之日20066 小时前
LTX-2.5:更清晰、更可控、同步音画、多镜头连贯的AI视频神器
人工智能·音视频
九硕智慧建筑一体化厂家6 小时前
数字化管控落地,直流照明构筑安全照明体系
运维·人工智能·笔记·安全·智慧城市
江厌016 小时前
本地部署DeepSeek显卡怎么选?我把显存计算公式和实测记录写下来了
人工智能·百度·联想工作站·代理商推荐·渠道对比·工作站