# PATIO DE JUEGOS DE INTELIGENCIA ARTIFICIAL # PROYECTO 50 Consulta Médica colombiana IA # Consejero Médico regional personalizado # Bogota colombia 2024 import gradio as gr from groq import Groq # Inicializar el cliente Groq client = Groq() # Función para manejar la completación del chat def chat_con_bot(ciudad, informacion_clinica): mensaje_usuario = f"Ciudad: {ciudad}. Información clínica: {informacion_clinica}" completion = client.chat.completions.create( model="llama-3.1-70b-versatile", messages=[ { "role": "user", "content": mensaje_usuario } ], temperature=0.7, max_tokens=1024, top_p=1, stream=True, stop=None, ) # Recopilar la respuesta respuesta = "" for chunk in completion: respuesta += chunk.choices[0].delta.content or "" return respuesta # Configurar la interfaz de Gradio usando Blocks with gr.Blocks() as interfaz: gr.Markdown("# Consulta Médica colombiana IA\nModelo Llama 3.1 70B en español") with gr.Row(): informacion_clinica = gr.Textbox( label="¿Cuáles son tus síntomas, desde cuándo aparecieron, cuál es tu sexo, edad, y antecedentes médicos, fármacos y si hay algún hallazgo físico observable?" ) with gr.Row(): ciudad = gr.Textbox( label="¿En qué ciudad o municipio vives (para ajustes epidemiológicos) y qué nivel de educación tienes (para ajustar la explicación de tu enfermedad)?", value="Bogotá" ) with gr.Row(): respuesta = gr.Textbox(label="Respuesta") with gr.Row(): enviar = gr.Button("Enviar") limpiar = gr.Button("Limpiar") enviar.click(fn=chat_con_bot, inputs=[ciudad, informacion_clinica], outputs=respuesta) limpiar.click(fn=lambda: ("Bogotá", ""), inputs=None, outputs=[ciudad, informacion_clinica]) # Lanzar la aplicación interfaz.launch()