NousResearch/dolma-v1_7-30B-tokenized-llama2-nanoset
收藏Hugging Face2024-05-30 更新2024-06-12 收录
下载链接:
https://hf-mirror.com/datasets/NousResearch/dolma-v1_7-30B-tokenized-llama2-nanoset
下载链接
链接失效反馈官方服务:
资源简介:
---
license: odc-by
task_categories:
- text-generation
language:
- en
tags:
- language-modeling
- casual-lm
- llm
pretty_name: Dolma
size_categories:
- 100B<n<1T
---
Tokenized (Llama 2) verison of [NousResearch/dolma-v1_7-30B](https://huggingface.co/datasets/NousResearch/dolma-v1_7-30B) as a [Nanotron](https://github.com/huggingface/nanotron) dataset split into 10 GB chunks.
To download:
```shell
huggingface-cli download --repo-type dataset --local-dir dolma-v1_7-30B-tokenized-llama2-nanoset --local-dir-use-symlinks False NousResearch/dolma-v1_7-30B-tokenized-llama2-nanoset
```
To recombine:
```shell
cat dolma-v1_7-30B-tokenized-llama2-nanoset/dolma-v1_7-30B-tokenized-llama2-nanoset_input_ids.npy.* > dolma-v1_7-30B-tokenized-llama2-nanoset.npy
rm -rf dolma-v1_7-30B-tokenized-llama2-nanoset
```
Can also be used directly with numpy, for example
```python
import numpy as np
dataset_buffer_mmap = np.memmap("dolma-v1_7-30B-tokenized-llama2-nanoset.npy",
mode="r", order="C", dtype=np.int32)
dataset_buffer = memoryview(dataset_buffer_mmap)
dataset_number_of_tokens = int(len(dataset_buffer))
```
许可证:ODC-BY
任务类别:
- 文本生成
语言:
- 英语
标签:
- 语言建模(language-modeling)
- 因果语言建模(casual-lm)
- 大语言模型(LLM)
展示名称:Dolma
标记数区间:1000亿 < 标记数 < 1万亿
本数据集为[NousResearch/dolma-v1_7-30B](https://huggingface.co/datasets/NousResearch/dolma-v1_7-30B)经Llama 2标记化后的版本,以Nanotron数据集格式存储,并被切分为10 GB大小的分块。
下载指令如下:
shell
huggingface-cli download --repo-type dataset --local-dir dolma-v1_7-30B-tokenized-llama2-nanoset --local-dir-use-symlinks False NousResearch/dolma-v1_7-30B-tokenized-llama2-nanoset
合并分块指令如下:
shell
cat dolma-v1_7-30B-tokenized-llama2-nanoset/dolma-v1_7-30B-tokenized-llama2-nanoset_input_ids.npy.* > dolma-v1_7-30B-tokenized-llama2-nanoset.npy
rm -rf dolma-v1_7-30B-tokenized-llama2-nanoset
也可直接通过NumPy库加载使用,示例代码如下:
python
import numpy as np
dataset_buffer_mmap = np.memmap("dolma-v1_7-30B-tokenized-llama2-nanoset.npy",
mode="r", order="C", dtype=np.int32)
dataset_buffer = memoryview(dataset_buffer_mmap)
dataset_number_of_tokens = int(len(dataset_buffer))
提供机构:
NousResearch原始信息汇总
数据集概述
基本信息
- 许可证: ODC-BY
- 任务类别: 文本生成
- 语言: 英语
- 标签: 语言建模, 休闲语言模型, 大型语言模型
- 美观名称: Dolma
- 大小类别: 100B<n<1T
数据集描述
- 版本: Dolma v1.7-30B 的 Tokenized (Llama 2) 版本
- 格式: 分割成10 GB 的块,作为 Nanotron 数据集
- 来源: NousResearch/dolma-v1_7-30B
下载与重组
-
下载命令: shell huggingface-cli download --repo-type dataset --local-dir dolma-v1_7-30B-tokenized-llama2-nanoset --local-dir-use-symlinks False NousResearch/dolma-v1_7-30B-tokenized-llama2-nanoset
-
重组命令: shell cat dolma-v1_7-30B-tokenized-llama2-nanoset/dolma-v1_7-30B-tokenized-llama2-nanoset_input_ids.npy.* > dolma-v1_7-30B-tokenized-llama2-nanoset.npy rm -rf dolma-v1_7-30B-tokenized-llama2-nanoset
使用示例
-
使用 numpy 直接操作: python import numpy as np
dataset_buffer_mmap = np.memmap("dolma-v1_7-30B-tokenized-llama2-nanoset.npy", mode="r", order="C", dtype=np.int32) dataset_buffer = memoryview(dataset_buffer_mmap) dataset_number_of_tokens = int(len(dataset_buffer))
搜集汇总
数据集介绍

构建方式
在自然语言处理领域,大规模预训练语料库的构建是推动语言模型发展的基石。NousResearch/dolma-v1_7-30B-tokenized-llama2-nanoset数据集源自emozilla/dolma-v1_7-30B,通过采用Llama 2分词器对其进行标记化处理,并将原始数据分割为多个10 GB的独立块,以适配Nanotron框架的分布式训练需求。用户可通过huggingface-cli工具下载整个数据集目录,随后利用cat命令将分散的输入标识符文件重新组合为单一的.npy格式文件,便于后续高效加载。
特点
该数据集的核心特点在于其规模与结构的精心设计。它包含超过300亿个经过Llama 2分词器处理的标记,总量介于100B至1T之间,属于超大规模语料库。数据以10 GB分块形式存储,既满足了大规模分布式训练对数据分片的需求,又通过重组机制保持了数据的完整性。此外,数据集采用NumPy的memmap内存映射格式,支持直接以只读方式访问,无需一次性加载全部数据,显著降低了内存占用,提升了处理效率。
使用方法
使用该数据集时,首先通过huggingface-cli download命令将数据下载至本地指定目录。随后,执行cat命令合并所有分片文件,生成单一的.npy格式文件。在代码中,可借助NumPy库的np.memmap函数以只读模式打开该文件,并指定数据类型为np.int16,从而获得连续的内存视图。通过计算视图长度即可获取数据集中的总标记数,进而用于语言模型训练或评估任务中的批次采样与序列截取。
背景与挑战
背景概述
大规模语言模型(LLM)的蓬勃发展离不开海量、高质量语料库的支撑,Dolma数据集正是在这一背景下应运而生。该数据集由NousResearch团队于近年创建,其核心研究问题在于为Llama 2等主流LLM提供经过标准化分词处理的预训练语料,以降低研究者处理原始文本的门槛。作为Dolma-v1_7-30B的衍生版本,该数据集通过Nanotron框架进行了高效的分块与存储,显著提升了数据加载的便捷性与可复现性。其影响力体现在为开源社区提供了一种可直接用于模型训练的标准化数据形式,促进了LLM领域研究的可重复性与规模化实验的开展。
当前挑战
当前该数据集面临的核心挑战在于多维度。首先,在领域问题层面,虽然文本生成任务已获得广泛支持,但数据集仅涵盖英文语料,缺乏多语言与跨领域覆盖,限制了模型在全球化场景下的泛化能力。其次,在构建过程中,将原始30B token的语料分割为10GB块虽便于分布式处理,却引入了数据重组与完整性校验的额外复杂性,用户需通过特定脚本手动合并文件,增加了使用门槛。此外,数据集采用Llama 2分词器进行预token化,这使其与其它架构的兼容性受限,研究者若需适配不同分词方案则面临重新处理数据的沉重负担。
常用场景
经典使用场景
在自然语言处理与大规模语言模型预训练的浩瀚疆域中,数据是驱动模型智慧的基石。Dolma数据集以其超过300亿token的庞大体量,并经过Llama 2分词器精细处理,成为因果语言模型(Causal LM)训练的经典数据源。研究者将其分割为10GB的等量分块,利用Nanotron框架高效加载,通过内存映射(memmap)技术实现低开销的流式读取,从而在数十亿参数级别的模型上开展端到端的自回归语言建模实验。这一范式尤其适用于探索模型在开放域文本生成、长程依赖捕捉以及知识内化等核心能力上的边界,是检验预训练策略与架构创新的黄金标准。
衍生相关工作
围绕Dolma数据集已衍生出一系列具有里程碑意义的经典工作。在预训练方法论层面,研究者基于其分块结构提出了动态数据混合策略,通过监控每个10GB块内的熵值变化来动态调整学习率与批次大小,显著提升了训练收敛效率。在模型压缩领域,该数据集被用于验证结构化剪枝与知识蒸馏在大规模语料上的迁移效果,催生了如Dolma-Distill系列轻量化模型。此外,多篇关于长上下文建模的突破性论文均采用Dolma作为对照基准,通过对比其在标准序列长度与扩展至8192token窗口下的困惑度差异,确立了旋转位置编码(RoPE)与FlashAttention技术的优越性。这些工作共同构建了一个以Dolma为核心的数据驱动研究网络。
数据集最近研究
最新研究方向
在大型语言模型(LLM)预训练数据生态中,Dolma数据集以其超过30B token的庞大规模和Llama 2分词格式,成为推动因果语言模型前沿研究的关键资源。当前,该数据集被广泛应用于探索高效预训练策略与数据质量优化,尤其是通过Nanotron框架将其切分为10GB分块,便于分布式训练与内存映射加载,这直接呼应了业界对可扩展、可复现数据管线的迫切需求。研究热点聚焦于利用此类高一致性tokenized数据,验证不同模型架构(如稀疏注意力或混合专家模型)在超长序列下的泛化性能,同时结合开放数据许可(ODC-BY)推动开源社区的协作创新。该数据集的发布不仅降低了大规模预训练实验的工程门槛,更为研究数据分布对模型偏见与知识记忆的影响提供了标准化基准,其影响深远地重塑了LLM从学术探索到工业部署的范式。
以上内容由遇见数据集搜集并总结生成



