Spring AI官方文档学习(一)-概述

148 阅读2分钟

一、概述

Spring AI 是一款专注于人工智能工程的应用框架。该框架致力于将Spring生态系统的可移植性与模块化设计等核心理念融入人工智能领域,并提倡在该领域采用纯Java对象(POJOs)作为应用程序的基础构建单元。

c74501baaa34461fb26cb890b097a69f.png

Spring AI 的核心使命在于解决人工智能集成领域的根本性挑战:将企业数据及API与人工智能模型无缝连接。

二、特性

Spring AI 提供以下核心功能:

  • 多模型提供商支持,全面兼容主流AI服务商(Anthropic、OpenAI、Microsoft、Amazon、Google、Ollama),支持的模型类型包括:

    • 对话补全
    • 向量嵌入
    • 文生图
    • 语音转录
    • 文生语音
    • 内容审核
  • 跨平台可移植API,提供同步与流式API的统一接口,支持跨AI服务商的无缝切换,同时保留各模型的特有功能访问能力。

  • 结构化输出 支持将AI模型输出自动映射至POJO对象。

  • 向量数据库生态 兼容所有主流向量数据库(Apache Cassandra、Azure Vector Search、Chroma、Milvus、 MongoDB Atlas、Neo4j、Oracle、PostgreSQL/PGVector、PineCone、Qdrant、Redis、Weaviate)。

  • 统一向量存储接口 提供跨数据库的可移植API,包含创新的类SQL元数据过滤接口。

  • 工具函数调用 支持模型端触发客户端工具函数执行,实时获取必要信息。

  • 可观测性体系 提供AI操作的全链路监控洞察。

  • 文档注入ETL框架 为数据工程提供文档处理管道。

  • 模型评估机制 提供内容生成质量评估工具,有效规避幻觉响应。

  • 流式对话API 采用与WebClient/RestClient同源的流畅式API设计,实现与AI对话模型的交互。

  • 智能顾问API 封装通用生成式AI模式,优化LLM输入输出数据处理,确保跨模型与用例的可移植性。

  • 记忆增强与RAG 支持对话记忆存储与检索增强生成技术。

  • Spring Boot开箱即用 通过start.spring.io快速配置所有AI模型与向量存储依赖,提供自动化配置与启动器支持。

三、快速开始

您只需几个简单步骤即可开始:

  1. 创建Spring Boot应用* 通过Spring Initializr创建含Spring AI OpenAI启动器依赖的Web应用(您可在该页面选择所需的所有AI模型与向量存储组件)

  2. 配置API密钥 在application.properties文件中添加: spring.ai.openai.api-key=<YOUR OPENAI KEY>

3.在您的SpringAiDemoApplication类中添加以下代码片段:

@Bean
public CommandLineRunner runner(ChatClient.Builder builder) {
    return args -> {
        ChatClient chatClient = builder.build();
        String response = chatClient.prompt("Tell me a joke").call().content();							
        System.out.println(response);
    };
}

4.运行应用

./mvnw spring-boot:run