把Huggingface下载的arrow数据集转化为json格式

Arrow2json

使用默认的Huggingface路径

allenai/tulu-3-sft-mixture数据集为例。

使用load_dataset即可:

go 复制代码
from datasets import load_dataset

# 加载数据集
dataset = load_dataset("allenai/tulu-3-sft-mixture")

# 指定保存路径
output_dir = "~/xxx/open-instruct/data/tulu-3-sft-mixture-json"

# 将数据集转换为 JSON 格式
for split in dataset.keys():  # 处理所有划分 (train, validation 等)
    dataset[split].to_json(f"{output_dir}/{split}.json", orient="records", lines=True)

使用ls -sh输出可以看到数据集train.json大小是3.3GB

go 复制代码
3.3G train.json

从本地路径

本地路径如下:

查看一下文件大小:

go 复制代码
ls -sh ~/.cache/huggingface/datasets/allenai___tulu-3-sft-mixture-1024/train
total 1.2G
223M data-00000-of-00005.arrow  283M data-00002-of-00005.arrow  132M data-00004-of-00005.arrow
273M data-00001-of-00005.arrow  252M data-00003-of-00005.arrow  4.0K state.json

使用load_from_disk函数从本地路径加载

go 复制代码
from datasets import load_dataset, load_from_disk

# 加载数据集
dataset = load_from_disk("~/.cache/huggingface/datasets/allenai___tulu-3-sft-mixture-1024")

# 指定保存路径
output_dir = "~/xxx/open-instruct/data/tulu-3-sft-mixture-seqlen-1024-json"

# 将数据集转换为 JSON 格式
for split in dataset.keys():  # 处理所有划分 (train, validation 等)
    dataset[split].to_json(f"{output_dir}/{split}.json", orient="records", lines=True)

这样就可以转换为json了。

查看一下大小:

go 复制代码
ls -sh xxx/open-instruct/data/tulu-3-sft-mixture-seqlen-1024-json
total 1.3G
1.3G train.json

后记

2024年12月29日20点16分于上海.

相关推荐
talle20215 小时前
Hive | json数据处理
hive·hadoop·json
一起养小猫6 小时前
Flutter for OpenHarmony 实战:网络请求与JSON解析完全指南
网络·jvm·spring·flutter·json·harmonyos
雪碧聊技术6 小时前
JSON数据格式
json·fastjson
从此不归路7 小时前
Qt5 进阶【12】JSON/XML 数据协议处理:与后端/配置文件的对接
xml·开发语言·c++·qt·json
说给风听.1 天前
零基础学 JSON:原理、语法与应用全解析
json
天若有情6731 天前
XiangJsonCraft v1.2.0重大更新解读:本地配置优先+全量容错,JSON解耦开发体验再升级
前端·javascript·npm·json·xiangjsoncraft
Sylvia33.1 天前
足球“文字直播/事件流”API详解:解码比赛的数字DNA
java·服务器·前端·json
Elieal1 天前
统一 JSON 格式,JacksonObjectMapper 定制 Spring Boot JSON 转换规则
spring boot·json·状态模式
像风一样自由20202 天前
解决百度网盘安装报错:D 盘 package.json 触发 Electron ESM/CJS 冲突
javascript·electron·json
灰太狼大王灬2 天前
OCR-RenameStudio是一个基于 PaddleOCR-json的桌面工具——Umi-OCR 智能重命名助手
json·ocr