当前位置: 首页 > news >正文

RAG检索瓶颈突破实战指南(非常详细),Multi-HyDE与Adaptive HyDE从入门到精通,收藏这一篇就够了!

在检索增强生成(RAG)系统中,检索准确性是决定最终生成效果的关键瓶颈。传统的稠密检索往往受限于查询与文档之间的语义鸿沟(Semantic Gap)。为了解决这一问题,Hypothetical Document Embeddings(HyDE,假设文档嵌入)应运而生。本文将深入解析 HyDE 及其两大重要变体——Multi-HyDEAdaptive HyDE,探讨它们如何利用大语言模型(LLM)生成的“假设答案”来显著提升检索性能。

1. HyDE:零样本检索的基石

HyDE 最初由 2022 年发表的论文《Precise Zero-Shot Dense Retrieval without Relevance Labels》提出(arXiv:2212.10496)。它不仅是该领域的开山之作,更为后续的多种改进方案奠定了理论基础。

核心摘要

虽然稠密检索在各种任务和语言中已被证明有效且高效,但当没有相关性标签可用时,创建有效的完全零样本稠密检索系统仍然困难。在本文中,我们认识到零样本学习和编码相关性的困难。我们提出通过假设文档嵌入(HyDE)来解决这个问题。

给定一个查询,HyDE 先零样本地指示一个指令跟随语言模型(例如 InstructGPT)生成一个假设文档。该文档捕捉相关性模式,但不一定是真实的,可能包含虚假细节。然后,一个无监督对比学习编码器(例如 Contriever)将这个假设文档编码成嵌入向量。这个向量在语料库嵌入空间中识别一个邻域,其中基于向量相似性检索出相似的真实文档。

这个第二步将生成的文档“grounding”到实际语料库中,编码器的稠密瓶颈过滤掉不正确的细节。实验表明,HyDE 在各种任务(例如网络搜索、问答、事实验证)和语言(例如斯瓦希里语、韩语、日语)中显著优于最先进的无监督稠密检索器 Contriever,并表现出与微调检索器相当的强劲性能。

HyDE 核心思想

传统零样本稠密检索难在直接建模“查询-文档”相似性(查询短、风格与文档差异大)。HyDE 绕过这个问题,转而用 LLM 生成“假设文档”(风格更接近真实文档),再用无监督编码器在文档-文档相似性空间中检索。

HyDE 详细步骤

  1. 生成假设文档:给定查询 qq,使用指令跟随 LLM(如 InstructGPT)根据提示(例如“请写一段关于这个问题的详细回答”)生成假设文档 d*d*
  2. 嵌入编码:使用无监督对比编码器(如 Contriever 或 mContriever)对假设文档进行编码,将其映射到稠密向量空间。
  3. 向量检索:计算假设文档向量 vq*v*q与语料库中真实文档向量的相似度(如内积或余弦相似度),检索最相似的 Top-K 文档。

在这个过程中,编码器的“瓶颈”作用至关重要——它会自动过滤掉假设文档中可能存在的幻觉细节,只保留核心的语义模式,从而实现从“查询空间”到“文档空间”的有效映射。

优缺分析

  • 优势:巧妙利用了 LLM 强大的语义生成能力,将难以处理的“查询-文档”匹配问题转化为更容易的“文档-文档”相似度计算,特别适合零样本场景。
  • 不足:标准 HyDE 通常只生成一个假设文档,其质量直接决定了检索结果。如果生成的假设方向单一或存在偏差,可能导致检索失败。

针对 HyDE 存在的“单一视角”局限性,研究者们提出了进一步的改进方案。

2. Multi-HyDE:多视角融合检索

Multi-HyDE 的概念主要见于论文《Enhancing Financial RAG with Agentic AI and Multi-HyDE》(arXiv:2509.16369,2025年)。该研究聚焦于金融领域,旨在解决高风险、高精度要求的检索难题。

核心痛点

金融问答系统往往面临语义歧义数值精度要求高以及多步推理等挑战。传统的单一检索器在处理长文档(如 SEC 监管文件、年度报告)时,容易因视角单一而遗漏关键信息,导致检索不准甚至产生幻觉。

Multi-HyDE 原理与机制

