|
"""Prepare all datasets.""" |
|
|
|
import argparse |
|
import os |
|
|
|
from fastchat.utils import run_cmd |
|
|
|
|
|
if __name__ == "__main__": |
|
parser = argparse.ArgumentParser() |
|
parser.add_argument("--prefix", type=str, default="~/datasets/sharegpt_20230521") |
|
parser.add_argument( |
|
"--model-name-or-path", type=str, default="meta-llama/Llama-2-7b-chat-hf" |
|
) |
|
parser.add_argument("--seq-len", type=int, default=4096) |
|
args = parser.parse_args() |
|
|
|
in_prefix = args.prefix |
|
model_path = args.model_name_or_path |
|
seq_len = args.seq_len |
|
prefix = ( |
|
f"{in_prefix}_{seq_len}".replace("4096", "4k") |
|
.replace("8192", "8k") |
|
.replace("16384", "16k") |
|
) |
|
|
|
cmd_list = [ |
|
f"python3 -m fastchat.data.clean_sharegpt --in {in_prefix}_html.json --out {prefix}_clean.json", |
|
f"python3 -m fastchat.data.optional_clean --in {prefix}_clean.json --out {prefix}_clean_lang.json --skip-lang ko", |
|
f"python3 -m fastchat.data.split_long_conversation --in {prefix}_clean_lang.json --out {prefix}_clean_lang_split.json --model-name {model_path} --max-length {seq_len}", |
|
f"python3 -m fastchat.data.filter_wrong_format --in {prefix}_clean_lang_split.json --out {prefix}_clean_lang_split.json", |
|
f"python3 -m fastchat.data.split_train_test --in {prefix}_clean_lang_split.json --ratio 0.99", |
|
f"python3 -m fastchat.data.hardcoded_questions", |
|
f"python3 -m fastchat.data.merge --in {prefix}_clean_lang_split_train.json hardcoded.json --out {prefix}_clean_lang_split_identity.json", |
|
f"python3 -m fastchat.data.extract_gpt4_only --in {prefix}_clean_lang_split_identity.json", |
|
f"python3 -m fastchat.data.extract_single_round --in {prefix}_clean_lang_split_identity.json", |
|
] |
|
|
|
for cmd in cmd_list: |
|
ret = run_cmd(cmd) |
|
if ret != 0: |
|
exit(ret) |
|
|