Spaces:
Runtime error
Runtime error
File size: 3,932 Bytes
6b551f5 4a394a0 534a595 f6bcba8 00e8ae0 f6bcba8 fe7da9a a293aa3 a48afe6 6b551f5 4a394a0 fe7da9a 6b551f5 9310588 4a394a0 9310588 6b551f5 fe7da9a 6b551f5 fe7da9a 6b551f5 fe7da9a 6b551f5 4a394a0 6b551f5 4a394a0 6b551f5 a293aa3 fe7da9a ddc0a5b a293aa3 6b551f5 fe7da9a 6b551f5 f6bcba8 87823a5 a48afe6 f6bcba8 6b551f5 f6bcba8 6b551f5 f6bcba8 a293aa3 6b551f5 f6bcba8 6b551f5 f6bcba8 6b551f5 f6bcba8 a293aa3 6b551f5 f6bcba8 87823a5 534a595 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 |
# %%
from jinja2 import Environment, FileSystemLoader
import pandas as pd
import gradio as gr
df = pd.read_csv("./data.csv")
def parse_into_jinja_markdown(
model_name,
performance,
accuracy,
Precision,
Recall,
Robustness,
Fairness,
Failure_Clusters,
):
env = Environment(loader=FileSystemLoader("."), autoescape=True)
temp = env.get_template("mc_template.md")
return temp.render(
model_id=model_name,
accuracy=accuracy,
Precision=Precision,
Recall=Recall,
Robustness=Robustness,
Fairness=Fairness,
Performance=performance,
Failure_Cluster=Failure_Clusters,
)
def md_builder(model, dataset, displayed_metrics):
row = df[df["friendly_name"] == model]
str = ""
## f"# <span style='font-size: 16px;'> Model Card for <code style='font-weight: 400'>{model}</code></span>\n"
##f"On dataset `{dataset}`\n"
## )
# init vars to empty string
(
perform_val,
accuracy_val,
precision_val,
recall_val,
robustness_val,
fairness_val,
fail_cluster,
) = ("", "", "", "", "", "", "")
if "Performance" in displayed_metrics:
perform_val = f"\nPerformance: `{row['performance'].values[0]}`"
if "Accuracy" in displayed_metrics:
accuracy_val = f"\nAccuracy: `{row['accuracy'].values[0]}`"
if "Precision" in displayed_metrics:
precision_val = f"\nPrecision: `{row['precision_weighted'].values[0]}`"
if "Recall" in displayed_metrics:
recall_val = f"\nRecall: `{row['recall_weighted'].values[0]}`"
if "Robustness" in displayed_metrics:
robustness_val = f"\nRobustness: `{100-row['robustness'].values[0]}`"
if "Fairness" in displayed_metrics:
fairness_val = f"\nFairness: `{0}`"
if "Failure Clusters" in displayed_metrics:
cl_count = row["cluster_count"].values[0]
fail_cluster = f"\nTop failures: {row['top_failure_cluster'].values[0]} (+{cl_count - 1} others) (details for all {cl_count} clusters)"
str += "\n<div style='text-align: right'>⛶ Expand safety card</div>"
str = parse_into_jinja_markdown(
model,
perform_val,
accuracy_val,
precision_val,
recall_val,
robustness_val,
fairness_val,
fail_cluster,
)
return str
iface = gr.Interface(
md_builder,
[
gr.Dropdown(
list(df["friendly_name"]),
label="Model",
value="ViT",
info="Select a model to use for testing.",
),
gr.Dropdown(
["marmal88/skin_cancer"],
value="marmal88/skin_cancer",
label="Dataset",
info="Select the sampling dataset to use for testing.",
),
gr.CheckboxGroup(
[
"Performance",
"Accuracy",
"Precision",
"Recall",
"Robustness",
"Fairness",
"Failure Clusters",
],
value=["Accuracy", "Robustness", "Fairness", "Failure Clusters"],
label="Metrics",
info="Select displayed metrics.",
),
# gr.Radio(["park", "zoo", "road"], label="Location", info="Where did they go?"),
# gr.Dropdown(
# ["ran", "swam", "ate", "slept"], value=["swam", "slept"], multiselect=True, label="Activity", info="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nisl eget ultricies aliquam, nunc nisl aliquet nunc, eget aliquam nisl nunc vel nisl."
# ),
# gr.Checkbox(label="Morning", info="Did they do it in the morning?"),
],
"markdown",
examples=[
[
"ViT",
"marmal88/skin_cancer",
["Accuracy", "Robustness", "Fairness", "Failure Clusters"],
],
],
)
iface.launch()
# %%
|