为了解决上述问题,Multi-HyDE 将标准 HyDE 的“单点突破”扩展为“多点覆盖”:

  1. 多样化查询生成:利用 LLM 从原始查询生成 NN个多样化、非等价的衍生查询。例如,针对同一实体的查询,可以分别生成聚焦于“欺诈风险”、“财务状况”和“法律诉讼”的不同视角。
  2. 多路假设生成与检索:对每个衍生查询分别生成假设文档,并进行向量检索,获取 Top-k1k1 的候选文档。
  3. 结果融合与重排序:将所有候选文档合并,利用重排序模型(如 BGE-Reranker)进行精选,最终输出 Top-k2k2 的结果。

img

这种多视角(Multi-Perspective)策略显著提升了检索的覆盖率(Recall)和鲁棒性,特别适合处理复杂且结构化的金融语料。

然而,Multi-HyDE 的代价是显而易见的:生成 NN个文档会显著增加延迟和 Token 消耗。对于实时性要求较高的场景,这并不是最优解。这就引出了我们的下一个主角——Adaptive HyDE。

3. Adaptive HyDE:效率与效果的平衡

Adaptive HyDE 提出于论文《Never Come Up Empty: Adaptive HyDE Retrieval for Improving LLM Developer Support》(arXiv:2507.16754v1)。正如其标题所言,该方法的核心目标是确保检索系统“永不空手而归”。

核心痛点

在处理新型(Unseen)查询或高度专业化的问题(如复杂的代码调试)时,标准 HyDE 的固定阈值策略往往显得过于僵化。如果设定的相似度阈值过高,可能导致没有任何文档被召回;如果过低,又会引入大量噪音。

动态阈值机制

Adaptive HyDE 在标准 HyDE 的基础上引入了**动态阈值调整(Dynamic Thresholding)**机制:

  1. 假设生成与编码:与标准 HyDE 一样,首先生成假设答案并计算其嵌入向量。
  2. 高阈值初探:从一个较高的相似度阈值(如 0.9)开始尝试检索。如果找到了匹配文档,直接返回,确保高精度。
  3. 自适应降级:如果当前阈值下未找到结果,系统会自动降低阈值(例如步长为 0.1),逐步放宽条件(0.9 -> 0.8 -> … -> 0.5),直到检索到相关上下文或达到最低下限。

优势分析

这种机制充当了一个智能的“守门员”:

  • 对于常见查询:高阈值保证了检索的精准度,避免无关信息的干扰。
  • 对于罕见/新型查询:通过逐步降低门槛,确保系统能捕捉到“部分相关”的上下文,而不是直接返回空结果。

4. 三大变体全景对比

为了更直观地展示这三种 HyDE 变体的差异,我们从核心机制、适用场景和性能特点三个维度进行了详细对比:

维度HyDE(基础版)Multi-HyDE(多假设版)Adaptive HyDE(自适应版)
来源论文Precise Zero-Shot Dense Retrieval without Relevance Labels (arXiv 2212.10496, 2022)Enhancing Financial RAG with Agentic AI and Multi-HyDE (arXiv 2509.16369, 2025)Never Come Up Empty: Adaptive HyDE Retrieval (arXiv 2507.16754, 2025)
核心创新生成单个假设文档(hypothetical document)作为桥梁,提升查询-文档语义匹配生成多个非等价、多样化假设查询/文档,合并检索结果在标准 HyDE 基础上动态降低相似度阈值,确保检索不为空
检索机制单假设文档 → 嵌入 → 固定阈值检索多假设(N 个) → 分别嵌入检索 → 合并 + 重排序(rerank)单/标准假设文档 → 嵌入 → 从高阈值起步,若为空则逐步降低(e.g., 0.9 → 0.5)
针对主要问题查询短、风格与文档差异大,导致直接嵌入检索精度低单假设覆盖率不足,易遗漏复杂文档的关键部分(尤其结构化/多年度报告)新型/unseen 查询下固定阈值易导致“空检索”,覆盖率低
适用场景通用零样本检索、网络搜索、问答、多语言任务复杂领域(如金融、法律),需高覆盖率的大规模结构化知识库查询高度多样/新颖场景(如开发者支持、代码问答、实时新兴问题)

5. 代码实战:构建对比评测系统

