一、说在前面

在45岁老架构师 尼恩的读者交流群(50+)中,通过 Java+AI双驱架构 帮助很多小伙伴拿到了一线企业如 字节、得物、阿里、滴滴、极兔、有赞、希音、百度、网易、美团、蚂蚁、得物的面试资格,遇到很多很重要的面试题:

阿里面试:RAG 怎么优化?

探讨一下 RAG优化 7 大 黄金法则 ?

最近有小伙伴在面试阿里,都到了这个的面试题。 小伙伴没回答好,支支吾吾的说了几句,面试官不满意,面试挂了。

所以,尼恩给大家做一下系统化、体系化的梳理,帮大家展示一下大家雄厚的 “技术肌肉”,让面试官爱到 “不能自已、口水直流”,然后实现”offer直提”。

《尼恩 架构笔记》《尼恩高并发三部曲》《尼恩Java面试宝典》的PDF,请到文末公号【技术自由圈】获取

RAG优化圣经:从原理到落地的7大黄金法则

阿里面试:RAG 怎么优化?探讨一下 RAG优化的7大黄金法则 ?

RAG优化圣经:从原理到落地的7大黄金法则

一、查询转换:让提问精准匹配知识库

1.1 多查询重写(针对 用户表述模糊)

1.2 HyDE 假设文档法(针对:用户问题和知识库差异大)

1.3 问题回退与分解(针对:复杂问题或无直接答案)

二、路由优化:构建智能分发网络

2.1 元数据路由引擎

2.2 动态Prompt路由

三、索引优化:知识库的智能重构

四、高阶RAG策略(混合检索+重排序+selfrag自检)

五、生成控制:工业级部署关键

六、性能优化基准测试

七、RAG 优化 落地 检查表

一、查询转换:让提问精准匹配知识库

我们在使用智能问答系统时,常常会遇到这样的情况:用户的问题表述不够清晰,或者和知识库里的内容表达方式不一致,导致系统找不到合适的答案。

这时候,就需要“查询转换”技术来帮忙了。

我们可以把查询转换想象成一个“翻译官”的角色,它负责把用户说的话“翻译”成系统能理解、能匹配到知识库的形式。

三种常见的查询转换方法:

查询转换就像是一个“翻译+理解+拆解”的高手,它帮助系统更好地理解用户的问题,并从知识库中找到最匹配的答案。

1.1 多查询重写(针对 用户表述模糊)

场景举例:

用户问:“苹果新品”,但知识库里可能没有直接叫“苹果新品”的文档,但有“iPhone15配置”、“Apple 2023发布会”这样的内容。

就像你问 路”附近大商场怎么走?“ 你说的“那个大商场”,然后帮他列举了“万达广场”、“国贸大厦”、“朝阳大悦城”等多个可能的名称,再去找哪个最接近。

示例代码(使用 LangChain):

from langchain.retrievers.multi_query import MultiQueryRetrieverfrom langchain.chat_models import ChatOpenAI# 初始化一个基础检索器(比如向量数据库)base_retriever = ...  # 这里可以是你的向量数据库检索器# 创建多查询检索器retriever = MultiQueryRetriever.from_llm(    llm=ChatOpenAI(temperature=0),  # 温度设为0,让模型输出更稳定    retriever=base_retriever,    prompt="请根据以下问题生成3个不同的查询语句,用<query>分隔:{query}")# 使用示例queries = retriever.get_relevant_documents("苹果新品")for q in queries:    print(q)

输出示例:

<query>Apple 2023发布会</query><query>iPhone15配置参数</query><query>苹果秋季新品发布会</query>

融合策略:RRF算法

系统会从多个查询中检索出结果,然后通过一个叫 RRF(Reciprocal Rank Fusion) 的算法来综合排序。

公式如下:

score = 1 / (rank + 60)

别怕,其实很简单- rank 是某个文档在某个查询中的排名- 分数越高,说明这个文档越有可能是正确答案

