kp-037

LLM 时代的数据采集:智能抽取与合规趋势

前沿 ≈ 20 分钟 LLM智能抽取混合策略幻觉校验合规趋势

前置知识

本文基于模型知识整理,反映 2025–2026 年的行业趋势认知,具体政策以最新官方文件为准。

一句话定义

LLM 正在重塑解析环节——「给 HTML 片段,返回 JSON 字段」免去了写选择器与抗改版的维护负担;但成本、延迟与幻觉决定了它是「规则解析的兜底」而非替代。

为什么重要

选择器维护是采集项目的最大长期成本(kp-033 的改版应对)。LLM 抽取把「结构变化」从工程问题变成提示词问题;同时 AI 爬虫的合规环境在快速收紧(robots 明确排斥 AI 采集、数据授权市场兴起),理解趋势才能做对技术选型。

前置知识

kp-009(接口抽取)、kp-026(文本处理);LLM API 调用经验。

核心概念

  • LLM 抽取:把页面片段 + 目标 schema 交给模型,返回结构化 JSON。
  • 混合策略:规则/接口优先(便宜、确定)→ 解析失败的页面交给 LLM 兜底。
  • 幻觉校验:模型可能编造字段值;必须用「值必须存在于原文」类校验兜底。
  • 合规趋势:robots 协议出现 AI 专用排除;内容授权/付费 API 兴起;训练用途与展示用途的授权分级。

原理与机制

混合策略的决策流与幻觉校验:

页面 → ① 接口可直连? → 直连接口(首选, 零成本)
     → ② 选择器命中?  → 规则解析(便宜, 确定)
     → ③ 都失败(改版/长尾模板) → LLM 抽取(兜底, 贵但抗变化)
                                        ↓
              校验: 抽取值必须能在原文中定位(子串匹配) → 否则置空并记日志

LLM 抽取调用骨架(伪代码):

SCHEMA = '{"title": str, "price": number|null, "rating": number|null}'

def llm_extract(fragment_html: str) -> dict:
    prompt = (f"从以下HTML片段抽取字段, 只输出JSON, "
              f"找不到的字段用null, 禁止推断:\n{fragment_html[:6000]}")
    raw = call_llm(prompt)                       # 温度=0
    data = json.loads(raw)
    for k, v in data.items():                    # 幻觉校验: 值必须可回溯
        if v is not None and str(v) not in fragment_html:
            data[k] = None                       # 置空 + 计数告警( kp-023 )
    return data

成本直觉:LLM 抽取单页成本约为规则解析的百倍以上,延迟高一个量级。全量 LLM 是财务灾难;1–5% 的长尾兜底是合理预算。

实例或案例

某比价项目接了两百个长尾站点:为每站写选择器两周都写不完。方案改为「通用规则模板覆盖 70% + LLM 兜底 30%」,三天上线;月度成本中 LLM 仅占 8%(因其只处理规则失败页)。站点改版时规则失效页自动滑入 LLM 通道,数据不断档,工程师再从容修规则——LLM 把改版从「事故」降级为「提醒」。

常见误区

  • 误区一:LLM 全替代规则解析。 成本与延迟不允许;正确姿势是分层兜底,且接口能直连的永远不用 LLM。
  • 误区二:信任模型输出不校验。 幻觉字段(编造的价格/规格)会静默污染数据仓库;「值回溯原文」校验是底线。
  • 误区三:AI 时代采集合规可以放宽。 反而更严:robots 排除 AI 爬虫成为常态,kp-004 的红线只增不减;商用数据优先考虑授权 API。

自测题

  1. 混合策略的三层顺序与理由?

答:接口直连(零成本最稳)→ 规则解析(便宜确定)→ LLM 兜底(抗改版但贵慢);成本随层次递增。

  1. 如何给 LLM 抽取做幻觉校验?

答:抽取出的每个非空值必须在原 HTML 片段中可定位(子串匹配),否则置空并计数告警。

  1. AI 时代数据获取的合规趋势是什么?

答:robots 明确排斥 AI 采集、授权与付费数据通道兴起、训练/展示用途分级授权——合规要求整体收紧。

与其他知识点的关系

kp-025 的质量管线承接幻觉校验;kp-004 的红线在 AI 场景只紧不松;kp-033 的工作流新增「LLM 兜底」选路节点。

延伸阅读

主流 LLM API 的 structured output 文档;本库 kp-004、kp-025。

相关知识点

学习进度