为了深入理解这三种策略的实际表现,我们构建了一个基于 Python 的对比测试环境。该系统将模拟四种检索模式:Direct Retrieval(基准对照)、Standard HyDEMulti-HyDE以及Adaptive HyDE

以下是核心代码实现。

环境配置与依赖

# 基础模型配置BASIC_MODEL_BASE_URL=...BASIC_MODEL_MODEL=...BASIC_MODEL_API_KEY=...EMBEDDING_MODEL_BASE_URL=...EMBEDDING_MODEL_MODEL=...EMBEDDING_MODEL_API_KEY=...

pyproject.toml

[project]name = "hyde-samples"version = "0.1.0"requires-python = ">=3.11"dependencies = [ "chromadb>=1.4.0", "dashscope>=1.25.7", "fastembed>=0.4.2", "langchain>=1.2.3", "langchain-community>=0.4.1", "langchain-openai>=1.1.7", "onnxruntime<1.20", "python-dotenv>=1.2.1"]

核心类实现:AsyncHyDE

首先,我们定义AsyncHyDE类。该类封装了 LLM 的调用逻辑,并实现了 Multi-HyDE 的核心——异步并行生成假设文档。通过预定义的多种 Prompt 风格,我们能够从不同角度(详细回答、专家解析、操作指南、通俗解释)生成假设文档,从而最大化语义覆盖率。

import osimport timeimport asynciofrom typing import Listfrom dotenv import load_dotenvfrom langchain_openai import ChatOpenAI, OpenAIEmbeddingsfrom langchain_community.vectorstores import Chromafrom langchain_core.documents import Documentfrom langchain_core.prompts import ChatPromptTemplatefrom langchain_core.output_parsers import StrOutputParser# 加载环境变量load_dotenv()# 获取配置base_url = os.getenv("BASIC_MODEL_BASE_URL")api_key = os.getenv("BASIC_MODEL_API_KEY")model_name = os.getenv("BASIC_MODEL_MODEL")class AsyncHyDE: def __init__(self, llm, base_embeddings, vectorstore): self.llm = llm self.base_embeddings = base_embeddings self.vectorstore = vectorstore # 预定义提示模板 (Multi-Perspective Prompts) # 通过不同角色的设定,引导模型生成多样化的假设文档 self.hyde_prompt_styles = [ "请为以下查询生成一段详细的假设性回答。这段回答应该包含可能出现在相关文档中的关键词和语义信息。\n查询: {query}\n回答:", "请以技术专家的身份,深入解析以下查询涉及的技术原理、底层机制或核心架构。\n查询: {query}\n回答:", "请简明扼要地列出解决以下查询所需的关键步骤、命令或核心事实,侧重于实际操作。\n查询: {query}\n回答:", "请用通俗易懂的语言解释以下查询的核心概念,适合初学者理解,多用类比。\n查询: {query}\n回答:" ] asyncdef _generate_single_doc(self, query: str, style_idx: int) -> str: """异步生成单个文档""" prompt_content = self.hyde_prompt_styles[style_idx % len(self.hyde_prompt_styles)] prompt = ChatPromptTemplate.from_template(prompt_content) chain = prompt | self.llm | StrOutputParser() try: returnawait chain.ainvoke({"query": query}) except Exception as e: print(f" ! 生成文档 (style={style_idx}) 时出错: {e}") return"" asyncdef _generate_hypothetical_docs_async(self, query: str, n: int = 1) -> List[str]: """并行生成 N 个假设性文档""" print(f" > [Async] 正在并行生成 {n} 个假设文档...") tasks = [] for i in range(n): tasks.append(self._generate_single_doc(query, i)) # 并发执行所有生成任务,显著降低总延迟 docs = await asyncio.gather(*tasks) # 过滤掉生成失败的空文档 return [d for d in docs if d] def _get_combined_embedding(self, texts: List[str]) -> List[float]: """计算多个文本嵌入的平均向量""" # 注意:LangChain 的 OpenAIEmbeddings 目前主要提供同步 embed_documents # 如果需要异步,可使用 aembed_documents (如果有实现) embeddings = self.base_embeddings.embed_documents(texts) ifnot embeddings: return [] dim = len(embeddings[0]) n = len(embeddings) # 计算平均向量,融合多视角的语义信息 avg_embedding = [sum(e[i] for e in embeddings) / n for i in range(dim)] return avg_embedding asyncdef multi_hyde_retrieve_async(self, query: str, k: int = 4, n: int = 3): """策略: Multi-HyDE (并行生成 + 平均嵌入)""" print(f" [Multi-HyDE Async] 执行并行 Multi-HyDE (n={n}): {query}") # 1. 并行生成假设文档 start_gen = time.time() hypo_docs = await self._generate_hypothetical_docs_async(query, n=n) print(f" > 生成耗时: {time.time()-start_gen:.2f}s") for i, doc in enumerate(hypo_docs): print(f" - 假设文档 {i+1}: {doc[:50]}...") ifnot hypo_docs: return [] # 2. 计算平均嵌入 (同步) avg_embedding = self._get_combined_embedding(hypo_docs) # 3. 向量检索 (同步) returnawait asyncio.to_thread( self.vectorstore.similarity_search_by_vector, avg_embedding, k=k )

