the-stack-v2-smollm3
收藏资源简介:
该数据集是 The Stack v2 的一个子集,专注于选定的编程语言并提供了材料化的源代码内容。数据集包含 17 种编程语言配置:TypeScript、Swift、Ruby、Rust、Go、Shell、Jupyter_Notebook、HTML、Python、Java、JavaScript、C、C++、C-Sharp、PHP、SQL 和 Markdown。每种配置仅包含训练集,数据以 Parquet 格式存储。每个样本除了原始元数据外,还添加了 `content` 列(解码后的源代码内容)和 `download_error` 列(成功材料化时为 null,否则记录错误信息)。材料化过程基于 Software Heritage 存档,对每个 blob 进行 SHA-1 验证以确保可重现性。失败和恢复记录分别存储在 `_failures/` 和 `_recoveries/` 目录下。该数据集适用于代码生成、代码补全、编程语言建模、代码分类等任务。
This dataset is a subset of The Stack v2, focusing on selected programming languages and providing materialized source code content. It contains 17 programming language configurations: TypeScript, Swift, Ruby, Rust, Go, Shell, Jupyter_Notebook, HTML, Python, Java, JavaScript, C, C++, C-Sharp, PHP, SQL, and Markdown. Each configuration includes only a training set, and the data is stored in Parquet format. In addition to the original metadata, each sample includes a `content` column (decoded source code content) and a `download_error` column (null if materialization succeeded, otherwise error information). The materialization process is based on the Software Heritage archive, with SHA-1 verification for each blob to ensure reproducibility. Failure and recovery records are stored in the `_failures/` and `_recoveries/` directories respectively. This dataset is suitable for tasks such as code generation, code completion, programming language modeling, and code classification.
The Stack v2 精选语言数据集(含已物化源代码)
数据集概述
该数据集是 The Stack v2 的精选子集,其特点在于已将上游数据集中引用的源代码内容(source code)实际下载并物化(materialized)到数据集中,而非仅提供指向 Software Heritage 存档的引用。该数据集基于 bigcode/the-stack-v2 的指定提交版本(e565caa3a78c2423bd374333a472b049eb090e47)构建。
数据集配置
数据集中包含 17 种语言/格式的配置,每种配置对应独立的训练数据分片(Parquet 格式),具体包括:
- TypeScript(默认配置)
- Swift、Ruby、Rust、Go、Shell、Python、Java、JavaScript、C、C++、C-Sharp、PHP、SQL
- Jupyter_Notebook、HTML、Markdown
每个配置的数据文件路径为 data/<语言名称>/train-*.parquet,仅包含 train 分割。
新增字段与失败处理
- 新增
content字段:存储解码后的源代码内容。 - 新增
download_error字段:在成功物化时为null。 - 若 Software Heritage 中单个对象缺失或不可用,物化过程不会中断,原始元数据行会被保留,但
content字段为null。 - 详细的失败记录存储在
_failures/<语言>/路径下。 - 在 S3 获取失败后通过 Software Heritage API 恢复的对象记录在
_recoveries/<语言>/路径下。
可复现性与审计
- 版本固定:所有上游元数据来自上述指定提交。
- 完整性校验:成功获取的源代码 blob 已根据其
blob_id进行 SHA-1 验证。 - 溯源信息:机器可读的源代码来源信息在
provenance.json文件中。 - 运行配置:各语言/分区的物化器运行配置保存于
_runs/,检查点保存于_state/。 - 分区信息:大型语言的分区数量已明确(如 Python、Java、C 等语言分区数在 2-3 之间)。分区文件带有
part-<索引>-of-<总数>标签,以便并发处理。 - 语言分配:默认语言分配基于
language_stats.csv快照中的原始字节数和文件数,平衡传输量与 HTTP 请求数。 - 上传机制:Parquet 分片以最多 8 个批次上传,每个批次及其检查点和审计文件原子性提交。