1.2 HyDE 假设文档法(针对:用户问题和知识库差异大)

HyDE(Hypothetical Document Embeddings)就像你让一个专家先“假设”一个答案,然后用这个假设的答案去知识库里找相似的内容。

你可以理解为:先写一个“理想答案”,然后用这个答案去知识库中找“最像它”的真实文档。

先让LLM生成"理想答案",再用其向量检索真实文档,弥合用户表述与知识库内容的语义鸿沟。

场景举例:

用户问:“量子计算在药物研发中的应用”,但知识库中没有直接提到“量子计算”和“药物研发”的组合内容。

HyDE 假设文档法 流程图

Prompt设计示例:

“请基于问题生成假设性回答:{query}要求:包含专业术语,忽略具体数值,用<answer>包裹”

例如输入:

量子计算在药物研发中的应用

输出:

<answer>量子计算通过模拟分子结构,加速新药研发过程,提高药物筛选效率。</answer>

局限与应对:

如果生成的假设文档和真实文档相似度太低(比如 < 0.7),系统会触发“二次检索”,换一种方式再找一遍。

1.3 问题回退与分解(针对:复杂问题或无直接答案)

比如 用户问:“RAG流程是什么?”、“AI在医疗中的应用有哪些?”、“特斯拉Q3财报数据是多少?”

当:

  • 这些问题要么太复杂
  • 要么知识库中没有直接答案。

可以使用 问题回退与分解 的方法。

原理解释:

这种情况下,系统不会直接放弃,而是尝试“拆解”问题,或者“退一步”找更宽泛的答案。

你可以理解为:“不会做难题,就先做简单题。”

分解策略选择表:

问题类型 策略 案例说明
多步骤推理 串行分解 “RAG流程?” → 分成“检索阶段”和“生成阶段”
跨领域问题 并行分解 “AI医疗应用?” → 同时查“AI技术”和“医疗应用”
细节查询失败 抽象回退 “特斯拉Q3财报” → 找“新能源企业财报”

示例代码(伪代码):

def decompose_query(query):    if is_multi_step(query):        return split_into_steps(query)    elif is_cross_domain(query):        return split_into_domains(query)    elif is_too_specific(query):        return generalize_query(query)    else:        return [query]

二、路由优化:构建智能分发网络

在构建一个智能问答系统时,我们不能把所有问题都交给同一个模型来处理。

就像医院里不能让一个医生看所有科室的病人一样,我们需要一个“智能分诊台”,把不同类型的问题分发给最合适的“专家”来处理。

这就引出了第二大优化策略:路由优化

它就像一个“智能分发系统”,能自动判断用户的问题属于哪个领域,然后把问题交给最适合的处理模块。

路由优化的流程图

整个路由优化系统就像一个“智能分拣中心”,它能根据问题内容自动判断:

  • 该由哪个“专家”来处理
  • 用哪种“回答风格”最合适

这样可以大大提高系统的响应速度和回答质量,真正做到“因题施策”。

2.1 元数据路由引擎

这里的元数据 指的是 问题 元数据,比如问题的分类标签等。

“元数据路由引擎” 类似 一个问题 智能快递分拣系统。

快递员把包裹送到分拣中心后,系统会根据包裹上的地址信息,自动判断这个包裹该发往哪个城市的仓库。

用户 问题就是“快递”,元数据路由引擎 会根据问题内容 去分析 meta-data元数据(比如问题类型),判断它属于哪个领域(比如医疗、编程、教育等),然后把问题交给对应的“专家”模块来处理。

元数据路由引擎 实现流程

1. 接收用户问题

2. 使用分类模型判断问题所属领域

3. 根据分类结果选择对应的检索器(retriever)

4. 将问题交给对应的检索器进行处理

示例代码(简化版)

