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

大模型返回结果:

相关推荐
牧艺6 小时前
Cursor Rules / Skills 分层设计:让 Agent 像「团队新同事」
前端·人工智能·cursor
SamDeepThinking6 小时前
从源码到代码:MyBatis-Flex 与 MyBatis-Plus 的逐项对比
java·后端·程序员
shepherd1116 小时前
一文带你掌握 LLM、Token、Context、Prompt、RAG、MCP、Skill、Agent 等 AI 核心概念
人工智能·后端·ai编程
小林ixn7 小时前
MCP 保姆级入门指南:AI 的“万能充电口”到底怎么玩?
人工智能
转转技术团队8 小时前
没有测试的核心代码,怎么交给 AI 重构
人工智能
她的男孩9 小时前
Spring Boot 接 Flowable 工作流:用 3 个注解搭一个请假审批流程
java·后端·架构
爱读源码的大都督9 小时前
Claude Code源码分析(三):为什么系统提示词中需要有tools呢?
前端·人工智能·后端
半个落月10 小时前
LLM如何预测下一个Token?一文拆解Transformer核心流程
人工智能
触底反弹10 小时前
🔥 2026 年爆火的 Harness Engineering 到底是什么?从原理到实战一文讲透
javascript·人工智能·程序员