File size: 2,026 Bytes
28a6f36
 
 
 
 
 
 
 
 
 
 
526f014
e734a70
28a6f36
 
 
 
 
 
 
 
 
 
08b0d33
28a6f36
1070697
605db98
 
 
1070697
 
28a6f36
 
 
 
 
 
 
 
 
 
 
12ee21e
28a6f36
12ee21e
5bd70fa
18a33b3
12ee21e
28a6f36
 
1070697
 
 
 
 
 
 
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
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['clasificacion_tipo'] for d in datos)
    checkboxes = {tipo: gr.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] + [False] * len(mostrar_checkboxes(datos_json))

# Funci贸n para guardar los checkbox marcados en un archivo JSON
def guardar_checkbox_info():
    info_checkbox = {key: checkbox.value for key, checkbox in checkboxes_tipos.items()}
    with open('rlhf.json', 'w') as file:
        json.dump(info_checkbox, file, indent=4)

# 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")  
    ],
    outputs=[
        gr.Textbox(label="Texto de Salida", type="text"),
        *checkboxes_tipos.values()
    ]
)

# Creaci贸n de diccionario de checkboxes
checkboxes = {key: False for key in checkboxes_tipos.keys()}

# Definici贸n de la acci贸n del bot贸n
def accion_boton():
    guardar_checkbox_info(checkboxes, 'rlhf.json')

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