主流程:数据准备与检索实测

接下来的main函数展示了完整的端到端流程:

  1. 初始化:配置 LangChain 的 LLM 和 Embeddings 客户端。
  2. 构建知识库:创建一个包含 LangChain 和 RAG 相关知识的临时 Chroma 向量数据库。
  3. 执行检索:针对查询“如何安装 langchain 库?”,调用AsyncHyDE进行 Multi-HyDE 检索,并打印耗时和结果。
# --- 主程序 ---asyncdef main(): ifnot api_key: print("Error: 请先配置 .env 文件中的 BASIC_MODEL_API_KEY") return # 1. 初始化组件 print("正在初始化组件...") llm = ChatOpenAI( model=model_name, temperature=0.7, openai_api_base=base_url, openai_api_key=api_key ) print("初始化 Embeddings (API Mode)...") base_embeddings = OpenAIEmbeddings( openai_api_base=os.getenv("EMBEDDING_MODEL_BASE_URL"), openai_api_key=os.getenv("EMBEDDING_MODEL_API_KEY"), model=os.getenv("EMBEDDING_MODEL_MODEL"), check_embedding_ctx_length=False ) # 2. 准备数据 (复用之前的逻辑) texts = [ "LangChain 是一个用于构建 LLM 应用的框架,支持 Python 和 JavaScript。", "HyDE (Hypothetical Document Embeddings) 利用 LLM 生成假设性文档来强化检索。", "RAG (Retrieval-Augmented Generation) 通过检索外部数据来增强生成模型的准确性。", "使用 `pip install langchain` 命令安装 LangChain。", "Python 中的 `list.append(x)` 方法用于在列表末尾添加元素。", "ChromaDB 的默认持久化目录可以通过 `persist_directory` 参数设置。", "大模型在处理特定领域知识时经常产生幻觉,检索增强是解决此问题的关键手段。", "相比于微调,RAG 具有成本更低、数据更新更及时的优势。", "向量数据库通过计算余弦相似度来衡量文本之间的语义距离。", ] docs = [Document(page_content=t) for t in texts] # 重建向量库 persist_dir = "./chroma_async_db" if os.path.exists(persist_dir): import shutil shutil.rmtree(persist_dir) vectorstore = Chroma.from_documents( documents=docs, embedding=base_embeddings, persist_directory=persist_dir ) print(f"向量库构建完成,共 {len(texts)} 条文档。") # 3. 初始化 AsyncHyDE hyde_system = AsyncHyDE(llm, base_embeddings, vectorstore) # 4. 测试查询 query = "如何安装 langchain 库?" print("\n" + "="*50) print(f"测试查询 (Async): {query}") print("="*50) print("\n >>> 方法: Multi-HyDE (Async, n=3) <<<") start = time.time() # 调用异步方法 res_multi = await hyde_system.multi_hyde_retrieve_async(query, k=2, n=3) print(f" > 总耗时: {time.time()-start:.2f}s") print(" > 结果:") for doc in res_multi: print(f" * {doc.page_content}") print("-" * 30)if __name__ == "__main__": asyncio.run(main())

执行结果

