Skip to content

AI 搜索引擎

AI 搜索引擎(AI Search Engine)将传统搜索的”给链接”升级为”给答案”——用户提一个问题,系统自动检索、阅读、总结,直接给出带引用来源的结构化回答。它是 LLM 应用生态概览中最高频的 toC 应用形态。2025 年以来,AI 搜索进一步演化为两大方向:即时问答搜索(Perplexity、ChatGPT Search、Google AI Overviews)与 Deep Research 深度研究(多步推理 + 自动报告生成),后者标志着搜索从”检索工具”走向”自主研究 Agent”。本页梳理 AI 搜索的完整技术链路。前置阅读:RAG 检索增强生成。

AI 搜索引擎 = 一个帮你查资料、读论文、写摘要的研究助手。

传统搜索引擎(Google/Bing)像一个图书管理员——你问关键词,它给你一堆可能相关的书单(链接列表),你自己去翻。AI 搜索引擎像一个研究助手——你问问题,它自己去查资料、读文档、整理成带引用来源的答案,直接交给你。

核心差异:

  • 关键词 vs 意图:传统搜索做关键词匹配(TF-IDF/BM25——即根据词频与文档频率打分的经典文本检索算法),你搜”苹果”它分不清是水果还是公司。AI 搜索利用 LLM 的语义理解能力把握你的真实意图——“苹果最新财报”自动知道你想查公司。这里的关键技术是 embedding(嵌入向量),即将文本映射为高维空间中的稠密向量,使语义相近的内容在向量空间中距离也近,从而支持基于语义而非字面的匹配。详见 Embedding 模型。
  • 链接列表 vs 直接答案:传统搜索给 10 个蓝色链接,你自己点开看。AI 搜索直接生成答案,末尾标注引用来源,你可以进一步追问。这种模式在学术上被称为 Answer Engine(答案引擎),以区别于传统的 Search Engine(搜索引擎)。
  • 单轮 vs 多轮:传统搜索每次独立查询。AI 搜索支持追问、澄清、深入——像和专家对话。
  • 检索 vs 研究:2025 年兴起的 Deep Research 模式更进一步——系统自动执行数十轮搜索-阅读-推理-再搜索的循环,最终输出一篇带完整引用的万字研究报告,相当于一个初级研究员数小时的工作量。

技术链路比普通 RAG 复杂得多,因为要面对互联网级别的实时数据、开放域问题、以及用户对时效性的高要求。

一个生产级 AI 搜索引擎的核心管线:

1. 查询理解(Query Understanding)

用户输入的自然语言查询先经过理解和改写:

  • 意图识别:判断查询类型——事实型(“珠穆朗玛峰多高”)、导航型(“GitHub 登录”)、研究型(“比较 React 和 Vue 的优劣”)、时效型(“今天新闻”)。2025 年的系统中,意图识别通常由一个轻量 LLM(如 GPT-4o-mini 或开源小模型)或专门的分类器完成,在毫秒级给出判断。
  • 查询改写:将口语化、模糊的查询改写成更适合检索的形式。如”那个有名的红圈椅子”改写为”Hans Wegner 红色圆椅 CH07”。改写策略包括同义词扩展、消歧义补充、时态归一化等。
  • 查询分解:复杂问题拆成子问题。如”GPT-4 和 Claude 3 哪个更便宜”拆成”GPT-4 API 价格”和”Claude 3 API 价格”两个子查询。这一步在比较型、多实体问题中尤其关键,是 Perplexity Pro Search 和 ChatGPT Search 的核心能力之一。
  • 多路查询生成:同一问题生成多个不同角度的检索查询,提高召回率。例如对”2025 年最佳编程语言”同时生成”2025 编程语言排行”、“2025 最热门开发语言”、“TIOBE 2025 指数”等多个查询。
  • 对话上下文消解:在多轮对话中,用户说”那它呢”,系统需要先用 LLM 做指代消解(Coreference Resolution——即解析代词指向的具体实体),将上下文中的信息融入查询,再执行检索。这是 ChatGPT Search、Perplexity 等产品支持自然追问的技术基础。

2. 多源检索(Multi-Source Retrieval)

