|
import pdb |
|
import subprocess |
|
import re |
|
import os |
|
|
|
|
|
|
|
|
|
def get_output(input_string, k): |
|
pattern = r"zero_shot/(\w+)/(.+?)/(\w+)" |
|
match = re.search(pattern, input_string) |
|
if match: |
|
part1 = match.group(1) |
|
part2 = match.group(3) + f"pass{k}_woproof.jsonl" |
|
result = os.path.join("compile_result", part1, part2) |
|
|
|
|
|
parent_dir = os.path.dirname(result) |
|
os.makedirs(parent_dir, exist_ok=True) |
|
|
|
print(result) |
|
else: |
|
print("No match found.") |
|
assert True |
|
return result |
|
|
|
|
|
input_path_lists = [ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
"/opt/tiger/formal-align/generate_result/zero_shot/lean4_random_test/generation/lean4_random_15k_rft/5/", |
|
"/opt/tiger/formal-align/generate_result/zero_shot/lean4_random_test/generation/lean4_random_15k/5/" |
|
] |
|
|
|
|
|
def extract_k(input_path): |
|
return os.path.basename(input_path) |
|
|
|
|
|
|
|
for input_path in input_path_lists: |
|
k = extract_k(input_path) |
|
k=1 |
|
print(k) |
|
|
|
output_path = get_output(input_path, k) |
|
output_log_path = output_path + 'woproof.log' |
|
|
|
|
|
if "wild_test" in input_path or "gsm8k_train" in input_path or "math_train" in input_path: |
|
script_name = "pass_rate_notlean_test_woproof.py" |
|
else: |
|
script_name = "pass_rate_new_test_woproof.py" |
|
|
|
command = f"python3 {script_name} --input_path {input_path} --output_path {output_path} --k {k}" |
|
print(command) |
|
|
|
with open(output_log_path, "w") as output_file: |
|
subprocess.run(command, shell=True, stdout=output_file, stderr=subprocess.STDOUT) |
|
print("\n\n", file=output_file) |
|
|