RedPajama-V2 是一个用于培训大型语言模型(LLM)的开放数据集,包含超过 1000 亿文档,这些文档来源于 84 个 CommonCrawl 快照,并通过 CCNet 管道处理。数据集中,30 亿文档附带质量信号,20 亿文档进行了去重处理。此外,该数据集的语言涵盖了英语、德语、法语、意大利语和西班牙语。
数据集特点
- 文档与令牌计数:数据集中标记和去重的部分包括大约 20.8 亿文档和 30.4 万亿令牌。
- 多语言支持:数据集支持多种语言,增加了其多样性和应用的广泛性。
设置和使用
配置环境
首先,复制配置文件并设置环境变量,这些变量将在整个管道中使用。
cp configs/rp_v2.0.conf configs/default.conf
构建 Docker 镜像
为了使用 Docker 运行,你需要构建 Docker 镜像:
. configs/default.conf
cd app
docker build -t "${DOCKER_REPO}:latest" .
运行管道
数据处理管道分为三个步骤:准备工件、计算质量信号和去重。
创建工件:这一步骤包括构建质量分类器、训练词袋模型以及获取黑名单网址等。
bash scripts/run_prep_artifacts.sh --config configs/rp_v2.0.conf --listings /path/to/listings/file.txt --max_workers 32
计算质量信号:计算文档的质量信号,如最小哈希签名,为后续的模糊去重做准备。
bash scripts/apptainer_run_quality_signals.sh --config configs/rp_v2.0.conf --dump_id "2022-49" --input_base_uri "file:///path/to/data/root" --output_base_uri "file:///path/to/output/data/root" --max_docs -1
去重:实现精确和模糊去重。
python3 app/src/bloomfilter.py --listings /path/to/listings/file.txt --input_base_uri "s3://path/to/ccnet/data" --output_dir "/path/to/output" --s3_profile "..." --endpoint_url "..." --parallel_readers 32 --batch_size 10 --capacity "..." --error_rate "..."
质量信号总结
数据集中包含了一系列质量信号,如语言分数、文档长度、字符复杂度和内容独特性等,这些信号有助于评估和提高数据质量。
感谢
我们感谢所有合作伙伴和协作者的努力,共同推动开放LLM模型的发展前沿。特别感谢 AI2 的 OLMo 团队和 OpenGPT-X 的朋友们关于数据集和数据质量的深入讨论。
许可
RedPajama-V2 数据集根据 Apache License 2.0 许可发布。有关许可的完整条款,请参阅 LICENSE 文件。如果您有任何关于许可的问题、评论或疑虑,请与我们联系。
引用
如果您在研究中使用了 RedPajama-V2,请使用以下格式引用:
@software{together2023redpajama,
author = {Together Computer},
title = {RedPajama: an Open Dataset for Training Large Language Models},
month = October,
year = 2023,
url = {https://github.com/togethercomputer/RedPajama-Data}
}
通过这种方式,RedPajama-V2 为大型语言模型的训练提供了一个高质量、多语言和大规模的资源库,极大地推动了人工智能研究和应用的发展。
×
直达下载
温馨提示: