簡介

Integration Problem

Spring AI 專案旨在簡化整合人工智慧功能之應用程式的開發,而無需不必要的複雜性。

此專案的靈感來自著名的 Python 專案,例如 LangChain 和 LlamaIndex,但 Spring AI 並非這些專案的直接移植。此專案的創立理念是,下一波生成式 AI 應用程式不僅適用於 Python 開發人員,而且將普及於多種程式語言。

Spring AI 解決了 AI 整合的根本挑戰:將您的企業資料和 API 與 AI 模型連接
Interactive

Spring AI 提供了抽象概念,可作為開發 AI 應用程式的基礎。這些抽象概念具有多種實作方式,可輕鬆更換元件,而只需極少的程式碼變更。

Spring AI 提供以下功能

  • 跨 AI 提供商的 Chat、文字轉圖像和嵌入模型的可攜式 API 支援。同時支援同步和串流 API 選項。也提供模型特定功能的存取。

  • 支援所有主要的AI 模型提供商,例如 Anthropic、OpenAI、Microsoft、Amazon、Google 和 Ollama。支援的模型類型包括

  • 結構化輸出 - 將 AI 模型輸出對應到 POJO。

  • 支援所有主要的向量資料庫提供商,例如 Apache Cassandra、Azure Cosmos DB、Azure Vector Search、Chroma、Elasticsearch、GemFire、Milvus、MongoDB Atlas、Neo4j、OpenSearch、Oracle、PostgreSQL/PGVector、PineCone、Qdrant、Redis、SAP Hana、Typesense 和 Weaviate。

  • 跨向量儲存提供商的可攜式 API,包括新穎的類 SQL 中繼資料篩選 API。

  • 工具/函式呼叫 - 允許模型請求執行用戶端工具和函式,從而根據需要存取必要的即時資訊。

  • 可觀察性 - 提供對 AI 相關操作的深入見解。

  • 文件注入ETL 框架,用於資料工程。

  • AI 模型評估 - 協助評估產生內容並防止產生虛構回應的實用工具。

  • 適用於 AI 模型和向量儲存的 Spring Boot 自動組態和啟動器。

  • ChatClient API - 用於與 AI 聊天模型通訊的流暢 API,在語法上類似於 WebClient 和 RestClient API。

  • Advisors API - 封裝重複發生的生成式 AI 模式,轉換傳送至和來自語言模型 (LLM) 的資料,並提供跨各種模型和使用案例的可攜性。

  • 支援聊天對話記憶體檢索增強生成 (RAG)

此功能集可讓您實作常見的使用案例,例如「關於您的文件之問答」或「與您的文件聊天」。

概念章節提供 AI 概念及其在 Spring AI 中的表示方式之高階概觀。

開始使用章節說明如何建立您的第一個 AI 應用程式。後續章節將深入探討每個元件和常見使用案例,並著重於程式碼。