Spaces:
Sleeping
Sleeping
| """ | |
| Gradio widgets for browsing datasets and examples in the interpretability app. | |
| What this module provides: | |
| - create_example_browser: a Dataset-like widget to preview/select examples (dev/public modes). | |
| - create_dataset_selector: a dropdown to pick which dataset to browse. | |
| Expected backends: | |
| - loader.data.list_datasets() | |
| - loader.data.get_examples(dataset, n=...) | |
| """ | |
| import gradio as gr | |
| from typing import List, Dict | |
| def create_example_browser(mode: str = "public") -> gr.Dataset: | |
| """ | |
| Create an example browser (grid/list) for selecting samples. | |
| Args: | |
| mode: "dev" or "public" — in "public" you typically show curated/precomputed | |
| examples; in "dev" you may show more free-form or larger lists. | |
| Expected usage: | |
| datasets = list_datasets() # from loader/data.py | |
| examples = get_examples(dataset, n=10) | |
| Returns: | |
| A gr.Dataset component configured for example selection. | |
| """ | |
| mode = (mode or "public").lower() | |
| label = "Examples" if mode == "public" else "Example Browser (dev)" | |
| samples_per_page = 6 if mode == "public" else 12 | |
| return gr.Dataset( | |
| components=[ | |
| gr.Textbox(label="Context", lines=4, interactive=False), | |
| gr.Textbox(label="Prompt", lines=2, interactive=False), | |
| gr.Textbox(label="Answer", lines=2, interactive=False), | |
| ], | |
| headers=["context", "prompt", "answer"], | |
| label=label, | |
| samples=None, | |
| samples_per_page=samples_per_page, | |
| type="index", | |
| elem_id=f"example-browser-{mode}", | |
| ) | |
| def create_dataset_selector() -> gr.Dropdown: | |
| """ | |
| Create a dataset selector dropdown. | |
| Expected usage: | |
| datasets = list_datasets() # from loader/data.py | |
| dropdown.choices = datasets | |
| Returns: | |
| A gr.Dropdown component for choosing a dataset. | |
| """ | |
| return gr.Dropdown( | |
| choices=[], | |
| label="Dataset", | |
| interactive=True, | |
| allow_custom_value=False, | |
| elem_id="dataset-selector", | |
| ) | |