import pandas as pd from src.leaderboard.read_evals import get_model_info def get_model_info_df(results_path: str, requests_path: str, cols: list=[], benchmark_cols: list=[]) -> pd.DataFrame: """Creates a dataframe from all the individual experiment results""" raw_data = get_model_info(results_path, requests_path) all_data_json = [v.to_dict() for v in raw_data] print(f"The raw data is {all_data_json}") df = pd.DataFrame.from_records(all_data_json) print(f"DF for Model Info ********** {df}") return df def get_merged_df(result_df: pd.DataFrame, model_info_df: pd.DataFrame) -> pd.DataFrame: """Merges the model info dataframe with the results dataframe""" merged_df = pd.merge(model_info_df, result_df, on='model', how='inner') merged_df = merged_df.drop(columns=['model']) merged_df = merged_df.rename(columns={'model_w_link': 'model'}) return merged_df