Spring AI 快速入门与核心接口实战指南
基本概念
什么是 AI
AI(人工智能)旨在让机器模拟人类智能。我们可以通过对比来理解:普通计算机程序像自动售货机,输入特定按钮得到固定饮料,行为完全由预设规则决定;而 AI 程序更像在学习的孩子,通过大量数据(如猫狗图片)自己学会规律,而非依赖硬编码。
目前最主流的是生成式人工智能(AIGC),它利用 AI 技术自动生成内容,如写文章、翻译或编程。
模型(Model)
模型是 AI 系统的核心,本质是通过算法在数据上训练得到的数学函数。它接收输入并计算产生输出。我们常说的'调用 AI',实际上就是在使用这个模型。可以将其想象成一个经过大规模训练的'虚拟大脑'。
大语言模型 (LLM)
LLM(Large Language Model)是基于深度学习、使用海量文本训练的模型,主要任务是理解和生成人类语言。其特点是参数数量巨大,能应对各种话题和任务。
提示词(Prompt)
提示词是用户提供给 AI 模型的指令或上下文信息。设计优化提示词的过程称为'提示词工程'。提示词越清晰具体,AI 回答质量越高。
词元(Token)
Token 是模型处理和理解的基本文本单位,也是计费和衡量长度的基本单位。不同模型的分词规则不同,例如英文单词 "unbelievable" 可能被拆分为三个 Token。
Spring AI 是什么
Spring AI 是一个基于 Spring 生态的开源框架,核心目标是简化 Java 应用中 AI 功能的集成。它提供了一系列抽象,支持多种实现,允许开发者通过最少代码更改切换组件。
主要特性包括:
- 统一的多模型支持:兼容 OpenAI、Microsoft、Google 等主流提供商,无论是云端还是本地部署(如 Ollama)。
- 强大的数据集成能力:内置对向量数据库(Chroma、Pinecone 等)的支持。
- 与 Spring 生态无缝集成:自然协同 Spring Boot、Spring Data 等项目。
- 简化的开发模式:支持模型请求执行客户端定义的函数。
快速入门
环境要求
- JDK 版本:JDK 17 或以上(推荐 JDK 21),这是 Spring Boot 3.x 的强制要求。
- Spring Boot 版本:3.2 或以上,选择稳定的 3.x 最新版本即可。
- AI 服务凭证:需要有效的 API Key,来自 AI 服务提供商(如 OpenAI、DeepSeek 等)。
项目创建
Spring AI 为 OpenAI 及兼容 API 服务设计了 spring-ai-openai-spring-boot-starter 依赖。
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-openai-spring-boot-starter</artifactId>
<version>1.0.0-M6</version>

