File size: 1,451 Bytes
28a6f36
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
import gradio as gr
import json

# Funci贸n para cargar los datos del archivo JSON
def cargar_datos_json(ruta_json):
    with open(ruta_json, 'r', encoding='utf-8') as file:
        datos = json.load(file)
    return datos

# Funci贸n para mostrar los checkboxes por tipo
def mostrar_checkboxes(datos):
    tipos = set(d['tipo'] for d in datos)
    checkboxes = {tipo: gr.inputs.Checkbox(label=tipo) for tipo in tipos}
    return checkboxes

# Funci贸n para procesar la entrada y generar la salida
def procesar_entrada(texto_entrada, rag_habilitado, prompt_template_habilitado):
    # Aqu铆 procesar铆as el texto de entrada seg煤n los checkboxes habilitados
    # y utilizar铆as los valores de rag_habilitado y prompt_template_habilitado
    # para hacer el procesamiento correspondiente.
    
    # Simulaci贸n de generaci贸n de respuesta
    respuesta = f"Texto de salida procesado: {texto_entrada}"
    return respuesta

# Ruta al archivo JSON
ruta_json = './archivo.json'
datos_json = cargar_datos_json(ruta_json)
checkboxes_tipos = mostrar_checkboxes(datos_json)

# Creaci贸n de la interfaz Gradio
interfaz = gr.Interface(
    fn=procesar_entrada,
    inputs=[
        gr.Textbox(label="Texto de Entrada"),
        gr.Checkbox(label="Habilitar RAG"),
        gr.Checkbox(label="Habilitar Prompt Template"),
        *checkboxes_tipos.values()
    ],
    outputs=gr.Textbox(label="Texto de Salida")
)

# Ejecuci贸n de la interfaz
interfaz.launch()