Spring AI

Spring AI 是一款用于 AI 工程的应用框架。其目标是将 Spring 生态系统设计原则(如可移植性和模块化设计)应用于 AI 领域,并促进在 AI 领域使用 POJO 作为应用程序的构建块。

功能

跨 AI 提供商的便携式 API 支持,适用于聊天、文本转图像和嵌入模型。支持同步和流式 API 选项。也支持降级以访问特定于模型的功能。

聊天模型

  • OpenAI
  • Azure Open AI
  • Amazon Bedrock
    • Cohere 的 Command
    • AI21 Labs 的 Jurassic-2
    • Meta 的 LLama 2
    • Amazon 的 Titan
  • Google Vertex AI Palm
  • Google Gemini
  • HuggingFace - 访问数千个模型,包括来自 Meta 的 Llama2 等
  • Ollama - 在本地机器上运行 AI 模型
  • MistralAI

文本转图像模型

  • OpenAI 与 DALL-E
  • StabilityAI

转录(音频转文本)模型

  • OpenAI

嵌入模型

  • OpenAI
  • Azure OpenAI
  • Ollama
  • ONNX
  • PostgresML
  • Bedrock Cohere
  • Bedrock Titan
  • Google VertexAI
  • Mistal AI

向量存储 API 提供跨不同提供商的可移植性,具有新颖的类似 SQL 的元数据过滤 API,该 API 保持可移植性。

向量数据库

  • Azure 向量搜索
  • Chroma
  • Milvus
  • Neo4j
  • PostgreSQL/PGVector
  • PineCone
  • Redis
  • Weaviate
  • Qdrant

Spring Boot 自动配置和启动器,用于 AI 模型和向量存储。

函数调用 您可以将 java.util.Function 实现声明为 OpenAI 模型,以在它们的提示响应中使用。您可以直接将这些函数作为对象提供,或者如果它们在应用程序上下文中注册为 @Bean,则引用它们的名称。此功能最大限度地减少了不必要的代码,并使 AI 模型能够请求更多信息以完成其响应。

支持的模型包括

  • OpenAI
  • Azure OpenAI
  • VertexAI
  • Mistral AI
  • Anthropic Claude

用于数据工程的 ETL 框架

  • 我们 ETL 框架的核心功能是使用向量存储促进文档传输到模型提供商。ETL 框架基于 Java 函数式编程概念,帮助您将多个步骤链接在一起。
  • 我们支持读取各种格式的文档,包括 PDF、JSON 等。
  • 该框架允许您根据需要对数据进行操作。这通常涉及拆分文档以遵守上下文窗口限制,并使用关键字增强文档以提高文档检索效率。
  • 最后,处理后的文档将存储在向量数据库中,以便将来检索。

提供丰富的参考文档、示例应用程序以及研讨会/课程资料。

未来的版本将在此基础上提供对更多 AI 模型的访问,例如 Google 最近发布的 Gemini 多模态模型,一个用于评估 AI 应用程序有效性的框架,更多便捷的 API 以及帮助解决“查询/总结我的文档”用例的功能。请查看 GitHub 以了解有关即将发布版本的详细信息。

入门

您可以通过几个简单的步骤开始。

  1. 安装 Spring CLI,然后在您的 shell 中运行以下命令。
spring boot new --from ai --name myai

将创建一个应用程序,供您开始与 ChatGPT 的基本交互,只需按照生成的 README 文件中的说明获取您的 API 密钥,然后

  1. 运行应用程序
./mvw spring-boot:run
  1. 并使用 curl 访问端点
curl localhost:8080/ai/simple

想以其他方式开始吗?查看参考文档中的入门部分

Spring Initializr

快速启动您的项目

领先一步

VMware 提供培训和认证,帮助您快速提升进度。

了解更多

获取支持

Tanzu Spring Runtime 在一个简单的订阅中提供 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件。

了解更多

即将举行的活动

查看 Spring 社区中所有即将举行的活动。

查看全部