kunishou/oasst2-135k-ja
收藏数据集概述
数据集名称
- oasst2-135k-ja
数据集来源
- 该数据集是通过自动翻译 "OpenAssistant/oasst2" 到日语创建的。
数据集转换
- 可以使用以下代码将数据集转换为 Instruction 和 Output 形式:
python from datasets import load_dataset import pandas as pd import os import json
加载原始的 oasst2 数据
ds = load_dataset("OpenAssistant/oasst2") train = ds["train"].to_pandas() val = ds["validation"].to_pandas() df_origin = pd.concat([train, val], axis=0).reset_index(drop=True)
加载日语翻译的 oasst2 数据
df_ja = load_dataset("kunishou/oasst2-135k-ja").to_pandas()
合并原始数据和日语翻译数据
df = pd.merge(df_origin, df_ja[["message_id", "text_ja"]], on="message_id", how="left").copy() df["text"] = df["text_ja"] df_assistant = df[(df.role == "assistant")].copy() df_prompter = df[(df.role == "prompter")].copy() df_prompter = df_prompter.set_index("message_id") df_assistant["output"] = df_assistant["text"].values inputs = [] parent_ids = [] for _, row in df_assistant.iterrows(): input = df_prompter.loc[row.parent_id] inputs.append(input.text) parent_ids.append(input.parent_id) df_assistant["instruction"] = inputs df_assistant["parent_id"] = parent_ids
df_assistant = df_assistant[ ["instruction", "output", "message_id", "parent_id", "lang", "rank"] ].rename(columns={"message_id": "id"})
将数据转换为 JSON 文件
learn_datas = [] input_list = [] for n in range(len(df_assistant)): learn_data = { "instruction": str(df_assistant.iloc[n, 0]), "input": "", "output": "" } input_list.append(df_assistant.iloc[n, 0]) learn_data["input"] = "" learn_data["output"] = str(df_assistant.iloc[n, 1]) learn_datas.append(learn_data) json_learn_data = json.dumps(learn_datas, indent=4, ensure_ascii=False) with open(oasst2_ja_converted.json, w, encoding="utf-8") as f: f.write(json_learn_data)
相关链接
- 原始数据集链接:OpenAssistant/oasst2




