File size: 3,728 Bytes
efdd1f5 70fa904 187ebd3 70fa904 c7d73f9 70fa904 c7d73f9 70fa904 efdd1f5 70fa904 c7d73f9 70fa904 c7d73f9 70fa904 efdd1f5 70fa904 c7d73f9 70fa904 6b3f7f3 70fa904 6b3f7f3 70fa904 efdd1f5 cba4d16 |
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 |
import gradio as gr
modalities_tasks = {
"NLP": ["Clasificaci贸n de Texto", "Generaci贸n de Texto", "Resumen", "Traducci贸n", "QA"],
"Audio": ["Reconocimiento de Voz", "Clasificaci贸n de Audio", "Generaci贸n de Audio", "Separaci贸n de Fuentes"],
"Vision": ["Clasificaci贸n de Im谩genes", "Detecci贸n de Objetos", "Segmentaci贸n", "Generaci贸n de Im谩genes"],
"RAG": ["B煤squeda Sem谩ntica", "Generaci贸n Aumentada", "QA Contextual"],
"Code": ["Generaci贸n de C贸digo", "Depuraci贸n", "Traducci贸n entre Lenguajes"],
"Time Series": ["Predicci贸n", "Detecci贸n de Anomal铆as", "Clasificaci贸n Temporal"],
"Graph": ["Predicci贸n de Nodos", "Clasificaci贸n de Grafos", "Generaci贸n de Grafos"],
"Tabular": ["Regresi贸n", "Clasificaci贸n", "Imputaci贸n de Datos"]
}
def generate_csv_header(*args):
# L贸gica para generar encabezado multimodal
return "Encabezado generado: ID,Modalidad-Tarea1,Modalidad-Tarea2,..."
def search_datasets():
# L贸gica para buscar datasets en HuggingFace
return [["Dataset1", "Descripci贸n1"], ["Dataset2", "Descripci贸n2"]]
def generate_dataset():
# L贸gica para generar dataset multimodal
return "sample.csv"
with gr.Blocks() as demo:
gr.Markdown("# 馃 Dise帽ador de Modelos Multimodales")
# Panel 1: Selecci贸n de Modalidades
with gr.Row():
gr.Markdown("## 1. Selecci贸n de Modalidades")
modality_components = []
for modality in modalities_tasks:
with gr.Column():
modality_components.append(
gr.Checkbox(label=modality, interactive=True)
)
# Panel 2: Selecci贸n de Tareas
with gr.Row():
gr.Markdown("## 2. Configuraci贸n de Tareas")
task_components = []
for modality in modalities_tasks:
with gr.Column(visible=False) as col:
task_dropdown = gr.Dropdown(
choices=modalities_tasks[modality],
label=f"Tareas para {modality}",
interactive=True
)
task_components.append((col, task_dropdown))
# Actualizar visibilidad de tareas
for i, modality_check in enumerate(modality_components):
modality_check.change(
lambda val, idx=i: gr.update(visible=val),
inputs=modality_check,
outputs=task_components[i][0]
)
# Panel 3: Generar Encabezado CSV
with gr.Row():
gr.Markdown("## 3. Configuraci贸n del Dataset")
with gr.Column():
header_btn = gr.Button("Generar Encabezado del CSV")
header_output = gr.Textbox(label="Estructura del Dataset")
# Panel 4: B煤squeda de Datasets
with gr.Row():
gr.Markdown("## 4. Datasets Disponibles")
with gr.Column():
search_btn = gr.Button("Buscar en HuggingFace")
datasets_table = gr.DataFrame(headers=["Dataset", "Descripci贸n"])
# Panel 5: Generaci贸n del Dataset
with gr.Row():
gr.Markdown("## 5. Generaci贸n Final")
with gr.Column():
generate_btn = gr.Button("Generar Dataset Multimodal")
dataset_output = gr.File(label="Dataset Generado", file_types=[".csv"])
download_btn = gr.DownloadButton("猬囷笍 Descargar CSV", visible=False)
# Conectar funcionalidades
header_btn.click(
generate_csv_header,
inputs=[*modality_components, *[t[1] for t in task_components]],
outputs=header_output
)
search_btn.click(
search_datasets,
outputs=datasets_table
)
generate_btn.click(
generate_dataset,
outputs=[dataset_output, download_btn]
)
demo.launch() |