Vertex AI 提供了一套 API,可帮助您构建自己的检索 增强生成 (RAG) 应用或构建您自己的搜索引擎。这个 页面介绍了这些 API。
检索和生成
RAG 是一种方法,使大型语言模型 (LLM) 能够 基于您选择的数据源生成的响应。RAG 分为两个阶段:
- 检索:快速获取最相关的事实可能是常见的搜索问题。借助 RAG,您可以快速检索生成回答所需的重要事实。
- 生成:LLM 使用检索到的事实来生成 有理有据的回答。
Vertex AI 提供了适用于这两个阶段的选项,以匹配各种开发者 需求。
检索
根据需要选择最佳检索方法:
Vertex AI Search:Vertex AI Search 是一个具有 Google 搜索品质的信息检索引擎,您可以在任何利用贵企业数据的生成式 AI 应用中加入它。Vertex AI Search 是一种开箱即用的语义关键字 用于 RAG 的搜索引擎,能够处理各种文档, 以及连接到各种源系统(包括 BigQuery 和许多第三方系统。
如需了解详情,请参阅 Vertex AI Search。
自行构建检索功能:如果您想构建语义搜索,可以依赖 Vertex AI API 来构建自定义 RAG 系统的组件。这套 API 为文档提供了高质量的实现 解析、嵌入生成、矢量搜索和语义排名。使用这些 较低级别的 API 可让您完全灵活地设计检索器 同时加快上市速度和 降低风险。
如需了解详情,请参阅 构建您自己的检索增强生成。
引入现有检索功能:您可以将现有搜索功能用作基于事实的生成的检索器。您还可以使用适用于 RAG 的 Vertex API 以将现有搜索的质量提升到更高的质量。
Vertex AI 上的 LlamaIndex:Vertex AI 上的 LlamaIndex 可让熟悉这种热门开源软件 (OSS) 的开发者 框架来构建要用于生产环境和 企业级环境
如需了解详情,请参阅 Vertex AI for RAG 上的 LlamaIndex “Vertex AI 上的生成式 AI”一文,了解 Vertex AI 上的 文档。
Google 搜索:为 Gemini 模型使用“使用 Google 搜索建立依据”时,Gemini 会使用 Google 搜索,并生成基于相关搜索结果的输出。这种检索方法无需管理,您可以将全球知识提供给 Gemini。
如需了解详情,请参阅依据 Google 搜索 。
生成
根据您的需求选择最佳生成方法:
Grounded Generation API(包含许可名单的 GA):使用 Grounded Generation API 为用户的询问生成有依据的回答。此 API 使用 经过微调的 Gemini 模型, 减少幻觉,并根据你的信息来源给出回答 第三方来源或 Google 搜索的内容,包括对 依据支持内容。
如需了解详情,请参阅 生成有依据的答案。
Gemini:Gemini 是 Google 最强大的模型, 通过 Google 搜索提供开箱即用的基础功能。您可以使用它构建完全自定义的基于地面生成解决方案。
如需了解详情,请参阅将 Google 搜索作为依据 请参阅 Vertex AI 上的生成式 AI 文档。
Model Garden:如果您希望完全控制生成过程并使用自己选择的模型,可以使用 Vertex AI Model Garden 中的任何模型进行生成。
构建您自己的检索增强生成
开发用于执行标准答案的自定义 RAG 系统,可在 每个步骤的效果Vertex AI 提供了一套 API,可帮助您创建自己的搜索解决方案。使用这些 API 可让您灵活地设计 RAG 应用,同时依靠这些较低级别的 Vertex AI API 缩短上市时间并确保高质量。
Document AI 布局解析器。 Document AI 布局解析器可转换各种 将文本格式转换为结构化的表示形式,从而制作段落、 表格、列表以及标题、网页标头等结构元素 便于访问和创建可感知内容的片段, 进行信息检索。
如需了解详情,请参阅 Document AI 布局解析器 Document AI 文档。
Embeddings API:借助 Vertex AI 嵌入 API,您可以创建 用于文本或多模态输入的嵌入。嵌入是浮点数向量,旨在捕获其输入的含义。您可以使用嵌入为使用矢量的语义搜索提供支持 搜索。
Vector Search。检索引擎是 RAG 或搜索应用的关键部分。Vertex AI Vector Search 是一种 该检索引擎可从数十亿个语义相似或 大量语义相关项,每秒查询次数 (QPS) 较高, 低延迟和成本效益。它可以在密集区域内 并支持在 Vertex AI Pipelines SDK 中使用稀疏嵌入关键字搜索和混合搜索, 公开预览版。
如需了解详情,请参阅 Vertex AI 文档中的 Vertex AI 矢量搜索概览。
Ranking API。 排名 API 接受文档列表并对这些文档进行重新排序 确定文档与给定查询的相关程度。对比范围 这种嵌入:仅关注文档和 排名 API 可以针对 回答给定查询。
如需了解详情,请参阅对文档进行排名和重新排序。
依据生成 API。使用接地方式 生成 API 来生成 以合理的方式回答用户的问题。依据来源可以是您的 Vertex AI Search 数据存储区、您提供的自定义数据或 Google 搜索。
如需了解详情,请参阅生成有依据的回答。
Check Grounding API。 Check grounding API 可确定一段给定文本在 一组给定的参考文本。该 API 可以从参考文本中生成支持引用,以指明参考文本在哪些地方支持给定文本。此外,该 API 还可用于评估 RAG 系统响应的依据性。此外,作为一项实验性功能,该 API 还会生成矛盾的引文,以显示给定文本与参考文本不一致的地方。
如需了解详情,请参阅检查接地。
工作流:根据非结构化数据生成以事实为依据的回答
以下工作流程概述了如何集成 Vertex AI RAG API,以便根据非结构化数据生成有依据的回答。
- 导入非结构化文档,例如 PDF 文件、HTML 文件或图片 复制到 Cloud Storage 位置。
- 使用布局解析器处理导入的文档。布局解析器会将非结构化文档拆分为多个部分,并将非结构化内容转换为其结构化表示形式。通过 布局解析器也会从这些分块中提取注解。
- 使用以下代码为数据块创建文本嵌入: Vertex AI Text embeddings API。
- 使用以下方法将分块嵌入编入索引和检索分块嵌入: 矢量搜索。
- 使用 Rank API 对区块进行排名,并确定最高排名 数据块。
- 使用 Grounded Generation API,根据排名最高的代码段生成依据实例的回答。
如果答案生成模型不是 Google 模型,您可以检查这些答案的依据 使用“检查依据”方法