搜索的第三次革命

第一次革命是Google的PageRank——用链接投票排序网页。第二次革命是移动搜索——随时随地获取信息。第三次革命正在进行——AI驱动的语义搜索,从"给链接"到"给答案"。

AI搜索的技术架构

传统搜索引擎的局限

传统搜索的流程:爬虫索引→关键词匹配→排序→返回结果页。用户需要自己从多个网页中提取需要的信息。这在简单事实查询中效率尚可,但在复杂问题面前力不从心。

AI搜索的架构

用户查询 → 查询理解与改写 → 多源检索(Web+知识库)→ 
相关性筛选 → 内容提取 → LLM综合生成 → 引用标注 → 返回答案

查询理解

AI搜索的第一步是理解用户的真实意图:

def query_understanding(query, conversation_history):
    # 1. 意图分类
    intent = classify_intent(query)
    # informational / navigational / transactional / comparative
    
    # 2. 查询改写
    rewritten = llm.rewrite(query, context=conversation_history)
    # "最好用的AI模型" → "2026年大语言模型性能对比评测"
    
    # 3. 子查询分解
    sub_queries = decompose_query(rewritten)
    # "对比Llama和Qwen" → ["Llama 4性能评测", "Qwen3性能评测", "Llama vs Qwen对比"]
    
    return {
        "intent": intent,
        "rewritten": rewritten,
        "sub_queries": sub_queries
    }

多源检索

AI搜索不限于网页索引,还整合结构化知识库:

  • Web搜索:实时获取最新信息
  • 知识图谱:实体关系查询
  • 计算引擎:数学计算和单位转换
  • 垂直数据源:股票、天气、航班等

内容提取与去重

从多个网页中提取相关段落,去除重复内容:

def extract_and_dedup(search_results, query):
    passages = []
    for result in search_results:
        # 提取正文内容
        content = extract_main_content(result.html)
        # 分块
        chunks = split_into_passages(content, max_tokens=200)
        # 计算与query的相关性
        for chunk in chunks:
            relevance = compute_relevance(chunk, query)
            if relevance > threshold:
                passages.append({
                    "text": chunk,
                    "source": result.url,
                    "relevance": relevance
                })
    
    # 去重(语义级别)
    passages = semantic_dedup(passages)
    return sorted(passages, key=lambda x: x["relevance"], reverse=True)

答案生成

LLM基于检索到的内容生成答案,并标注引用来源:

def generate_answer(query, passages, llm):
    # 构建带引用的prompt
    context = "\n\n".join([
        f"[{i+1}] {p['text']}\n来源: {p['source']}"
        for i, p in enumerate(passages[:10])
    ])
    
    prompt = f"""基于以下信息回答问题。每个事实陈述后标注引用编号。

参考资料:
{context}

问题:{query}

要求:
1. 综合多个来源的信息
2. 标注每个事实的来源
3. 如果来源信息矛盾,说明分歧
4. 如果信息不足以完全回答,说明局限性
"""
    return llm.generate(prompt)

主流AI搜索方案对比

Perplexity

Perplexity是AI搜索的先行者,其核心优势:

Pro Search:多步推理搜索,对复杂问题自动分解为子问题并分别检索:

用户问题:"2026年AI芯片市场份额变化及原因"
Pro Search执行:
Step 1: 搜索"2026 AI芯片市场份额"
Step 2: 搜索"NVIDIA AMD Intel市场份额对比"
Step 3: 搜索"AI芯片市场变化原因分析"
Step 4: 综合三轮检索结果生成答案

Copilot模式:交互式搜索,在搜索过程中向用户提问以澄清需求。

Focus模式:限制搜索范围到学术论文、YouTube、Reddit等特定来源。

SearchGPT

OpenAI的SearchGPT将搜索深度集成到ChatGPT中:

  • 利用GPT-4o的强推理能力做查询理解和答案综合
  • 实时网络索引(不依赖Bing API)
  • 与对话上下文深度整合,可以基于之前的对话内容精确搜索

Google AI Overviews

Google在传统搜索结果页上方添加AI生成的摘要:

  • 优势:海量索引和成熟的排序算法
  • 劣势:摘要质量不稳定,有时产生事实错误
  • 策略:保守的摘要生成,对不确定的内容标注"信息来源可能不同"

传统搜索+AI助手

百度、Bing等在搜索结果中加入AI对话入口:

  • 本质是传统搜索和AI问答的并行
  • 未实现真正的检索-生成融合
  • 适合从传统搜索向AI搜索的过渡期

AI搜索的核心挑战

实时性vs质量

网页内容不断变化,AI搜索需要平衡索引新鲜度和答案质量:

  • 索引更新延迟:数小时到数天
  • 突发新闻场景需要实时检索
  • 但实时内容未经验证,质量无法保证

幻觉控制

AI搜索的答案必须基于检索到的真实内容,不能"编造":

def fact_check(answer, passages):
    # 将答案分解为事实陈述
    claims = extract_claims(answer)
    
    for claim in claims:
        # 每个claim是否有来源支持
        supported = False
        for passage in passages:
            if entailment_check(claim, passage["text"]):
                supported = True
                break
        
        if not supported:
            return {
                "hallucination_detected": True,
                "unsupported_claim": claim
            }
    
    return {"hallucination_detected": False}

引用准确性

每个事实陈述需要可追溯到来源。当前的引用标注还比较粗糙(整段引用一个编号),理想状态是句子级别的精确引用。

商业模式

传统搜索的广告模式(竞价排名)在AI搜索中失效——用户不再点击链接。新的商业模式探索:

  • 订阅制(Perplexity Pro)
  • API授权(搜索引擎作为基础设施)
  • 垂直领域增值服务

评测基准

Fresco benchmark

评估AI搜索在以下维度的表现:

  • 事实准确性:答案是否正确
  • 覆盖性:是否涵盖了问题的所有方面
  • 时效性:是否包含最新信息
  • 引用准确性:引用是否指向正确的来源
  • 中立性:是否平衡呈现不同观点

结语

AI搜索正在重新定义人们获取信息的方式。从"搜索框+链接列表"到"对话框+结构化答案",这个转变的深度不亚于从目录网站到Google的变革。但AI搜索不是传统搜索的替代品,而是补充——简单导航类查询用传统搜索更快,复杂信息整合类查询用AI搜索更好。