Spaces:
Running
on
Zero
Running
on
Zero
import json | |
import sys | |
def update_path_in_json(input_file, output_file, new_path): | |
# Read the input JSON file | |
try: | |
with open(input_file, 'r') as infile: | |
data = json.load(infile) | |
except FileNotFoundError: | |
print(f"Input file {input_file} not found.") | |
sys.exit(1) | |
except json.JSONDecodeError: | |
print(f"Error decoding JSON from the input file {input_file}.") | |
sys.exit(1) | |
# Update the path | |
try: | |
data['datasets'][0]['path'] = new_path | |
except KeyError as e: | |
print(f"Key error: {e}") | |
sys.exit(1) | |
except IndexError as e: | |
print(f"Index error: {e}") | |
sys.exit(1) | |
# Write the updated JSON to the output file | |
try: | |
with open(output_file, 'w') as outfile: | |
json.dump(data, outfile, indent=4) | |
except IOError as e: | |
print(f"Error writing to the output file {output_file}: {e}") | |
sys.exit(1) | |
print(f"Path updated successfully in {output_file}") | |
if __name__ == "__main__": | |
import argparse | |
parser = argparse.ArgumentParser(description='Convert JSON for fine-tuning.') | |
parser.add_argument('--input_json', type=str, help='Name of the dataset', required=True) | |
parser.add_argument('--output_json', type=str, help='Path to the input CSV', required=True) | |
parser.add_argument('--new_path', type=str, help='Path to output JSON', required=True) | |
args = parser.parse_args() | |
update_path_in_json(args.input_json, args.output_json, args.new_path) |