AI项目博客
记录 AI 工程实践与大模型应用

Spring AI Alibaba 48|检索增强生成 RAG · Spring AI Alibaba RAG 组件

Spring AI Alibaba 提供了构建 RAG 系统的核心组件和模块化架构:

// ETL Pipeline 组件
import org.springframework.ai.document.Document;
import org.springframework.ai.reader.DocumentReader;              // 文档读取器
import org.springframework.ai.transformer.DocumentTransformer; // 文档转换器(如文本分割)
import org.springframework.ai.transformer.splitter.TokenTextSplitter;
import org.springframework.ai.vectorstore.VectorStore;          // 向量存储(DocumentWriter)

// 嵌入模型
import org.springframework.ai.embedding.EmbeddingModel;
import org.springframework.ai.embedding.EmbeddingRequest;
import org.springframework.ai.embedding.EmbeddingResponse;

// 模块化 RAG 组件 - Pre-Retrieval
import org.springframework.ai.rag.query.transformer.QueryTransformer;
import org.springframework.ai.rag.query.transformer.RewriteQueryTransformer;
import org.springframework.ai.rag.query.transformer.CompressionQueryTransformer;
import org.springframework.ai.rag.query.transformer.TranslationQueryTransformer;
import org.springframework.ai.rag.query.expander.QueryExpander;
import org.springframework.ai.rag.query.expander.MultiQueryExpander;

// 模块化 RAG 组件 - Retrieval
import org.springframework.ai.rag.retriever.DocumentRetriever;
import org.springframework.ai.rag.retriever.VectorStoreDocumentRetriever;
import org.springframework.ai.rag.document.join.DocumentJoiner;
import org.springframework.ai.rag.document.join.ConcatenationDocumentJoiner;

// 模块化 RAG 组件 - Post-Retrieval
import org.springframework.ai.rag.postprocessor.DocumentPostProcessor;

// 模块化 RAG 组件 - Generation
import org.springframework.ai.rag.query.augmenter.QueryAugmenter;
import org.springframework.ai.rag.query.augmenter.ContextualQueryAugmenter;

// Advisor API(开箱即用的 RAG 流程)
import org.springframework.ai.chat.advisor.vectorstore.QuestionAnswerAdvisor;
import org.springframework.ai.rag.RetrievalAugmentationAdvisor;

// ChatModel 和 Agent
import org.springframework.ai.chat.model.ChatModel;
import org.springframework.ai.chat.client.ChatClient;
import com.alibaba.cloud.ai.graph.agent.ReactAgent;

// 工具(用于 Agentic RAG)
import org.springframework.ai.tool.ToolCallback;
import org.springframework.ai.tool.function.FunctionToolCallback;

模块化 RAG 架构

Spring AI 实现了模块化 RAG 架构,支持灵活的组件组合:

  • Pre-Retrieval(检索前):查询转换(重写、压缩、翻译)、查询扩展(多查询扩展)
  • Retrieval(检索):文档搜索、文档连接
  • Post-Retrieval(检索后):文档后处理(重排序、去重、压缩)
  • Generation(生成):查询增强、上下文注入

这种模块化设计允许你根据需求灵活组合不同的组件,构建适合特定场景的 RAG 流程。详细说明请参考 Retrieval Augmented Generation 模块文档。

Agent Framework

  • Tools – 创建检索工具
  • Agents – 构建 Agentic RAG
  • Memory – 对话记忆管理
  • Multi-Agent – 多 Agent 协作

RAG 组件

  • Retrieval Augmented Generation – RAG API 和模块化架构
  • ETL Pipeline – 数据提取、转换和加载
  • Document Readers – 文档加载器实现
  • Document Parsers – 文档解析器实现
  • Embeddings – 嵌入模型 API
  • Vector Databases – 向量数据库集成

本文整理自 Spring AI Alibaba 官方文档《检索增强生成 RAG》:https://java2ai.com/docs/frameworks/agent-framework/advanced/rag

赞(0)
未经允许不得转载:AI项目博客 » Spring AI Alibaba 48|检索增强生成 RAG · Spring AI Alibaba RAG 组件

评论 抢沙发

AI项目博客

专注 AI 工程化落地 —— 覆盖智能体、大模型、Java AI 与 Python 的学习笔记,以及 AI 平台的项目实战记录。

关于本站文章归档

登录

找回密码

注册