不同于企业级 RAG 只搜索一个向量库(Vector Database——存储 embedding 向量的专用数据库,支持高效相似度检索),AI 搜索引擎需要多源检索:

  • Web 搜索引擎 API:调用 Google/Bing/Brave/Exa 等的搜索 API 获取候选网页列表。这是获取实时信息的主要渠道。2025 年出现了越来越多 专为 AI 设计的搜索 API(如 Tavily、Exa、Jina s.j.in),它们直接返回清洗后的结构化内容而非 HTML,省去了网页抓取步骤。
  • 知识图谱:Google Knowledge Graph、Wikidata 等结构化知识库,适合事实型问题(人物、地点、数值等)。知识图谱以实体-关系-属性的三元组形式存储信息,能提供精确的事实查答。
  • 新闻/天气/股价等垂直 API:时效性问题调用专门的垂直搜索接口,获取结构化的实时数据。
  • 自建索引:部分平台维护自己的网页索引(如 Perplexity 的自建爬虫+索引、Google 的万亿级网页索引)。自建索引的优势是可以完全控制排序逻辑和新鲜度。
  • 多模态检索:2025 年的主流 AI 搜索已支持图片输入搜索(如截图搜索)、代码搜索、学术文献全文搜索等。多模态检索依赖 CLIP 等 跨模态 embedding 模型(即将图片和文本映射到同一向量空间,使”一只猫的图片”和文本”cat”距离相近)。

3. 网页内容提取与分块

检索回来的 URL 需要实际抓取和提取正文内容:

  • 正文提取:从 HTML 中提取正文(去除导航栏、广告、侧边栏等噪声)。传统方法使用 Readability 算法(基于 DOM 结构与文本密度启发式判断正文区域),2024-2025 年越来越多系统转向用 专门的提取模型或 LLM 辅助提取(如 Jina Reader、Firecrawl),能更好地处理 SPA(单页应用)和动态渲染页面。
  • 分块:将长网页分成小块(如 500-1000 token)。分块策略直接影响检索质量——常见策略包括固定窗口分块、语义分块(按段落/标题边界切分)、以及递归分块(先按大标题切,再按小标题切)。token(词元)是 LLM 处理文本的基本单位,由 tokenizer(分词器)将原始文本切分而成;一个英文单词约 1-2 个 token,一个中文字约 1-2 个 token。详见 Tokenizer。
  • 质量过滤:丢弃内容农场、低质量页面——通过域名声誉、内容质量模型等判断。2025 年随着 AI 生成内容的泛滥,AI 内容检测与去重 也成为质量过滤的重要环节。

4. 相关性筛选与重排

  • 初筛:从大量候选块中粗筛出与问题相关的候选。通常用 embedding 相似度(余弦相似度)或 BM25 分数快速过滤。
  • 重排序:用 Reranker 模型(交叉编码器,Cross-Encoder——将查询和文档拼接后联合编码,比双塔模型更精确但更慢)对候选块按相关性精排。详见重排序模型。
  • 去重:多个 URL 可能引用同一来源(如多篇新闻引用同一篇论文),需要去重。去重可基于 URL、内容哈希或语义相似度。
  • 新鲜度加权:对时效性问题,给予近期发布的内容更高权重。这通常在重排阶段作为一个特征因子融入排序公式。

5. 上下文组装与答案生成

  • 将精排后的 top-K 网页块拼入上下文,每块标注来源编号。上下文组装的核心挑战是 token 预算管理——LLM 的上下文窗口有限(如 GPT-4o 为 128K token),需要在有限窗口内塞入最有价值的信息。详见上下文工程。
  • 用 LLM 生成结构化答案,在答案中标注引用编号(如 “根据 [1] [3],…”)。生成的风格和格式由 System Prompt 控制——可以要求表格对比、分点列出、带优缺点分析等。
  • 关键约束:只基于检索内容回答,不编造(幻觉控制)。业界通行的做法是在 System Prompt 中加入强制约束:“只基于以下检索结果回答,找不到相关信息就说’未找到相关资料’“。详见AI 安全与护栏。
  • 结构化输出:2025 年的系统越来越多地使用 structured output(结构化输出,如 JSON Schema 约束 LLM 输出格式)来分离答案正文、引用列表、相关问题等结构,便于前端精确渲染。详见结构化输出。

6. 相关问题推荐

  • 生成 3-5 个相关的追问建议,引导用户深入探索。相关问题通常由 LLM 基于当前问题和检索内容生成,是 AI 搜索区别于传统搜索的标志性功能。

2025 年 AI 搜索最重要的进化是 Deep Research——从”一次搜索给答案”升级为”多轮自主研究给报告”。代表产品包括 OpenAI Deep Research(基于 o3 推理模型)、Google Gemini Deep Research、Perplexity Deep Research、以及 Grok DeepSearch 等。