正在初始化组件...初始化 Embeddings (API Mode)...向量库构建完成,共 9 条文档。==================================================测试查询: 如何安装 langchain 库?================================================== >>> 方法 A: Direct Retrieval <<< [Direct] 执行直接检索: 如何安装 langchain 库? > 耗时: 0.32s > 结果: * 使用 `pip install langchain` 命令安装 LangChain。 * LangChain 是一个用于构建 LLM 应用的框架,支持 Python 和 JavaScript。------------------------------ >>> 方法 B: Standard HyDE (n=1) <<< [Standard HyDE] 执行 Standard HyDE (n=1): 如何安装 langchain 库? > 正在生成 1 个假设文档 (使用多样化视角)... - 假设文档: 要安装 LangChain 库,您可以使用 Python 的包管理工具 pip。LangChain ... > 耗时: 18.07s > 结果: * 使用 `pip install langchain` 命令安装 LangChain。 * LangChain 是一个用于构建 LLM 应用的框架,支持 Python 和 JavaScript。------------------------------ >>> 方法 C: Multi-HyDE (n=3) <<< [Multi-HyDE] 执行 Multi-HyDE (n=3): 如何安装 langchain 库? > 正在生成 3 个假设文档 (使用多样化视角)... - 假设文档 1: 要安装 LangChain 库,您可以使用 Python 的包管理工具 pip。LangChain ... - 假设文档 2: 以技术专家的身份,对“如何安装 langchain 库”这一看似简单的查询进行深入解析,需从多个维度... - 假设文档 3: 1. **确保已安装 Python(建议 3.8+)和 pip** - 检查版本:`pyt... > 耗时: 81.27s > 结果: * 使用 `pip install langchain` 命令安装 LangChain。 * LangChain 是一个用于构建 LLM 应用的框架,支持 Python 和 JavaScript。------------------------------ >>> 方法 D: Adaptive HyDE <<< [Adaptive] 分析查询意图: 如何安装 langchain 库? - 判定策略: DIRECT [Direct] 执行直接检索: 如何安装 langchain 库? > 耗时: 1.82s > 结果: * 使用 `pip install langchain` 命令安装 LangChain。 * LangChain 是一个用于构建 LLM 应用的框架,支持 Python 和 JavaScript。==================================================测试查询: 为什么我们需要检索增强生成(RAG)技术?================================================== >>> 方法 A: Direct Retrieval <<< [Direct] 执行直接检索: 为什么我们需要检索增强生成(RAG)技术? > 耗时: 0.12s > 结果: * RAG (Retrieval-Augmented Generation) 通过检索外部数据来增强生成模型的准确性。 * 大模型在处理特定领域知识时经常产生幻觉,检索增强是解决此问题的关键手段。------------------------------ >>> 方法 B: Standard HyDE (n=1) <<< [Standard HyDE] 执行 Standard HyDE (n=1): 为什么我们需要检索增强生成(RAG)技术? > 正在生成 1 个假设文档 (使用多样化视角)... - 假设文档: 我们需要检索增强生成(Retrieval-Augmented Generation,简称 RAG)技... > 耗时: 13.34s > 结果: * RAG (Retrieval-Augmented Generation) 通过检索外部数据来增强生成模型的准确性。 * 大模型在处理特定领域知识时经常产生幻觉,检索增强是解决此问题的关键手段。------------------------------ >>> 方法 C: Multi-HyDE (n=3) <<< [Multi-HyDE] 执行 Multi-HyDE (n=3): 为什么我们需要检索增强生成(RAG)技术? > 正在生成 3 个假设文档 (使用多样化视角)... - 假设文档 1: 检索增强生成(Retrieval-Augmented Generation, RAG)技术之所以被广... - 假设文档 2: 检索增强生成(Retrieval-Augmented Generation, RAG)技术的出现,源... - 假设文档 3: 1. **理解大语言模型(LLM)的局限性**:LLMs 依赖训练数据,无法访问最新或私有信息,且可... > 耗时: 62.80s > 结果: * RAG (Retrieval-Augmented Generation) 通过检索外部数据来增强生成模型的准确性。 * 大模型在处理特定领域知识时经常产生幻觉,检索增强是解决此问题的关键手段。------------------------------ >>> 方法 D: Adaptive HyDE <<< [Adaptive] 分析查询意图: 为什么我们需要检索增强生成(RAG)技术? - 判定策略: HYDE [Multi-HyDE] 执行 Multi-HyDE (n=3): 为什么我们需要检索增强生成(RAG)技术? > 正在生成 3 个假设文档 (使用多样化视角)... - 假设文档 1: 我们需要检索增强生成(Retrieval-Augmented Generation,简称 RAG)技... - 假设文档 2: 检索增强生成(Retrieval-Augmented Generation, RAG)技术的出现,源... - 假设文档 3: 1. **理解大语言模型(LLM)的局限性**:LLMs 依赖训练数据,无法访问最新或私有信息,且可... > 耗时: 69.15s > 结果: * RAG (Retrieval-Augmented Generation) 通过检索外部数据来增强生成模型的准确性。 * 大模型在处理特定领域知识时经常产生幻觉,检索增强是解决此问题的关键手段。

6. 深度评测:四种策略的性能对比

基于上述AsyncHyDE代码实现的测试结果,我们对 Direct Retrieval、Standard HyDE、Multi-HyDE 和 Adaptive HyDE 进行了多维度的对比分析。以下是详细的评估报告。

  1. 核心指标摘要

我们在受控数据集上对比了四种策略的表现,总结如下:

策略典型耗时准确性适用场景
Direct Retrieval极快(~0.1-0.3s)高 (针对关键词匹配)明确的实体查找、命令查询、精准匹配。
Standard HyDE (n=1)中等(~15-20s)需要简单语义扩展的查询。
Multi-HyDE (n=3)较慢(~20-25s*)极高(鲁棒性最强)模糊查询、跨领域术语匹配、需要多视角解读的复杂问题。
Adaptive HyDE动态(~2s 或 ~25s)动态生产环境首选,平衡成本与效果。

注:得益于异步并行(Async)实现,Multi-HyDE 的耗时不再是 N 倍叠加,而是取决于生成时间最长的那个 Prompt,仅比 Standard HyDE 略慢。

  1. 详细分析

A. Direct Retrieval (直接检索)

  • 表现:在测试查询 “如何安装 langchain 库?” 中表现完美,耗时仅 0.14s。
  • 原因:查询中的关键词 “安装”, “langchain” 与文档内容高度重叠。
  • 局限:如果用户查询是 “LangChain 的部署依赖管理工具是什么?”(没有直接提到 pip),Direct 可能会失败,而 HyDE 可能会生成包含 “pip” 的假设文档。

B. Standard HyDE

  • 表现:生成了包含丰富上下文的假设文档,但耗时增加了两个数量级。
  • 价值:对于 “零样本” 检索场景,它能填补查询与文档之间的词汇鸿沟(Vocabulary Mismatch)。

C. Multi-HyDE (多视角)

  • 表现:生成了三个截然不同的文档(操作指南、专家解析、通用介绍)。
  • 优化效果:通过AsyncHyDE的并行生成,我们将耗时控制在了20秒左右(取决于 LLM 响应速度)。相比于串行实现的 60秒+,这是生产环境可接受的延迟。
  • 潜力:多视角策略极大地提升了召回率(Recall)。如果一个视角(如专家视角)偏离了正确答案,其他视角(如操作视角)仍能拉回相关性。

D. Adaptive HyDE (自适应)

  • 表现:
  • 对于简单查询(安装问题),正确路由至 Direct,仅耗时 1.8s(比纯 Direct 慢,但比 HyDE 快得多)。
  • 对于复杂查询(RAG 原理),正确路由至 HyDE。
  • 结论:这是最具生产价值的模式。它充当了守门员,防止简单问题消耗昂贵的 LLM 资源。
  1. 关键优化与未来方向

优化回顾:并行化生成 (Implemented)

正如代码所示,并行化是 Multi-HyDE 落地的前提。

  • 串行瓶颈:Ttotal=∑Tgeni≈N×20sTtota**l=∑TgeniN×20s
  • 并行优化:Ttotal=max⁡(Tgeni)+Toverhead≈20sTtota**l=max(Tgeni)+Toverhea**d≈20s通过asyncio.gather,我们成功抹平了多视角带来的大部分时间成本。

进阶思路 1:使用更快的模型

HyDE 的核心在于生成关键词语义向量,而非生成完美的散文。

  • 行动:可以将生成假设文档的模型替换为更小、更快的模型(如gpt-4o-mini,qwen-turbo等),将单次生成耗时压缩到 5s 以内,从而实现接近实时( < 5s)的 Multi-HyDE 检索。

进阶思路 2:预计算与缓存

  • 行动:对于 Adaptive 路由,可以引入语义缓存(Semantic Cache)。如果用户问过类似问题,直接复用之前的路由决策甚至检索结果。

进阶思路 3:调整 Adaptive 阈值

  • 行动:目前的路由完全依赖 LLM 判断。可以结合查询长度困惑度 (Perplexity)初步检索的相关性分数来辅助判断。例如,如果 Direct 检索的最高分低于 0.7,再触发 HyDE。

学AI大模型的正确顺序,千万不要搞错了

🤔2026年AI风口已来!各行各业的AI渗透肉眼可见,超多公司要么转型做AI相关产品,要么高薪挖AI技术人才,机遇直接摆在眼前!

有往AI方向发展,或者本身有后端编程基础的朋友,直接冲AI大模型应用开发转岗超合适!

就算暂时不打算转岗,了解大模型、RAG、Prompt、Agent这些热门概念,能上手做简单项目,也绝对是求职加分王🔋

📝给大家整理了超全最新的AI大模型应用开发学习清单和资料,手把手帮你快速入门!👇👇

学习路线:

✅大模型基础认知—大模型核心原理、发展历程、主流模型(GPT、文心一言等)特点解析
✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑
✅开发基础能力—Python进阶、API接口调用、大模型开发框架(LangChain等)实操
✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用
✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代
✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经

以上6大模块,看似清晰好上手,实则每个部分都有扎实的核心内容需要吃透!

我把大模型的学习全流程已经整理📚好了!抓住AI时代风口,轻松解锁职业新可能,希望大家都能把握机遇,实现薪资/职业跃迁~

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

http://www.cnnetsun.cn/news/1260980.html

相关文章:

  • 实现一下简单的聊天功能,包括聊天消息自适应大小
  • KohakuRAG:层次化RAG的新范式
  • 关于DBeaver的一些配置
  • 性能优化-前端性能优化相关
  • asp毕业设计——基于asp+access的网上选题系统设计与实现(毕业论文+程序源码)——网上选题系统
  • 【OS】操作系统分类及用户界面
  • 探索 Stanford Alpaca: 一个强大的深度学习框架
  • 探索超轻量级人脸识别神器:Ultra Light Fast Generic Face Detector 1MB
  • 【亲测免费】 推荐一款强大的数据可视化库——Plotly.js
  • MAPPO动作类型改进(二)——MAPPO+连续环境
  • IPED元数据可视化案例:创建取证报告中的元数据图表
  • Apache Airflow 项目教程
  • Carbon 开源项目指南
  • YTKNetwork批量请求终极指南:YTKBatchRequest高效应用实战
  • OpenCart 开源电商系统推荐
  • 新手到大卖都在用!亚马逊运营全流程工具盘点
  • 开源项目推荐:ccv
  • YTKNetwork性能优化终极指南:10个提升iOS网络请求效率的实用方法
  • 深入理解粤语编程编译器:从Python转换到LLVM执行
  • LCD屏幕调光方式全解析:DC调光 vs PWM调光,哪种更适合你的眼睛?
  • DS1302实时时钟模块从入门到精通:手把手教你搭建可调时钟系统
  • 用Multisim仿真8种经典运放电路:手把手教你搭建比例/微分/积分放大器
  • Android11音频架构剖析:RK3568平台如何通过RK809实现智能功放切换
  • 告别DHCP!CentOS服务器静态IP设置避坑指南(附常见问题解决方案)
  • 2026年广东省职业院校技能大赛(高职组)移动应用设计与开发赛项样题(一)
  • 从土壤质地到农作物适配:HWSD数据库在精准农业中的5个典型应用场景
  • PostgreSQL17 Windows版安装包下载全攻略:官网直链+镜像加速
  • FastAPI实战:5分钟搞定即梦AI文生视频API逆向(附完整代码)
  • 2023最新版:用夜神模拟器安卓7抓包微信小程序的3个关键配置
  • CCS8.1迁移CCS3.3工程全攻略:从环境配置到编译排错