AICC(AI-Ready Corpus)是一个基于模型化HTML解析器构建的7.3T规模AI就绪语料库。该项目通过创新的MinerU-HTML解析技术,从Common Crawl网页快照中提取高质量文本内容,为大规模语言模型训练提供了更优质的预训练数据。
核心创新点在于采用基于深度学习的HTML解析方法,相比传统启发式解析器(如Trafilatura),能够更准确地识别和保留网页中的主内容,同时有效过滤广告、导航栏等噪声元素。这种语义感知的解析方式特别擅长处理技术文档、学术论文等包含复杂结构化内容(代码块、数学公式、表格)的网页。
传统网页内容提取主要依赖启发式规则,典型代表如Trafilatura、Boilerpipe等工具。这些方法通过分析DOM树结构特征(如文本密度、标签路径等)来判断内容重要性。虽然计算效率高,但在处理现代网页时面临三大局限:
MinerU-HTML采用模型驱动的解析方案,其技术架构包含两个关键组件:
DOM预处理:
块级语义标注:
内容重组:
后处理:
关键设计选择:采用块级而非节点级分类,在保持精度的同时将计算量降低约40%。实测表明,块级分类对长文档(>10k字符)的解析准确率比节点级高15%。
AICC基于两个Common Crawl快照(CC-2023-06和CC-2023-14)构建,完整处理流程包括:
原始提取:
质量控制:
基准对比:
项目设计了三级评估方案:
量化指标:
python复制def length_ratio(aicc_len, tfcc_len):
return (aicc_len - tfcc_len) / max(aicc_len, tfcc_len)
人工评估:
下游任务验证:
评估结果显示,AICC在72%的案例中被LLM评判为质量更优。典型优势场景包括:
训练数据构建采用三阶段方案:
多样性采样:
精细标注:
数据增强:
最终训练集包含87万样本,在8xA100上训练4个epoch,关键超参数:
yaml复制learning_rate: 1e-5
batch_size: 32
max_seq_length: 8192
warmup_ratio: 0.1
对于特殊内容类型,实现细节如下:
代码块:
<pre>、<code>标签及衍生样式数学公式:
$...$)与独立公式($$...$$)表格:
实测表明,MinerU-HTML在技术文档上的内容保留完整度达到92%,显著高于Trafilatura的64%。
为处理PB级原始数据,设计如下流水线:
预处理层:
解析层:
后处理层:
在AWS c6i.8xlarge实例上实测吞吐量:
DOM树裁剪:
<script>、<style>等非内容节点缓存策略:
流式处理:
这些优化使内存占用降低约60%,使得单机可处理平均5MB的复杂页面。
使用1.5B参数模型(Qwen架构)进行对比实验:
训练数据:
评估基准:
整体性能:
任务类别分析:
训练动态:
特别在需要结构化理解的任务(如表格推理)上,AICC模型表现显著更好,验证了高质量内容提取的价值。
技术文档增强:
学术论文处理:
多语言内容:
预处理:
bash复制# 最佳实践命令示例
mineru-html-cli \
--input warc_path/ \
--output markdown_dir/ \
--workers 32 \
--batch_size 16 \
--math_format latex
参数调优:
--strict_code模式--aggressive_clean选项质量检查:
现象:部分正文缺失
排查步骤:
典型场景:
解决方案:
python复制# 调整DOM分割敏感度
from mineru_html import configure_parser
parser = configure_parser(
min_block_chars=30, # 提高最小块字符数
list_item_threshold=0.8 # 加强列表检测
)
瓶颈场景:
调优方法:
--fast_mode(精度降低约5%)在实际部署中,我们发现在16核机器上,调整--workers为CPU核数的1.5倍时达到最佳吞吐。
AICC语料库已产生多重价值:
规模指标:
技术贡献:
应用效果:
后续计划探索JavaScript渲染支持、多模态内容提取等方向,持续提升网页内容提取的质量上限。当前代码和部分数据已开源,为社区研究提供基础设施支持。