Deep Research 的核心管线是一个 Agentic 搜索循环:

  1. 规划阶段:LLM 先理解用户的复杂问题,制定一个多步搜索计划——确定需要查哪些子主题、每个子主题用什么查询。
  2. 搜索-阅读-推理循环:按计划执行多轮搜索(通常 10-50 轮),每轮搜索→抓取→阅读→提取关键信息→判断是否需要继续搜索。这一步大量依赖 推理模型(如 o3、DeepSeek-R1——具备 chain-of-thought 链式推理能力的 LLM,能在回答前进行长链推理)来做判断。
  3. 信息综合:将所有轮次收集的信息综合成一篇结构化的研究报告,包含引言、正文、结论和完整引用列表。

Deep Research 与即时搜索的关键区别:

维度即时 AI 搜索Deep Research
搜索轮次1-3 轮10-100+ 轮
耗时5-15 秒1-30 分钟
输出段落级答案万字级研究报告
适用场景快速事实查询深度课题调研
成本低(单次 LLM 调用)高(大量推理 + 搜索)

Deep Research 的底层技术本质上是 Agent 架构(自主决策系统),将搜索、阅读、推理封装为一个可自主循环的搜索工具。详见 Agent 模式。

维度传统 RAGAI 搜索
数据源企业私有知识库全互联网(实时)
索引规模万到百万级文档百亿级网页
查询类型领域内问题开放域任意问题
时效性取决于索引更新频率实时(秒级)
引用来源内部文档公开网页 URL
查询改写可选必须
检索延迟毫秒级(向量搜索)秒级(网页抓取)
幻觉控制难度中(领域可控)高(网络信息质量参差)

随着 AI 搜索引擎流量激增,一个新兴领域应运而生:Answer Engine Optimization(AEO),也称 Generative Engine Optimization(GEO)——即如何让你的内容更容易被 AI 搜索引擎引用。

核心实践包括:

  • 结构化标记:使用 Schema.org 结构化数据标记,帮助 AI 理解页面内容类型与属性。
  • 清晰的内容层级:AI 提取器偏好有清晰标题层级(H1→H2→H3)和明确段落的内容。
  • 事实密度:AI 搜索倾向引用包含具体数据、统计、引用来源的高密度内容页。
  • 原创性与权威性:随着 AI 生成内容泛滥,AI 搜索引擎在排序时越来越重视内容原创性和作者权威信号。

用 LLM + 搜索 API 构建简易 AI 搜索

