NVIDIA、IIT Madras 与 AI4Bharat 将发布约 2.8 万亿 token 的 Indic 预训练语料及生成流程
Scaling Indic Pretraining: 2.8 Trillion Tokens and an Open Data Generation Pipeline
NVIDIA、IIT Madras 与 AI4Bharat 将发布 Nemotron-pretraining-Indic-v1,语料约含 2.8 万亿 token,覆盖 22 种印度语言的原生文字数据及其中 12 种语言的拉丁字母转写数据。
语料规模、语言与文字系统覆盖,以及可复用的生成流程均有具体说明,便于理解这项资源如何用于 Indic 预训练和后续数据构建。
涵盖22种语言的本土文字数据、12种语言的罗马化数据,以及一套可复用的 GPU 加速流水线,用于翻译、质量评估和修复。
作者:AI4Bharat — Mohammed Safi Ur Rahman Khan、Mitesh Khapra、Anoop Kunchukuttan。NVIDIA — Niket Agarwal、Raviraj Joshi、Anusha Kamath、Markus Kliegl、Yev Meyer、Sriharsha Niverty、Kiran Praveen、Utkarsh Vaidya。
我们很高兴推出 Nemotron-pretraining-Indic-v1,该数据集约含 2.8 万亿个 token,覆盖22种印度语言;我们还将很快发布用于创建该数据集的开放式 GPU 加速数据生成流水线。这22种语言均列于印度宪法中:截至2011年人口普查,它们是97%的印度人(近12亿公民)的第一语言。该项目由 NVIDIA 与印度顶尖工程院校 IIT Madras 及其 AI4Bharat 实验室合作开发。此次发布为模型构建者提供了重要的新资源,可用于 Indic 预训练。流水线完整记录了数据生成流程,包括提示词、LLM 工作流和质量检查,开发者可以据此调整流程以处理自己的源材料,并按需生成更多数据。
AI4Bharat 是 IIT Madras 的印度语言研究实验室,致力于为印度语言构建开源数据集和模型。其 Sangraha 等资源——一个覆盖22种印度语言的开放式预训练语料库——为开放式 Indic 语言模型研究奠定了基础。我们此次联合发布的开源资源,大幅扩充了可供社区使用的开放式 Indic 合成训练数据。它将涵盖数学、代码和问答内容的多种精选英文材料转化为印度语言,为团队提供更多训练材料,以构建能够用这些语言解释技术概念、解题和回答问题的模型。每条记录都可追溯至精选源文档,每项生成结果都会与输入内容进行核对,确保合成文本以真实信息为依据。
AI4Bharat 负责人 Mitesh Khapra 入选了 2025 年《时代》周刊 AI 百大榜单。他指出了核心问题:印度语言技术落后于英语,是因为“我们没有足够的印度语言数据”。我们正以更多数据和一套开放的生成方案响应这一呼声,助力生成更多数据。
该语料库也考虑到了人们的书写方式。它包含全部22种语言的本土文字数据,以及12种语言的罗马化文本,覆盖34种语言与文字配置。我们的工作流结合了文档级翻译、质量评估和针对性修复,并进行检查,以保留公式、表格和代码等内容。这些数据可补充自然创作的 Indic 文本;后者对于承载本地知识和文化背景仍至关重要。
我们将分享开放式生成方案,让社区不仅能够复现这些数据,还能在此基础上继续推进工作。团队可以直接使用该语料库、调整提示词和质量检查,也可以将自己的源文档接入工作流。通过开放数据和流程,我们希望让大规模 Indic 数据生成更加普及,并让更多开发者参与进来,共同打造更强大的印度语言模型。
对 Nemotron 3.5 Super VL 进行持续预训练时,加入了 100 亿个 Indic token,来源于该语料库中一个包含 12 种语言的子集以及自然 Indic 文本。我们的模型技术报告介绍了完整情况。我们计划在未来的 Nemotron 模型中继续利用这一语料库。
语料库包含什么?
图 1。语料库包含 2,601.0 billion 个原生文字 token 和 224.6 billion 个罗马化 token。计数使用 Gemma-4 tokenizer。文档记录包括共享来源的译文和文字系统变体;这些数量并非英语文档的去重计数。
语料库包含两组语言配置:
- 原生文字和罗马化数据:孟加拉语、古吉拉特语、印地语、卡纳达语、马拉雅拉姆语、马拉地语、尼泊尔语、奥里亚语、旁遮普语、泰米尔语、泰卢固语和乌尔都语。
- 原生文字数据:阿萨姆语、博多语、多格拉语、克什米尔语、孔卡尼语、迈蒂利语、曼尼普尔语、梵语、桑塔利语和信德语。
这里的原生文字指书写系统:文本仍是从英语翻译而来。罗马化指用拉丁字母书写的 Indic 语言文本,而不是英文译文。对于这 12 种同时提供两种文字形式的语言,罗马化内容仅涵盖获认可原生文字译文的一部分。
构建训练混合数据时,这一区分很重要。原生文字和罗马化记录能提供不同的文字系统接触体验,但表达的底层内容可能相同。token 数量描述的是保留的语料库,包括获认可的改写内容,而非某次训练的 token 预算。计数也取决于所用的 tokenizer,因此应将语料库清单与训练 token 数分开理解。
从英文源文档到 Indic 训练数据
为构建这一语料库,我们从 15 个 Nemotron-CC-v2 子集中选取文档,涵盖网页文本、问答材料、数学、代码及其他专业内容。我们使用 NeMo Data Designer(NVIDIA 的开源合成数据生成框架)执行翻译、质量检查和针对性修复。在整个工作流程中,我们保留每个来源标识符,以便开发者追溯输出对应的原始文档。这样的清晰溯源机制有助于实际审计和利用开放数据。图 2 展示了 12 种语言的工作流程。
图 2。面向 12 种语言的 Indic 合成数据四阶段流程,使用 NeMo Data Designer 和 Gemma-4-31B-it 实现。我们先翻译英文文档,再评估译文质量、修复得分较低的输出,并将部分获认可的译文转换为拉丁字母。其余 10 种语言采用下文介绍的独立 Indic Translate 工作流程。
12 种语言的工作流程
对于这 12 种语言,我们会完整翻译文档,使模型能够利用跨段落、表格和公式的上下文。我们通过在完整文档上对模型进行比较,并检查翻译质量和技术内容保留情况,选定了 Gemma-4-31B-it。我们的提示词会区分需要翻译的正文与需要保留的内容,包括代码、公式、URL 和格式。
翻译完成后,我们使用同一个模型,根据每条译文对应的英文原文进行评估。评估标准参考 多维质量指标(MQM),这是一种按类型和严重程度对翻译错误进行分类的开放框架,涵盖含义、流畅度、术语、风格和格式。我们仅保留评分至少为 75 分(满分 100 分)的译文(这是评估标准的评分,并非准确率百分比)。对于得分较低的译文,我们根据评估反馈进行修订,再用同一门槛重新评估。这个流程从本族文字和罗马化数据中挽回了 438.4 billion tokens,这些数据已计入语料库总量。抽样人工审查以及刻意引入错误的测试,帮助我们发现遗漏和残留英文,并据此改进提示词和检查流程。
通过验收的本族文字译文也为罗马化数据提供了起点。我们将其中一部分转换为拉丁字母,并将每条结果与其本族文字输入进行核对。这样便能将翻译与文字转换分开。在我们最初的人工对比中,与直接从英文生成罗马化文本相比,这种两步法产生的幻觉增补更少,残留英文也更少。
十种语言的工作流程
对于另外十种语言,我们调整了工作流程,以解决对比中发现的长文档质量和文字稳定性问题。我们使用 Indic Translate 进行翻译;这是由 Bodhan AI 开发的文档级翻译模型,支持英语和 22 种印度语言。Bodhan AI 是一家专注于教育领域 AI 的非营利中心,由 IIT Madras 孵化。随后,Gemma-4-31B-it 会根据英文原文评估每条译文。对于其中八种语言,我们保留整篇文档的处理方式。对于较长的 Santali 文档,我们翻译相互重叠的文本窗口,再重建文档;对于 Manipuri,我们先翻译为孟加拉文字,再转换为其本族文字 Meitei Mayek。这些工作流程只保留评分至少为 75 分(满分 100 分)的结果,仅生成本族文字数据,不进行基于反馈的改写。
Indic 持续预训练后有哪些变化?
Nemotron 3.5 Super VL 技术报告比较了 Indic 持续预训练(CPT)之前的检查点与该阶段之后的检查点。配置的训练预算为 100 billion tokens,其中 10%(10 billion tokens)分配给由合成和自然 Indic 文本混合而成的数据。其余 90% 则维持此前训练混合数据的相对比例。
在报告的五项 Indic 知识与推理基准测试中,分数均有所提高:MILU、Indic MMLU-Pro、Indic ARC-Challenge、Indic ARC-Easy 和 Indic GSM8K。
图 3. Indic CPT 阶段前后的 Nemotron 3.5 Super VL。分数提升幅度为 4.98 至 9.82 个百分点。该对比报告的是一个结合合成和自然 Indic 数据的训练阶段所带来的变化,而非单独评估合成语料的贡献。各基准测试覆盖的语言有所不同;这些是阶段性检查点,并非最终模型版本之间的对比。
来源:Nemotron 3.5 Super VL 技术报告,表 2。由于评估超出服务上下文长度限制,GSM8K 不包括 Odia。
这些提升支持结合合成与自然 Indic 数据的 CPT 配方,但其他模型和语言应采用何种数据混合方案,仍有待进一步研究。
配套的印度语报告使用十二种语言组中首轮筛选通过的数据,考察了数据来源混合比例、合成数据池规模和文字系统覆盖情况。对完整语料进行评估(包括恢复的改写数据和其他十种语言),仍是这些受控研究的后续步骤。
Nemotron 3.5 Super VL 的更广泛印度语能力
除了 CPT 阶段的结果,发布的模型与上一代相比表现如何?图 4 对比了 Nemotron 3.5 Super VL 与 Nemotron 3 Super 在印度语任务表现和语言质量方面的差异。这些结果反映了发布模型的完整训练流程,包括印度语 CPT 和后训练。
Nemotron 3.5 Super VL 在展示的六项任务基准中有五项得分更高,涵盖知识、推理、数学、代码和翻译。IFEval 1.5 上的指令遵循能力下降了 2.04 个百分点。在全部四个 IndiVibe 维度上,它也都有提升:实用性、流畅度、语言与文字系统忠实度,以及恰当的详略程度。IndiVibe 是 Sarvam AI 推出的开放基准,包含印度语言中的助手式提示。这些评估结合起来,既考察模型能做什么,也考察它用印度语言交流的能力。
图 4. 不同代际 Nemotron Super 模型的印度语任务表现和语言质量。左:六项任务基准。右:初步 IndiVibe 条件偏好得分,并非直接的两两对比胜率。标签显示百分点变化,WMT24++ 除外,其单位为 chrF 分数。基准和评估详情请参阅配套的印度语技术报告。
开始构建
加载语料
从模型所需的语言和文字系统入手,查看样本,并在训练前查阅数据集说明卡和许可证。配置使用语言、文字系统和地区标签:例如,hi-Deva-IN表示天城文书写的印地语,hi-Latn-IN表示罗马字转写的印地语。
下面的示例会从数据集说明卡中获取仓库 ID,然后查找可用的数据拆分并流式读取样本。
from datasets import get_dataset_split_names, load_dataset
dataset_id = input("Repository ID from the dataset card: ").strip()
config = "hi-Deva-IN"
splits = get_dataset_split_names(dataset_id, config_name=config)
print("Available splits:", splits)
data = load_dataset(
dataset_id, name=config, split=splits[0], streaming=True
)
print(next(iter(data)))
Hugging Face Datasets 支持流式读取,因此读者无需下载整个语料即可查看记录。发布后,请固定数据集版本,以便复现实验。
对于初步训练研究,请在固定 token 预算下比较不同的数据混合方案,并记录自然数据/合成数据以及本土文字/罗马字转写数据的占比。除英语能力保留情况和语言/文字系统质量外,还应跟踪各语言的结果。创建留出集时,应考虑跨语言和文字系统的记录可能源自同一来源。
若要构建更完整的方案,可将该语料与 Nemotron 后训练数据搭配使用,例如 Chat & Instruction 或 Post-Training Blends 数据集。针对印度特定的合成数据,可使用 Nemotron-Personas-India 为 NeMo Data Designer 提供种子;该数据集包含以印度现实世界分布为依据的英语和印地语合成人物画像。
调整生成方案
适用于 NeMo Data Designer 的开源 Nemotron Bharat 翻译插件提供翻译和评估提示词、可选的基于反馈的改写、文档分窗以及文字脚本映射支持。使用其配置参考选择模型和语言、调整提示词以适应你的领域,并设置改写参数。随附的开发者说明介绍了工作流程和工程设计选择。
从一小批自己的源文档开始。检查翻译质量,以及代码、数学内容和格式的保留情况;然后请母语审校人员完善提示词和检查流程,再扩大规模。将生成与语料筛选视为两个独立步骤:插件会返回候选文本和评分,而由你的筛选策略决定哪些记录进入训练语料。
适用范围与局限
翻译能让更多人获取源材料,但无法替代原本以印度语言撰写的文本,也不能保证涵盖本地知识和文化。我们建议将该语料与来源适当的自然印地克语文本结合,并针对预期用途评估最终混合语料。
质量评估主要通过自动化完成,并辅以抽样人工审核;不同语言的审核覆盖范围有所不同。在十二种语言的工作流程中(图 2),译者也充当评审者。保留的文本仍可能包含错误,而十种语言的工作流程则需要更广泛的母语使用者验证。源 ID 检查会移除处理过程中产生的重复项,但不会对相似内容进行语义去重。
在构建语料的同时,AI4Bharat at IIT Madras 在 NVIDIA 的支持下,正在开发 Indic-LLM-Eval-Suite,这是一个开放且不断发展的印地克语模型能力基准集合。它有助于模型构建者评估任务表现和语言质量。请参阅配套博客:更好的模型需要更好的基准:介绍 Indic-LLM-Eval-Suite。
探索语言配置、测试训练数据混合方案,或将这套开放流程改编到新的领域。分享各语言的结果以及对生成工作流程的改进,有助于社区在这项工作基础上继续推进。
延伸阅读与致谢
配套报告 扩展印地克语 LLM 的合成预训练数据与评估 和 Nemotron 3.5 Super VL 和 Lightning 技术报告介绍了语料统计、生成方法、实验和评估详情。评估是这项工作的另一半。关于基准部分,请参阅 AI4Bharat 和 NVIDIA 发布的配套博客:更好的模型需要更好的基准:介绍 Indic-LLM-Eval-Suite。
这项工作汇集了 NVIDIA、IIT Madras、AI4Bharat 和 Bodhan AI 的力量。我们也感谢参与该流程的模型和工具贡献方:Google 的 Gemma、Bodhan AI 的 Indic Translate,以及 NeMo Data Designer。更多 NVIDIA 数据资源见 Nemotron 预训练数据集集合。
来源:Hugging Face Blog · huggingface.co