Spring AI Starter和文档解读

Spring AI Starter和文档解读

前言:

随着大模型的层出不穷,单独去接入大模型,不但麻烦还有很多重复操作,Spring 整合Ai,提供了统一的接入方式,我们只需要引入Spring aii就可以接入Sping Ai之前的大模型。本文介绍如何查看官网和官网API介绍。

本文参考Spring 官方文档

Spring ai 官方文档地址:https://docs.spring.io/spring-ai/reference/api/chatclient.html

Spring Ai 当前版本

打开官方API文档,可以看到目前的稳定版本是1.0.1,还有一个1.1.0-SNAPSHOT。点击...的地方,就能查看版本,并且切换版本。本文使用1.0.1稳定版本。

SpingBoot 要求版本

在api 文档,左侧选择Getting Started,可以看到Note下面的一句话"Spring AI supports Spring Boot 3.4.x. When Spring Boot 3.5.x is released, we will support that as well.",翻译过来说就是要求必须是Spring Boot 3.4以上版本,Spring Boot 3.5以上版本支持的更好。如下图:

快照仓库配置

如果你使用快照版本,需要在pom.xml中配置Repositories,如下所示:

复制代码
<repositories>
  <repository>
    <id>spring-snapshots</id>
    <name>Spring Snapshots</name>
    <url>https://repo.spring.io/snapshot</url>
    <releases>
      <enabled>false</enabled>
    </releases>
  </repository>
  <repository>
    <name>Central Portal Snapshots</name>
    <id>central-portal-snapshots</id>
    <url>https://central.sonatype.com/repository/maven-snapshots/</url>
    <releases>
      <enabled>false</enabled>
    </releases>
    <snapshots>
      <enabled>true</enabled>
    </snapshots>
  </repository>
</repositories>

引入BOM版本管理

BOM用于管理Spring ai所有依赖的版本,以避免版本冲突。

复制代码
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.ai</groupId>
            <artifactId>spring-ai-bom</artifactId>
            <version>1.0.0-SNAPSHOT</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

Maven 镜像配置

当使用快照版本的spring ai,通过maven进行管理时,需要设置maven镜像配置。需要在settings.xml中进行如下配置:

复制代码
<mirror>
    <id>my-mirror</id>
    <mirrorOf>*</mirrorOf>
    <url>https://my-company-repository.com/maven</url>
</mirror>

spring ai 文档包含内容解读

我们点开Reference菜单,可以发现有很多子菜单,如下:

Chat Client API:springAI 提供统一的chatClient,所有大模型都使用chatClient进行调用大模型

Advisors(顾问):Spring Ai提供的一个顾问的关键概念,用于增强提示词、控制生成过程,注入业务逻辑。类似于AOP切面,会对调用大模型请求进行拦截,可以处理日志、chat Memory存储等功能。

Prompts(提示词):Spring ai提供了System提示词,可以为AI指定一个角色以及要求回复格式

Structured Output Converter(结构化输出转化器):Spring Ai提供了转换器,可以帮助我们从大模型输出格式转换成结构化数据格式

Multimodality(多模态) :Spring ai 引入一个可以理解和处理不同类型的数据,包含文本、声音、图片和其他格式的数据。

Models(模型):模型中提供了对话模型、向量模型、图像模型、声音模型和内容审核模型。

Chat Memory(上下文存储):Spring ai提供了内存存储、数据库存储和redis存储这几种上下文存储,可以设置存储上下文的条数。

Tool Calling(工具调用):工具调用也就是我们熟知的funcation call,它允许ai应用调用一系列的接口,完成信息检索如查询天气、航班等,或者在软件系统中自动发送邮件、创建记录、提交表单或者是跟踪工作流。比如我们需要新增或者删除操作,只需要通过问答式操作,不在需要点击按钮操作。

以上只是简述了部分菜单包含的功能,更多了解详见官网。

相关推荐
Junlan2718 小时前
Cursor使用入门及连接服务器方法(更新中)
服务器·人工智能·笔记
robot_learner18 小时前
OpenClaw, 突然走红的智能体
人工智能
ujainu小18 小时前
CANN仓库内容深度解读:昇腾AI生态的基石与AIGC发展的引擎
人工智能·aigc
rcc862818 小时前
AI应用核心技能:从入门到精通的实战指南
人工智能·机器学习
霖大侠19 小时前
【无标题】
人工智能·深度学习·机器学习
callJJ19 小时前
Spring AI 文本聊天模型完全指南:ChatModel 与 ChatClient
java·大数据·人工智能·spring·spring ai·聊天模型
CBeann19 小时前
企业级规则引擎落地实战:动态脚本引擎 QLExpress ,真香!
java·ai·大模型·规则引擎·qlexpress·大厂实战项目
懈尘19 小时前
从 Java 1.7 到 Java 21:逐版本深入解析新特性与平台演进
java·开发语言
亓才孓19 小时前
[Maven]Maven基础
java·maven
hello 早上好19 小时前
05_Java 类加载过程
java·开发语言