Section titled “用 LLM + 搜索 API 构建简易 AI 搜索”
import openai
import requests # 用于调用搜索 API
client = openai.OpenAI()
def ai_search(query, num_results=5):
"""简易 AI 搜索引擎: 改写 → 搜索 → 提取 → 生成"""
# 第一步: 用 LLM 改写查询(提升检索质量)
# 查询改写是整个管线中投入产出比最高的一步
rewrite = client.chat.completions.create(
model="gpt-4o-mini",
messages=[{
"role": "user",
"content": (
"将以下搜索查询改写为最适合搜索引擎的形式,"
"补充必要的消歧义词,只输出改写后的查询:\n"
f"{query}"
),
}],
max_tokens=50,
)
search_query = rewrite.choices[0].message.content.strip()
print(f"改写后查询: {search_query}")
# 第二步: 调用搜索 API(这里用 Brave Search API 示例)
# Tavily、Exa 等专为 AI 设计的搜索 API 会直接返回清洗后的正文
resp = requests.get(
"https://api.search.brave.com/res/v1/web/search",
headers={"X-Subscription-Token": "YOUR_API_KEY"},
params={"q": search_query, "count": num_results},
)
results = resp.json().get("web", {}).get("results", [])
# 第三步: 组装上下文(每条结果标注编号,便于引用生成)
context = ""
for i, r in enumerate(results):
context += f"[{i+1}] {r.get('title', '')}\n{r.get('description', '')}\n\n"
# 第四步: 用 LLM 基于检索结果生成答案
# System Prompt 中的约束是幻觉控制的关键
answer = client.chat.completions.create(
model="gpt-4o",
messages=[
{"role": "system", "content": (
"基于以下搜索结果回答用户问题。"
"回答末尾用 [编号] 标注引用来源。"
"找不到答案就说'未找到相关信息',不要编造。"
)},
{"role": "user", "content": f"搜索结果:\n{context}\n\n问题: {query}"},
],
max_tokens=500,
)
return answer.choices[0].message.content
# print(ai_search("2025年最热门的 AI 模型有哪些"))
import openai
import json
client = openai.OpenAI()
def decompose_query(question):
"""将复杂问题分解为多个子查询,提升召回率"""
resp = client.chat.completions.create(
model="gpt-4o-mini",
messages=[{
"role": "user",
"content": (
"将以下复杂问题分解为 2-4 个独立的搜索查询,"
"输出 JSON 数组格式,每个元素是一个字符串查询:\n"
f"问题: {question}"
),
}],
max_tokens=200,
# 使用 response_format 约束输出为合法 JSON(structured output)
response_format={"type": "json_object"},
)
try:
raw = resp.choices[0].message.content
# response_format json_object 模式返回 {"queries": [...]} 格式
data = json.loads(raw)
return data.get("queries", data.get("results", [question]))
except Exception:
return [question] # 解析失败则用原查询
# 复杂查询分解示例
subqueries = decompose_query("比较 Python 和 Rust 在 Web 后端的性能差异")
for i, sq in enumerate(subqueries):
print(f"子查询 {i+1}: {sq}")
# 子查询 1: Python Web 后端框架性能基准测试
# 子查询 2: Rust Web 后端框架性能基准测试
# 子查询 3: Python vs Rust Web 后端性能对比
import openai
client = openai.OpenAI()
def resolve_query_with_history(question, conversation_history):
"""
在多轮对话中,将用户的简短追问(如"那它呢")结合历史上下文,
改写为完整的、可独立检索的查询。
conversation_history 是之前的对话记录列表。
"""
history_text = "\n".join(
f"{'用户' if m['role'] == 'user' else '助手'}: {m['content']}"
for m in conversation_history[-6:] # 只取最近 3 轮,控制 token
)
resp = client.chat.completions.create(
model="gpt-4o-mini",
messages=[{
"role": "user",
"content": (
"根据对话历史,将用户的最新问题改写为一个完整的、"
"不依赖上下文也能理解的独立查询。只输出改写后的查询。\n\n"
f"对话历史:\n{history_text}\n\n"
f"最新问题: {question}"
),
}],
max_tokens=100,
)
return resp.choices[0].message.content.strip()
# 示例: 用户先问"GPT-4o 多少钱",再追问"那 Claude 呢"
# conversation_history = [{"role": "user", "content": "GPT-4o 多少钱"}, ...]
# resolved = resolve_query_with_history("那 Claude 呢", conversation_history)
# → "Claude 3.5 Sonnet API 价格是多少"

用 Agent 模式实现简易 Deep Research

Section titled “用 Agent 模式实现简易 Deep Research”
import openai
import json
import requests
client = openai.OpenAI()
def search_web(query, num_results=5):
"""调用搜索 API,返回摘要列表"""
resp = requests.get(
"https://api.search.brave.com/res/v1/web/search",
headers={"X-Subscription-Token": "YOUR_API_KEY"},
params={"q": query, "count": num_results},
)
results = resp.json().get("web", {}).get("results", [])
return [{"title": r.get("title", ""), "snippet": r.get("description", "")}
for r in results]
def deep_research(question, max_iterations=10):
"""
简易 Deep Research: 规划 → 多轮搜索-推理 → 综合报告。
生产级 Deep Research 还需要网页正文抓取、更复杂的推理模型等。
"""
findings = [] # 累积收集的信息
# 工具定义: 让 LLM 可以调用搜索
tools = [{
"type": "function",
"function": {
"name": "search_web",
"description": "搜索互联网获取信息。当需要查找最新事实或具体数据时使用。",
"parameters": {
"type": "object",
"properties": {
"query": {"type": "string", "description": "搜索查询词"}
},
"required": ["query"],
},
},
}]
messages = [
{"role": "system", "content": (
"你是一个深度研究助手。面对复杂问题,请分步搜索互联网收集信息,"
"每次搜索后评估信息是否充分,充分后再综合给出完整答案。"
"引用搜索结果时标注来源。"
)},
{"role": "user", "content": question},
]
for _ in range(max_iterations):
resp = client.chat.completions.create(
model="gpt-4o",
messages=messages,
tools=tools,
max_tokens=2000,
)
msg = resp.choices[0].message
messages.append(msg)
# 如果模型决定调用搜索工具,执行搜索并将结果返回
if msg.tool_calls:
for tc in msg.tool_calls:
args = json.loads(tc.function.arguments)
search_results = search_web(args["query"])
findings.append({"query": args["query"], "results": search_results})
# 将搜索结果作为 tool response 返回给 LLM
messages.append({
"role": "tool",
"tool_call_id": tc.id,
"content": json.dumps(search_results, ensure_ascii=False),
})
else:
# 模型不再调用工具,说明研究完成,返回最终答案
return {"answer": msg.content, "search_rounds": len(findings), "findings": findings}
return {"answer": "达到最大搜索轮次限制。", "search_rounds": len(findings)}
# result = deep_research("2025 年主流开源大语言模型有哪些?各自的优缺点是什么?")
# print(f"搜索轮次: {result['search_rounds']}")
# print(result["answer"])

