File size: 1,457 Bytes
52bc1cc c4f900c 52bc1cc c4f900c 52bc1cc c4f900c 52bc1cc |
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 |
import gradio as gr
from climateqa.sample_questions import QUESTIONS_GLOBAL, QUESTIONS_POC
def create_examples_tab(tab_name):
examples_hidden = gr.Textbox(visible=False, elem_id=f"examples-hidden")
QUESTIONS = QUESTIONS_POC if tab_name == "Beta - POC Adapt'Action" else QUESTIONS_GLOBAL
first_key = list(QUESTIONS.keys())[0]
dropdown_samples = gr.Dropdown(
choices=QUESTIONS.keys(),
value=first_key,
interactive=True,
label="Select a category of sample questions",
elem_id="dropdown-samples"
)
samples = []
for i, key in enumerate(QUESTIONS.keys()):
examples_visible = (i == 0)
with gr.Row(visible=examples_visible) as group_examples:
examples_questions = gr.Examples(
examples=QUESTIONS[key],
inputs=[examples_hidden],
examples_per_page=8,
run_on_click=False,
elem_id=f"examples{i}",
api_name=f"examples{i}"
)
samples.append(group_examples)
def change_sample_questions(key):
index = list(QUESTIONS.keys()).index(key)
visible_bools = [False] * len(samples)
visible_bools[index] = True
return [gr.update(visible=visible_bools[i]) for i in range(len(samples))]
# event listener
dropdown_samples.change(change_sample_questions, dropdown_samples, samples)
return examples_hidden |