# 模拟一个分类模型def llm_classify(query):    if "病" in query or "医生" in query:        return "medical"    elif "代码" in query or "函数" in query:        return "code"    else:        return "default"# 不同领域的检索器def medical_retriever(query):    return f"[医疗检索] 正在查找与 '{query}' 相关的医学资料..."def code_retriever(query):    return f"[代码检索] 正在查找与 '{query}' 相关的编程资料..."def default_retriever(query):    return f"[通用检索] 正在查找与 '{query}' 相关的一般资料..."# 路由决策函数def route_query(query):    topic = llm_classify(query)    if topic == "medical":        return medical_retriever(query)    elif topic == "code":        return code_retriever(query)    else:        return default_retriever(query)# 测试print(route_query("我最近总是头痛,可能是什么原因?"))# 输出:[医疗检索] 正在查找与 '我最近总是头痛,可能是什么原因?' 相关的医学资料...

关键参数说明

  • 路由准确率 > 85%

如果系统判断错误太多,就会启用“多路并行检索”,也就是同时让多个检索器一起处理问题,确保不漏掉正确答案。

  • 响应延迟 < 200ms

为了用户体验,整个路由过程必须非常快,不能让用户等太久。

2.2 动态Prompt路由

Prompt 就像是给模型的“答题模板”。不同的用户可能需要不同风格的回答方式。

比如:

  • 技术人员喜欢看公式和架构图
  • 学生希望有通俗易懂的解释
  • 商务人士喜欢简洁明了的总结

“动态Prompt路由”就是根据用户的问题,自动选择最合适的回答模板。

动态Prompt路由 实现流程

(1) 准备多个Prompt模板(技术类、教育类、商务类等)

(2) 计算用户问题与每个模板的语义相似度

(3) 选择相似度大于0.8的最佳模板

(4) 将问题套用模板后交给模型生成回答

动态Prompt路由 示例代码

from sklearn.metrics.pairwise import cosine_similarityfrom sentence_transformers import SentenceTransformer# 加载语义模型model = SentenceTransformer('paraphrase-MiniLM-L6-v2')# 定义Prompt模板池prompt_templates = {    "technical": "请用数学公式和架构图解释{query}",   # 模版一    "educational": "请用通俗易懂的语言解释{query}",  # 模版2    "business": "请用简洁明了的方式总结{query}"    #   模版3}# 用户问题user_query = "解释Transformer注意力机制"# 计算语义相似度query_embedding = model.encode([user_query])template_embeddings = model.encode(list(prompt_templates.values()))# 计算相似度similarities = cosine_similarity(query_embedding, template_embeddings)# 找出最匹配的模板best_index = similarities.argmax()best_template = list(prompt_templates.keys())[best_index]best_score = similarities[0][best_index]if best_score > 0.8:    print(f"匹配成功:使用 {best_template} 模板,相似度 {best_score:.2f}")    final_prompt = prompt_templates[best_template].format(query=user_query)    print("生成的Prompt:", final_prompt)else:    print("没有找到合适的模板")

输出示例:

匹配成功:使用 technical 模板,相似度 0.87生成的Prompt:请用数学公式和架构图解释解释Transformer注意力机制

三、索引优化:知识库的智能重构

想象一下, 一本厚厚的百科全书,但每次查找信息都得一页一页翻,效率很低。

索引优化,就是给这本百科全书加上“目录”、“标签”、“关键词”等工具,这样能快速找到想要的内容。

索引优化的核心,就是让知识库更容易被“找到”。

来看看几种优化方法:

1. 多表征索引

从不同角度理解内容,提高匹配率。

2. RAPTOR分层索引

处理长文档,像目录一样结构化。

3. 语义分块器

根据语义切分,避免信息断裂。

3.1 多表征索引(Multi-Representation)

这个方法就像是给知识库里的每一段内容,从不同角度“拍照”,每张照片代表一种理解方式,这样在搜索时,不管用户怎么提问,都能找到匹配的内容。

多表征索引流程