提示:上面的 Deep Research 示例是教学版简化实现。生产级 Deep Research(如 OpenAI Deep Research)还会加入:网页正文抓取与阅读、推理模型(o-series)做规划判断、搜索结果质量评估与去重、并行搜索加速、以及研究报告的结构化生成等。

  • 查询理解是成败关键:搜索引擎的效果 60% 取决于查询理解。再好的检索和生成,查询改写错了就全完了。务必在查询改写上投入足够精力。一个实用技巧:用低成本模型(如 GPT-4o-mini)做查询改写,用强模型做答案生成,兼顾质量与成本。
  • 时效性问题必须用实时搜索:涉及”今天""最新""2025 年”等时效词时,不能依赖模型训练数据(training data cutoff——即模型训练时见过的最新数据日期,如 GPT-4o 的知识截止到 2023 年 10 月),必须走 Web 搜索。这是 AI 搜索相比纯 LLM 的核心价值。
  • 引用可信度排序:优先引用权威来源(官方文档、维基百科、学术论文),降低内容农场权重。可以维护域名声誉表来辅助过滤。2025 年 AI 内容泛滥后,域名声誉比以往任何时候都重要。
  • 幻觉控制是底线:答案必须能在引用来源中找到对应内容。在 System Prompt 中强制约束”只基于检索结果回答,找不到就说不知道”。更严格的做法是在生成后加一个 验证步骤——用另一个 LLM 检查答案中的每个事实断言是否都能在引用来源中找到。详见AI 安全与护栏。
  • 响应延迟优化:AI 搜索的延迟(5-15 秒)远高于传统搜索(不足 1 秒)。优化手段:流式输出(streaming——即逐 token 返回,用户看到文字逐字出现,感知等待时间大幅降低,详见 流式输出)、并行检索多路查询、缓存热门查询结果。Deep Research 模式延迟可达数分钟到数十分钟,需要异步任务 + 进度展示。
  • 多轮对话的上下文管理:用户追问时需要理解指代关系(“那它呢”中的”它”指什么),用 LLM 做指代消解后重新检索。详见上下文工程。
  • 成本控制:一次 AI 搜索涉及多次 LLM 调用(改写 + 生成 + 可能的验证),token 消耗远高于纯 LLM 对话。优化策略:小模型做改写/分类、大模型做生成、缓存层兜底热门查询。2025 年开源推理模型(如 DeepSeek-R1)的兴起使得自托管全链路搜索在成本上变得可行。
  • 网页正文提取质量:这是最容易被忽视但影响巨大的环节。垃圾进、垃圾出(garbage in, garbage out)——如果提取的正文质量差,再好的 LLM 也生成不了好答案。推荐使用 Jina Reader、Firecrawl 等专业提取服务。
  • AEO/GEO 优化:如果你是内容方,要确保你的内容能被 AI 搜索引擎正确提取和引用。使用清晰的 HTML 结构、Schema.org 标记、以及高密度的事实性内容。
  • Perplexity:AI 搜索引擎的标杆产品,支持 Pro Search(多步推理搜索)、Deep Research(深度研究模式,执行数十轮搜索后生成研究报告)、学术搜索、购物比较等多种模式。2025 年成为增长最快的 AI 搜索产品之一。
  • ChatGPT Search:OpenAI 在 ChatGPT 中集成的实时 Web 搜索功能,支持自然追问、多轮对话搜索,可直接在对话中引用网页来源。
  • Google AI Overviews:Google 搜索结果页顶部的 AI 生成摘要,覆盖了传统搜索的头部流量。背后是 Google 的 Gemini 模型 + 万亿级自建索引。
  • Grok Search / DeepSearch:xAI 的 Grok 集成的实时搜索与深度研究功能,与 X(Twitter)平台数据深度整合,擅长实时事件和热点话题。
  • Bing Copilot / Copilot Search:微软 Bing 集成的 AI 搜索和对话功能,后端使用 OpenAI 模型。
  • 企业内部 AI 搜索:基于企业文档库构建的内部知识搜索系统——本质上是对企业知识做 AI 搜索。底层技术详见 RAG 检索增强生成。
  • 学术 AI 搜索:Consensus、Elicit、Scite、Semantic Scholar 等专注于学术论文检索和总结,支持跨论文证据综合、研究方法对比等学术场景。
  • 代码搜索与文档搜索:Cursor、Sourcegraph 等将 AI 搜索应用于代码库和开发文档,支持自然语言查询代码。详见 AI 编码。
