news 2026/9/2 23:20:59

springAI学习 一

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
springAI学习 一

一、Spring AI 概述

什么是Spring AI?

  • Spring生态的AI集成框架

  • 统一API访问不同AI服务(OpenAI、Azure OpenAI、Anthropic等)

  • 支持多种AI功能:聊天、文生图、嵌入、向量存储等

Spring AI 是一个用于 AI 工程的应用框架。 其目标是将 Spring 生态系统设计原则应用于 AI 领域,如可移植性和模块化设计,并推广将 POJO 作为应用构建模块到人工智能领域的应用。

二、学习资源

官方资源

  1. 文档:spring.io/projects/spring-ai

  2. 参考文档:Spring AI Reference Documentation

  3. 示例项目:GitHub - spring-ai/spring-ai-samples

实践建议

  1. 从OpenAI开始:先用OpenAI API熟悉基本概念

  2. 尝试本地模型:使用Ollama运行本地LLM

  3. 实现RAG应用:构建文档问答系统

  4. 集成到现有项目:为已有Spring Boot项目添加AI能力

三、核心概念

1.AI Models

  • 聊天模型:ChatClient、ChatModel

  • 嵌入模型:EmbeddingClient、EmbeddingModel

  • 图像模型:ImageClient、ImageModel

  • 语音模型:AudioClient、AudioModel

2.Prompt Engineering

PromptTemplate template = new PromptTemplate("请用{style}风格解释:{topic}"); Prompt prompt = template.create(Map.of("style", "简单易懂", "topic", "机器学习"))

3.输出解析

@Parser(description = "天气预报响应") public class WeatherResponse { private String city; private double temperature; private String condition; }

四、快速开始

1. 添加依赖

<dependency> <groupId>org.springframework.ai</groupId> <artifactId>spring-ai-openai-spring-boot-starter</artifactId> <version>0.8.1</version> </dependency>

2. 基础配置

spring: ai: openai: api-key: ${OPENAI_API_KEY} chat: model: gpt-3.5-turbo # model: gpt-4.1-mini

3. 基本使用示例

@Service public class ChatService { private final ChatClient chatClient; public String chat(String message) { return chatClient.call(message); } // 流式响应 public Flux<String> streamChat(String message) { return chatClient.stream(message) .map(ChatResponse::getOutput); } }

四、核心功能详解

1.聊天功能

// 带上下文对话 List<Message> messages = new ArrayList<>(); messages.add(new UserMessage("你好")); messages.add(new AssistantMessage("你好!有什么可以帮助你?")); messages.add(new UserMessage("Java是什么?")); ChatResponse response = chatClient.call(new Prompt(messages));

2.函数调用(Function Calling)

@Bean public FunctionCallback weatherFunction() { return FunctionCallbackWrapper.builder(new WeatherService()) .withName("getWeather") .withDescription("获取城市天气") .build(); }

3.RAG(检索增强生成)

// 1. 创建向量存储 VectorStore vectorStore = new InMemoryVectorStore(embeddingModel); // 2. 添加文档 vectorStore.add(List.of( new Document("Spring AI是Spring官方AI框架", Map.of("source", "docs")) )); // 3. 检索相关文档 List<Document> docs = vectorStore.similaritySearch(request); // 4. 增强提示 String enhancedPrompt = "基于以下信息:" + docs + "\n问题:" + question;

4.多模态支持

// 图像生成 ImagePrompt prompt = new ImagePrompt("一只可爱的猫"); ImageResponse response = imageClient.call(prompt); // 语音转文字 AudioPrompt audioPrompt = new AudioPrompt(audioFile); AudioTranscription transcription = audioClient.call(audioPrompt);

五、支持的AI服务

主要Provider:

  • OpenAI:GPT、DALL-E

  • Azure OpenAI:Azure上的OpenAI服务

  • Anthropic:Claude模型

  • Google Vertex AI:Gemini模型

  • Hugging Face:开源模型

  • 本地模型:Ollama、LM Studio等




版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/2 13:00:32

湖南网络安全培训机构哪个口碑好?推荐CSB湖南网安基地

在湖南地区&#xff0c;湖南网安基地&#xff08;湖南省网安基地科技有限公司&#xff09;确实是目前口碑最好、最值得推荐的首选机构。它作为国家网络安全人才培养基地和国家新一代自主安全计算系统产业集群的核心单位&#xff0c;与普通商业培训机构有着本质区别。 一、国家…

作者头像 李华
网站建设 2026/9/2 20:41:36

持续引领!湖南网安基地蝉联省级优秀案例,彰显网安湘军硬核实力

在2025年由湖南省委网信办、省教育厅、省科技厅、省工业和信息化厅联合组织开展的“提升全民数字素养与技能典型案例”征集活动中&#xff0c;湖南省网安基地科技有限公司报送的实践成果&#xff0c;凭借其卓越的示范价值与创新引领&#xff0c;从众多优秀实践中脱颖而出&#…

作者头像 李华
网站建设 2026/9/2 23:05:15

2025突破:NVIDIA ChronoEdit-14B让AI图像编辑首次拥有物理常识

2025突破&#xff1a;NVIDIA ChronoEdit-14B让AI图像编辑首次拥有物理常识 【免费下载链接】ChronoEdit-14B-Diffusers 项目地址: https://ai.gitcode.com/hf_mirrors/nvidia/ChronoEdit-14B-Diffusers 导语 当你用AI工具编辑"机器人拿起苹果"的图片时&…

作者头像 李华
网站建设 2026/9/2 2:18:24

论文AI率检测85%怎么办?这份保姆级自查手册+极速降低攻略请收好

自己用AI工具写的论文&#xff0c;AI率85%&#xff0c;这怎么搞&#xff1f;一位北京高校毕业生的吐槽&#xff0c;道出了2025年论文季最普遍的焦虑。《自然》杂志2025年的一项研究揭示了学术圈的惊人现状——近四分之一论文摘要可能由AI生成&#xff0c;而大多数作者选择隐瞒使…

作者头像 李华
网站建设 2026/9/2 16:54:16

专业硬盘健康监控工具全方位使用手册

数据安全是现代计算机用户最关心的问题之一&#xff0c;而硬盘作为存储数据的核心设备&#xff0c;其健康状况直接影响数据安全。今天要介绍的专业硬盘监控工具能够全面检测各类存储设备&#xff0c;为您的数据安全保驾护航。 【免费下载链接】CrystalDiskInfo CrystalDiskInfo…

作者头像 李华
网站建设 2026/9/2 20:55:42

VMware卸载小白教程:图文详解每一步

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 制作一个交互式VMware卸载指导应用&#xff0c;通过分步动画演示卸载过程&#xff0c;实时提示用户操作要点和注意事项。要求包含&#xff1a;1) 可视化操作指引 2) 常见问题即时解…

作者头像 李华