多表征索引 (三重嵌入 策略,三种“照片”)
嵌入类型 拍照方式 作用说明
原始分块 把文本按固定长度切开 保留原始信息,就像原图一样清晰
摘要向量 用AI生成摘要后再“拍照” 抓住整体意思,像看图说故事一样
问题向量 AI模拟用户可能问的问题 提高匹配度,像提前猜到你想问啥

举个例子: 假设你有一段关于“人工智能”的内容,多表征索引(Multi-Representation) 生成 三重嵌入策略(三种“照片”) 如下:

  • 原始分块是原文字,
  • 摘要向量是“AI是模拟人类智能的技术”,
  • 问题向量可能是“什么是人工智能?”、“AI有哪些应用?” 这些用户可能问的问题。
存储优化:三重嵌入 FAISS的 存储方式

FAISS是一个高效的向量数据库。

嵌入类型 生成方式 存储优化
原始分块 文本分割 FAISS-IVF
摘要向量 T5生成摘要+嵌入 量化索引(PQ)
问题向量 GPT生成"可能被问的问题" HNSW图索引

注意,表中的 IVF_PQ是它的一种压缩索引方式。

  • 类比:就像把高清照片压缩成小图,既节省空间又不影响查找。
  • 效果:内存占用减少4倍,相当于把100GB的数据压缩到25GB。

IVF_PQ 和 HNSW 的性能收益

  • 内存占用降低4倍(IVF_PQ量化)
  • 检索速度提升3倍(HNSW近邻搜索)

3.2 RAPTOR 分层索引(处理超长文档)

有时候,文档太长了,比如一本书、一篇论文,直接切分效果不好。

RAPTOR就像给这本书建了一个“目录树”,从章节到段落,再到句子,层层归纳。

四层树状结构

  • 根节点:整篇文章的摘要,像书的简介。
  • 中间节点:把几个小段落合并,形成更大的段落。
  • 叶子节点:最小的段落,像句子一样短。
检索策略对比
方法 召回率 响应速度 适用场景
树遍历 92% 慢(300ms) 高精度要求
折叠树 85% 快(80ms) 实时系统需求
  • 树遍历:像查字典一样,一层一层找,准确但慢。
  • 折叠树:像直接跳到相关章节,快但可能漏掉细节。

3.3 分块优化黄金法则

分块就像切蛋糕,切得太大,吃起来不方便; 切得太小,又容易丢失整体味道。

不同模型适合不同的切法。

分块大小建议
嵌入模型 最佳分块长度 重叠区间
text-embedding-ada-002 256 token 50 token
bge-large-zh 512 token 100 token
  • token:可以理解为一个词或标点,比如“人工智能” 是两个token。
  • 重叠区间:就像切蛋糕时,前后两块有部分重合,避免断句导致信息丢失。
语义分块器(Semantic Chunker)实现

有些内容不能按固定长度切,比如一句话被断开了。 语义分块器会根据语义自动判断哪里该切。

from langchain_experimental.text_splitter import SemanticChunkersplitter = SemanticChunker(embeddings, breakpoint_threshold=0.7)
  • embeddings:是模型对文本的理解方式。
  • breakpoint_threshold:设定一个“语义断点”的阈值,超过这个值就切开。

语义分块流程

四、高阶RAG策略(混合检索+重排序+selfrag自检)

光靠单一的RAG方法(比如只用向量检索)往往不够准,也不够快。

高阶RAG策略的方法 把不同的检索方式结合起来,在准确性和效率之间找到一个平衡点

高阶RAG策略 包括 :

  • 混合检索
  • 重排序
  • selfrag自检

高阶RAG策略(混合检索+重排序+selfrag自检) 可以总结为一个流程图:

通过这套“混合检索 + 重排序 + 自检机制”的组合拳, 能 大幅提升准确性 。

4.1 混合检索实战配置:让搜索更聪明

举个生活例子:

想象你在图书馆找一本关于“人工智能”的书。你有两种方法:

  • 方法一(BM25):关键词检索, 根据关键词(比如“AI”、“机器学习”)在书名和摘要中查找,就像用搜索引擎查关键词。
  • 方法二(稠密检索):语义检索, 把每本书的内容变成一个“向量”,然后找和你问题 在语义上 最相似的那本 。

如果我们只用其中一种方法,可能会漏掉一些好书。

所以我们可以把两种方法结合起来,取长补短。

实战代码示例:
from langchain.retrievers import EnsembleRetrieverfrom langchain.retrievers import BM25Retriever, DenseRetriever# 初始化两个检索器bm25_retriever = BM25Retriever.from_documents(documents)dense_retriever = DenseRetriever.from_embeddings(embeddings, documents)# 创建混合检索器ensemble_retriever = EnsembleRetriever(    retrievers=[bm25_retriever, dense_retriever],    weights=[0.4, 0.6],  # BM25占40%,稠密检索占60%    c=60  # RRF算法参数,控制融合方式)
效果对比:
检索方式 召回率(找到相关文档的概率)
纯向量检索 72%
混合检索(BM25+稠密) 89%

可以看到,混合检索明显更准!

4.2 重排序(Re-Rank)技术栈:让结果更靠谱

先 粗排 在 精排。

比如 挑选 面试候选人,HR先从几百份简历里挑出50个候选人(初筛),然后让专业面试官再从中选出5个最合适的(精排)。

这样效率高,而且更精准。

模型选型指南:
模型名称 计算开销 精度 适用场景
Cohere rerank ★★★★ 商业API可用
bge-reranker ★★★☆ 开源首选
T5-Encoder ★★☆☆ 低成本场景

4.3 Self-RAG自检框架:让AI学会“反思”

就像学生做完题后自己检查一遍,看看有没有做错。

Self-RAG 就是让 AI 在回答问题后,主动检查自己的回答是否可靠,如果不靠谱,就重新检索、重新生成。

Self-RAG 自检流程:

自检标记规则:
[Retrieval] 是否需要检索? → 是/否  [Relevance] 文档相关度 → 1-5分  [Support] 回答是否有依据 → 是/部分/否
实际应用示例:

比如 AI 回答:“太阳是绕地球转的”,系统检测到这个说法 没有依据(Support=否),就会自动标记为“幻觉”,然后重新检索正确的资料,再生成正确答案。

五、生成控制:工业级部署关键

在工业级的AI系统中,生成内容的质量和安全性至关重要。

就像工厂生产产品一样,不能只追求速度快,还得保证产品合格、安全、有依据。这就需要一套“生成控制机制”,来确保输出的内容准确、合规、有来源。

主要从两个方面来控制生成质量:

  • Prompt工程规范
  • CRAG纠正框架

5.1 Prompt工程规范:让AI听懂“规矩”

Prompt(提示词)就像是你给AI下的“指令”。

指令写得好,AI才能干得好。

工业级部署中,Prompt不是随便写的,而是有一套规范,确保AI输出的内容安全、准确、有依据。

1. 安全护栏设计:给AI上“保险”

就像汽车要有安全带和气囊一样,AI也需要“安全护栏”,防止它输出错误、违法或敏感信息。

举个例子,我们可以在Prompt中加一段“规则说明”,告诉AI:

“你是一个专业助手,回答必须满足以下几点:1. 只能根据我给你的资料回答;2. 如果不确定,就告诉我‘根据现有资料无法确认’;3. 所有重要信息都要标明来源。”

这样,AI就不会乱编内容,也不会泄露隐私。

RAG prompt 安全护栏设计

安全护栏是为了确保生成内容的准确性、安全性和可追溯性。设计原则包括:

(1) 严格基于上下文:强制模型仅使用提供的检索内容,避免依赖预训练知识产生幻觉。

(2) 不确定性处理:当检索内容不足以回答问题时,明确要求模型声明无法回答,避免编造。

