En este tutorial, ideamos cómo orquestar un agente de autorización médica previa que utiliza herramientas y completamente funcional impulsado por Gemini. Analizamos cada componente paso a paso, desde la configuración segura del modelo hasta la creación de herramientas externas realistas y, finalmente, la construcción de un bucle de agente inteligente que razona, actúa y responde completamente a través de JSON estructurado. A medida que avanzamos, vemos cómo el sistema piensa, recupera evidencia e interactúa con sistemas médicos simulados para completar un flujo de trabajo complejo. Consulta los CÓDIGOS COMPLETOS aquí.
target_model = “” if ‘models/gemini-1.5-flash’ en modelos_disponibles: target_model=”gemini-1.5-flash” elif ‘modelos/gemini-1.5-flash-001’ en modelos_disponibles: target_model=”gemini-1.5-flash-001″ elif ‘modelos/gemini-pro’ en modelos_disponibles: target_model=”gemini-pro” else: para m en modelos_disponibles: si ‘generarContenido’ en genai.get_model(m).supported_generación_methods: target_model = m break if not target_model: rise ValueError(“❌ No se encontraron modelos de generación de texto para esta clave API.”) print(f”✅ Modelo seleccionado: {target_model}”) model = genai.GenerativeModel(target_model)
Configuramos nuestro entorno y detectamos automáticamente el mejor modelo Gemini disponible. Configuramos la clave API de forma segura y dejamos que el sistema elija el modelo más capaz sin codificar nada. Esto garantiza que comencemos el tutorial con una base limpia, flexible y confiable. Consulta los CÓDIGOS COMPLETOS aquí.
“Patient: John Doe | DOB: 1980-05-12”,
“Visit 2023-01-10: Diagnosed with Type 2 Diabetes. Prescribed Metformin.”,
“Visit 2023-04-15: Patient reports severe GI distress with Metformin. Discontinued.”,
“Visit 2023-04-20: BMI recorded at 32.5. A1C is 8.4%.”,
“Visit 2023-05-01: Doctor recommends starting Ozempic (Semaglutide).”
]
def search_ehr(self, consulta): print(f” 🔎 [Tool] Buscando EHR para: ‘{query}’…”) resultados = [doc for doc in self.ehr_docs if any(q.lower() in doc.lower() for q in query.split())]
si no hay resultados: devuelva “No se encontraron registros”. return “\n”.join(resultados) def submit_prior_auth(self, nombre_droga, justificación): print(f” 📤 [Tool] Presentando reclamo por {drug_name}…”) justification_lower = justification.lower() if “metformin” in justification_lower and (“descontinuado” in justification_lower or “intolerance” in justification_lower): if “bmi” in justification_lower and “32” in justification_lower: return “ÉXITO: Autorización aprobada. ID de autenticación: #998877” return “DENEGADO: La política requiere prueba de (1) falla con metformina y (2) IMC > 30”.
Definimos las herramientas médicas que nuestro agente puede utilizar durante el flujo de trabajo. Simulamos una búsqueda de HCE y un sistema de presentación de autorizaciones previas para que el agente tenga acciones reales que realizar. Al hacer esto, basamos el razonamiento del agente en interacciones habilitadas por herramientas en lugar de en la generación de texto sin formato. Consulta los CÓDIGOS COMPLETOS aquí.
self.max_steps = 6 self.system_prompt = “”” Usted es un agente de autorización médica previa experto. Su objetivo es obtener aprobación para un procedimiento o medicamento médico. Tiene acceso a estas herramientas: 1. search_ehr(consulta) 2. submit_prior_auth(nombre_medicamento, justificación) REGLAS: 1. SIEMPRE piense antes de actuar. 2. DEBE generar su respuesta en formato JSON ESTRICTO: { “pensamiento”: “Su razonamiento aquí”, “action”: “tool_name_or_finish”, “action_input”: “argument_string_or_dict” } 3. No adivine los datos del paciente. Utilice ‘search_ehr’. 4. Si tiene la evidencia, utilice ‘submit_prior_auth’.
Inicializamos el agente y proporcionamos su aviso completo del sistema. Definimos las reglas, el formato de respuesta JSON y la expectativa de que el agente debe pensar antes de actuar. Esto nos proporciona una estructura controlada y determinista para construir un bucle de agente seguro y rastreable. Consulta los CÓDIGOS COMPLETOS aquí.
Implementamos el ciclo del agente central donde el razonamiento, la ejecución de herramientas y las observaciones ocurren paso a paso. Observamos al agente decidir su próxima acción, ejecutar herramientas, actualizar el historial y evaluar las condiciones de éxito. Aquí es donde el agente realmente cobra vida y realiza un razonamiento iterativo. Consulta los CÓDIGOS COMPLETOS aquí.
Creamos una instancia de las herramientas y el agente, luego ejecutamos todo el sistema de un extremo a otro con un objetivo real. Vemos cómo se desarrolla el flujo de trabajo completo a medida que el agente navega por el historial médico, valida la evidencia e intenta la autorización previa. Este fragmento final demuestra que el proceso completo funciona a la perfección.
En conclusión, reflexionamos sobre cómo este marco compacto pero poderoso nos permite diseñar comportamientos agentes en el mundo real que van más allá de simples respuestas de texto. Observamos el plan de nuestro agente, consultamos herramientas, recopilamos evidencia y, en última instancia, completamos una tarea estructurada de autorización de seguro, completamente a través del razonamiento autónomo. Proporciona la confianza de que ahora podemos ampliar el sistema con herramientas adicionales, políticas más sólidas, lógica de dominio específico o incluso colaboración entre múltiples agentes.
Consulta los CÓDIGOS COMPLETOS aquí. No dude en consultar nuestra página de GitHub para tutoriales, códigos y cuadernos. Además, no dude en seguirnos en Twitter y no olvide unirse a nuestro SubReddit de más de 100.000 ML y suscribirse a nuestro boletín.
Asif Razzaq es el director ejecutivo de Marktechpost Media Inc.. Como empresario e ingeniero visionario, Asif está comprometido a aprovechar el potencial de la inteligencia artificial para el bien social. Su esfuerzo más reciente es el lanzamiento de una plataforma de medios de inteligencia artificial, Marktechpost, que se destaca por su cobertura en profundidad del aprendizaje automático y las noticias sobre aprendizaje profundo que es técnicamente sólida y fácilmente comprensible para una amplia audiencia. La plataforma cuenta con más de 2 millones de visitas mensuales, lo que ilustra su popularidad entre el público.