def print_leaderboard()

in src/alpaca_eval/utils.py [0:0]


def print_leaderboard(df_leaderboard, leaderboard_mode_or_models, cols_to_print, current_name=None):
    cols_to_print = list(cols_to_print)

    if isinstance(leaderboard_mode_or_models, str):
        if "mode" in df_leaderboard.columns:
            # select all modes that come before
            current_idx = constants.ORDERED_LEADERBOARD_MODES.index(leaderboard_mode_or_models)
            df_leaderboard["mode_idx"] = df_leaderboard["mode"].apply(constants.ORDERED_LEADERBOARD_MODES.index)

            is_smaller_mode = df_leaderboard["mode_idx"] <= current_idx
            is_selected = is_smaller_mode | (df_leaderboard["mode"].isnull())

    elif isinstance(leaderboard_mode_or_models, Sequence):
        # check the index of the models
        is_selected = df_leaderboard.index.isin(leaderboard_mode_or_models)

    elif "mode" in df_leaderboard.columns:
        cols_to_print = cols_to_print + ["mode"]
        is_selected = [True] * len(df_leaderboard)

    if current_name is not None:
        is_selected |= df_leaderboard.index == current_name

    df_leaderboard = df_leaderboard[is_selected]

    print(df_leaderboard[cols_to_print].to_string(float_format="%.2f"))