(3) 来源标注:对关键数据标注来源,便于用户查证和后续调试。

安全护栏是工业级 RAG 系统的核心防线,确保生成内容可靠、安全、可控

# LangChain 实现from langchain.prompts import PromptTemplatesafety_prompt = PromptTemplate.from_template("""你是一名专业助手,回答需满足:   {context}---用户问题:{question}""")
2. 少样本学习(Few-shot):教AI举一反三

有时候,我们不想让AI自由发挥,而是希望它按照某种格式来回答问题。

这时候就可以用“少样本学习”的方式,给AI几个例子,让它“照着做”。

比如,我们可以这样写一个Prompt:

few_shot_prompt = """示例问题:量子纠缠的原理?示例回答:根据文档第5章,量子纠缠是...(引用公式2.3)当前问题:{query}"""

这样,AI看到“示例问题”和“示例回答”后,就知道该怎么组织语言、引用资料了。

类比:这就像教孩子写作文,先给他看一篇范文,再让他自己写。

示例 动态注入机制

def build_fewshot_prompt(query):    # 1. 检索相似历史问题    examples = retrieve_similar_queries(query, k=3)    # 2. 构建提示词    prompt = "示例问答对:\n"    for q, a in examples:        prompt += f"问题:{q}\n回答:{a}\n\n"    prompt += f"当前问题:{query}"    return prompt
3 不确定性管理:

阈值设置:当上下文相关性得分 < 0.65 时自动触发"无法确认"回复

实现逻辑

if max(relevance_scores) < 0.65:    return "根据现有资料无法确认"

5.2 CRAG纠正框架:让AI输出更靠谱

CRAG 是一个“四步纠错流程”,用来确保AI的回答不仅快,还要准。

CRAG 就像是一套“质检流程”,每一步都检查内容是否合格。

四阶质检流程详解:
阶段 检查什么? 用什么工具?
检索评估 找到的资料相关性够不够? MiniLM分类器(判断相似度)
知识精炼 提取关键事实,去掉废话 LLM + 正则表达式
动态补全 缺少关键信息怎么办? Google Search API
最终生成 输出内容是否标注来源? 固定模板 + LLM生成
举个例子帮助理解:

假设用户问:“太阳为什么会发光?”

1. 检索评估

系统先从知识库中找资料,看看有没有关于“太阳发光原理”的内容。如果找到的资料和问题相关性太低(比如讲的是月亮),就跳过。

2. 知识精炼

从找到的资料中提取关键点,比如“核聚变”、“氢变氦”、“释放能量”等,去掉不相关的描述。

3. 动态补全

如果发现资料中没有提到“温度有多高”,就调用Google搜索API补充。

4. 最终生成

把整理好的内容用固定格式输出,比如:

“据[doc1]记载,太阳之所以发光,是因为其核心发生核聚变反应,将氢转化为氦,并释放出大量能量。”

CRAG流程图:

总结一下:

在工业级部署中,AI生成内容不能“随便说”,而是要:

  • 有规范(Prompt工程)
  • 有流程(CRAG纠正框架)
  • 有依据(标注来源)
  • 有安全(防止乱说)

这就像工厂生产产品,每一步都要检查质量,确保最终输出的是“合格品”。

六、性能优化基准测试

RAG 常常会面临一个问题:怎么在“效果好”和“速度快”之间找到平衡?

这就像是你去超市买东西,既要找对商品(准确),又要快点结账(效率),还要不花冤枉钱(成本)。

我们做性能优化,就是在这些因素之间做权衡。

6.1 不同优化策略的对比

我们测试了几种常见的优化策略,看看它们在两个关键指标上的表现:

  • 准确率:系统回答问题的准确程度(比如HotpotQA)
  • 召回率:系统能从知识库中找出相关文档的能力(比如MSMARCO)
  • 延迟:每次查询需要的时间(单位:毫秒)
