Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import re
- import pandas as pd
- import os
- results_dir = r'C:\code\azureml-assets-sagoswami-llama3_1_assets\assets\evaluation_results'
- dirs = ['gpt-4o', 'meta-llama-3', 'meta-llama3']
- folders = os.listdir(results_dir)
- out_folders = []
- for folder in folders:
- for d in dirs:
- if d in folder:
- out_folders.append(folder)
- continue
- def parse_evaluation_results():
- sections = []
- for folder in out_folders:
- file = os.path.join(results_dir, folder, 'spec.yaml')
- with open(file, 'r') as file:
- text = file.read()
- sections.append(text)
- results = []
- for section in sections:
- model_name_match = re.search(r"model_name:\s*(\S+)", section)
- dataset_name_match = re.search(r"dataset_name:\s*(\S+)", section)
- accuracy_match = re.search(r"accuracy:\s*([\d.]+)", section)
- if model_name_match and dataset_name_match and accuracy_match:
- result = {
- "model_name": model_name_match.group(1),
- "dataset_name": dataset_name_match.group(1),
- "accuracy": float(accuracy_match.group(1))
- }
- results.append(result)
- return results
- def convert_to_markdown_table(results):
- # Create a dictionary to hold the data
- data = {}
- for result in results:
- model_name = result["model_name"]
- dataset_name = result["dataset_name"]
- accuracy = f"{result['accuracy']:.3f}"
- if dataset_name not in data:
- data[dataset_name] = {}
- data[dataset_name][model_name] = accuracy
- # Convert the dictionary to a DataFrame
- df = pd.DataFrame(data).T
- # Convert the DataFrame to a Markdown table
- markdown_table = df.to_markdown()
- return markdown_table
- # Example usage
- file_path = r"C:\code\results.txt"
- results = parse_evaluation_results(file_path)
- markdown_table = convert_to_markdown_table(results)
- print(markdown_table)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement