File size: 2,543 Bytes
1886745
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
import gradio as gr
import datasets 
import random
import json

def load_from_ds():
    name_to_dataset = {
        "bbh": ("SaylorTwift/bbh", "test", ["sports_understanding",    "tracking_shuffled_objects_three_objects",    "navigate",    "snarks",    "date_understanding",    "reasoning_about_colored_objects",    "object_counting",    "logical_deduction_seven_objects",    "geometric_shapes",    "web_of_lies",    "movie_recommendation",    "logical_deduction_five_objects",    "salient_translation_error_detection",    "disambiguation_qa",    "temporal_sequences",    "hyperbaton",    "logical_deduction_three_objects",    "causal_judgement",    "formal_fallacies",    "tracking_shuffled_objects_seven_objects",    "ruin_names",    "penguins_in_a_table",    "boolean_expressions",    "tracking_shuffled_objects_five_objects"]),
        #"GPQA": "Idavidrein/gpqa",
        "ifeval": ("wis-k/instruction-following-eval", "train", None),
        "math": ("lighteval/MATH-Hard", "test", None),
        "mmlu_pro": ("TIGER-Lab/MMLU-Pro", "test", None),
        "musr": ("TAUR-Lab/MuSR", "murder_mysteries", ["default"]),
        "musr": ("TAUR-Lab/MuSR", "object_placements", ["default"]),
        "musr": ("TAUR-Lab/MuSR", "team_allocation", ["default"])
    }

    examples = {}
    for name, (path, split, subsets) in name_to_dataset.items():
        if subsets is None:
            ds = datasets.load_dataset(path, split=split)
            examples[name] = {"default": random.sample(list(ds), 10)}
        else:
            examples[name] = {}
            for subset in subsets:
                ds = datasets.load_dataset(path, subset, split=split)
                examples[name][subset] = random.sample(list(ds), 10)

examples = json.load(open("samples.json"))

with gr.Blocks() as demo:
    header = gr.Markdown("# Samples explorer")
    with gr.Row():
        name = gr.Dropdown(choices=examples.keys(), label="Dataset")
        subset = gr.Dropdown(choices=[], label="Subset")
        index = gr.Dropdown(choices=range(10), value=0, label="Choice index")

    with gr.Row():
        text_box = gr.JSON(value={})

    def change_subset_dropdown(name):
        keys = sorted(examples[name].keys())
        return gr.Dropdown(choices=keys, value=keys[0], label="Subset")

    name.change(fn=change_subset_dropdown, inputs=name, outputs=subset)

    for dropdown in [name, subset, index]:  
        dropdown.change(fn= lambda name, subset, index: examples[name][subset][index], inputs=[name, subset, index], outputs=text_box)

demo.launch()