优化策略 准确率 召回率 延迟(ms) 说明
基础RAG 38.2% 64.7% 120 最基础的实现,速度快但效果一般
+查询转换+混合检索 52.1% 81.3% 180 通过改写问题和多方式检索提升效果
+Self-RAG+重排序 63.7% 89.2% 240 加入自我评估和排序优化,效果更好
全策略集成 71.3% 93.5% 320 所有方法都上,效果最好但速度最慢

6.2 举个例子:查询转换 + 混合检索的代码片段

比如我们想实现“查询转换”和“混合检索”,可以这样写代码(伪代码):

from query_rewriter import rewrite_queryfrom retriever import vector_search, keyword_searchdef hybrid_search(query):    # 第一步:改写查询    rewritten_queries = rewrite_query(query)    # 第二步:分别用向量和关键词搜索    vector_results = []    keyword_results = []    for q in rewritten_queries:        vector_results.extend(vector_search(q))        keyword_results.extend(keyword_search(q))    # 第三步:合并结果并去重    combined = merge_and_deduplicate(vector_results, keyword_results)    return combined

这段代码的意思是:

先对用户的问题进行改写,然后分别用两种方式去搜索,最后合并结果,这样能提高找到正确答案的概率。

6.3 实战建议

  • 起步阶段:建议从“查询转换 + 混合检索 + 重排序”这三件套开始;
  • 进阶阶段:再逐步引入Self-RAG、RAPTOR等高级策略;
  • 注意成本:不是所有策略都适合你的项目,要根据业务需求选择。

七、RAG 优化 落地 检查表

7.1、索引构建阶段
  • 文档预处理:清洗HTML/PDF解析错误
  • 分块测试:对不同段落类型(叙述/表格/代码)采用不同分割器
  • 嵌入验证:用MTEB中文榜测试模型(bge-large-zh首选)
7.2、查询阶段
  • 安装rerank模块:pip install sentence-transformers
  • 配置HyDE熔断:当生成内容困惑度>1.5时切换基础检索
  • 监控检索衰减:每周测试Top50查询召回率
7.3、生成阶段
  • 植入溯源标记:[1]对应向量库doc_id
  • 设置幻觉检测:llm_detect_hallucination(response) < 0.9
  • 定义超时策略:单次生成>5s触发简化输出
7.4、其他避坑指南 :
  • 中文场景警惕嵌入模型语言偏差,测试”芯片“vs”chip“相似度
  • 长文档索引优先使用RAPTOR而非简单分块
  • 商业API调用需配置fallback机制(Cohere宕机时切本地BGE)
7.5、RAG 持续优化

7.6、RAG优化最佳实践

最佳实践:从混合检索+查询重写+ReRank三件套起步,逐步引入Self-RAG等高级策略。

每周进行召回率测试,持续优化阈值参数。

说在最后:有问题找老架构取经‍

只要按照上面的 尼恩团队梳理的 方案去作答, 你的答案不是 100分,而是 120分。 面试官一定是 心满意足, 五体投地。

按照尼恩的梳理,进行 深度回答,可以充分展示一下大家雄厚的 “技术肌肉”,让面试官爱到 “不能自已、口水直流”,然后实现”offer直提”。

很多小伙伴刷完后, 吊打面试官, 大厂横着走。

在刷题过程中,如果有啥问题,大家可以来 找 40岁老架构师尼恩交流。

狠狠卷,实现 “offer自由” 很容易的, 前段时间一个武汉的跟着尼恩卷了2年的小伙伴, 在极度严寒/痛苦被裁的环境下, offer拿到手软, 实现真正的 “offer自由” 。

如何学习大模型 AI ?

我国在AI大模型领域面临人才短缺,数量与质量均落后于发达国家。2023年,人才缺口已超百万,凸显培养不足。随着Al技术飞速发展,预计到2025年,这一缺口将急剧扩大至400万,严重制约我国Al产业的创新步伐。加强人才培养,优化教育体系,国际合作并进,是破解困局、推动AI发展的关键。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