工具 / 服务类型说明
Perplexity产品 / APIAI 搜索引擎标杆,提供 Pro Search、Deep Research 和 API 接口(sonar 系列模型)
TavilyAPI专为 AI Agent 设计的搜索 API,返回结构化结果,LLM 友好,支持自动正文提取
ExaAPI语义搜索引擎 API,支持按内容含义而非关键词搜索,适合 AI 搜索管线
Brave Search APIAPI隐私优先的搜索引擎 API,提供独立的网页索引
Serper / SerpAPIAPI封装 Google 搜索结果的 API,常用作 AI 搜索的后端
Jina ReaderAPI网页正文提取服务,输入 URL 返回 LLM 友好的 Markdown 格式正文
FirecrawlAPI/开源网页抓取与 Markdown 转换服务,支持 SPA 动态页面,适合构建 AI 搜索管线
LangChain Search ToolsPythonLangChain 内置的多搜索后端工具集(Tavily/DuckDuckGo/Brave 等)
LlamaIndexPython提供完整的搜索-检索-生成管线抽象,适合构建自定义 AI 搜索引擎
SearXNG开源元搜索引擎(Meta Search Engine),聚合多个搜索引擎结果,可自托管
Crawl4AI开源专为 LLM 设计的开源网页爬虫,输出 Markdown 格式
术语英文解释
查询理解Query Understanding对用户查询进行意图识别、改写、分解等预处理
查询改写Query Rewriting将口语化或模糊的查询改写为更适合检索的形式
查询分解Query Decomposition将复杂问题拆分为多个独立子查询分别检索
多源检索Multi-Source Retrieval同时从多个数据源(Web/知识图谱/垂直 API)检索
正文提取Content Extraction从 HTML 网页中提取正文内容,去除导航/广告等噪声
引用生成Citation Generation在生成答案时标注信息来源,支持可溯源性
指代消解Coreference Resolution在多轮对话中解析”它""这个”等代词的具体指向
开放域Open-Domain不限定领域、可以问任意话题的查询场景
答案引擎Answer Engine直接生成答案(而非链接列表)的搜索引擎变体
答案引擎优化AEO / GEO针对答案引擎优化内容可发现性和可引用性的实践
深度研究Deep Research多步自主搜索-推理循环,输出长篇研究报告的搜索模式
元搜索引擎Meta Search Engine聚合多个搜索引擎结果的系统
  • Perplexity 官方博客:Perplexity 团队分享 AI 搜索引擎的架构设计、查询理解策略和生成质量优化的技术文章。
  • OpenAI Deep Research 技术报告:OpenAI 发布的 Deep Research 功能说明,展示了推理模型 + 搜索循环如何实现自主研究能力。
  • Lewis et al.,「Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks」(2020):RAG 原始论文,AI 搜索引擎的理论基础。详见 RAG 检索增强生成。
  • Asai et al.,「Self-RAG: Learning to Retrieve, Generate, and Critique through Self-Reflection」(2023):Self-RAG 论文,让模型自己判断何时检索、检索结果是否相关,对 AI 搜索的检索质量有重要参考。
  • Google「From Keyword to Context」搜索技术博客:Google 搜索从关键词匹配向语义理解演进的技术分享。
  • Tavily / Exa 官方文档:面向 AI Agent 的搜索 API 文档,展示了专为 LLM 设计的搜索 API 的设计思路和最佳实践。
  • Agarwal et al.,「Evaluating Retrieval-Augmented Generation」:系统评估 RAG 管线中检索、生成各环节质量的框架,可直接迁移到 AI 搜索评估。