2025最新大模型学习路线

明确的学习路线至关重要。它能指引新人起点、规划学习顺序、明确核心知识点。大模型领域涉及的知识点非常广泛,没有明确的学习路线可能会导致新人感到迷茫,不知道应该专注于哪些内容。

对于从来没有接触过AI大模型的同学,我帮大家准备了从零基础到精通学习成长路线图以及学习规划。可以说是最科学最系统的学习路线。

在这里插入图片描述

针对以上大模型的学习路线我们也整理了对应的学习视频教程,和配套的学习资料。

大模型经典PDF书籍

新手必备的大模型学习PDF书单来了!全是硬核知识,帮你少走弯路!

在这里插入图片描述

配套大模型项目实战

所有视频教程所涉及的实战项目和项目源码等
在这里插入图片描述

博主介绍+AI项目案例集锦

MoPaaS专注于Al技术能力建设与应用场景开发,与智学优课联合孵化,培养适合未来发展需求的技术性人才和应用型领袖。

在这里插入图片描述

在这里插入图片描述

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

在这里插入图片描述

为什么要学习大模型?

2025人工智能大模型的技术岗位与能力培养随着人工智能技术的迅速发展和应用 , 大模型作为其中的重要组成部分 , 正逐渐成为推动人工智能发展的重要引擎 。大模型以其强大的数据处理和模式识别能力, 广泛应用于自然语言处理 、计算机视觉 、 智能推荐等领域 ,为各行各业带来了革命性的改变和机遇 。

在这里插入图片描述

适合人群

  • 在校学生:包括专科、本科、硕士和博士研究生。学生应具备扎实的编程基础和一定的数学基础,有志于深入AGI大模型行业,希望开展相关的研究和开发工作。
  • IT行业从业人员:包括在职或失业者,涵盖开发、测试、运维、产品经理等职务。拥有一定的IT从业经验,至少1年以上的编程工作经验,对大模型技术感兴趣或有业务需求,希望通过课程提升自身在IT领域的竞争力。
  • IT管理及技术研究领域人员:包括技术经理、技术负责人、CTO、架构师、研究员等角色。这些人员需要跟随技术发展趋势,主导技术创新,推动大模型技术在企业业务中的应用与改造。
  • 传统AI从业人员:包括算法工程师、机器视觉工程师、深度学习工程师等。这些AI技术人才原先从事机器视觉、自然语言处理、推荐系统等领域工作,现需要快速补充大模型技术能力,获得大模型训练微调的实操技能,以适应新的技术发展趋势。
    在这里插入图片描述

课程精彩瞬间

大模型核心原理与Prompt:掌握大语言模型的核心知识,了解行业应用与趋势;熟练Python编程,提升提示工程技能,为Al应用开发打下坚实基础。

在这里插入图片描述
RAG应用开发工程:掌握RAG应用开发全流程,理解前沿技术,提升商业化分析与优化能力,通过实战项目加深理解与应用。 在这里插入图片描述

Agent应用架构进阶实践:掌握大模型Agent技术的核心原理与实践应用,能够独立完成Agent系统的设计与开发,提升多智能体协同与复杂任务处理的能力,为AI产品的创新与优化提供有力支持。

在这里插入图片描述

模型微调与私有化大模型:掌握大模型微调与私有化部署技能,提升模型优化与部署能力,为大模型项目落地打下坚实基础。 在这里插入图片描述

顶尖师资,深耕AI大模型前沿技术

实战专家亲授,让你少走弯路
在这里插入图片描述

一对一学习规划,职业生涯指导

  • 真实商业项目实训
  • 大厂绿色直通车

人才库优秀学员参与真实商业项目实训
以商业交付标准作为学习标准,具备真实大模型项目实践操作经验可写入简历,支持项目背调 在这里插入图片描述
大厂绿色直通车,冲击行业高薪岗位

在这里插入图片描述

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

在这里插入图片描述

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