El descubrimiento de fármacos es un proceso complejo y intensivo en el tiempo que requiere que los investigadores naveguen enormes cantidades de literatura científica, datos de ensayos clínicos y bases de datos moleculares. A los clientes de ciencias de la vida les gusta Genentech y Astrazeneca están utilizando agentes de IA y otras herramientas generativas de IA para aumentar la velocidad del descubrimiento científico. Los constructores de estas organizaciones ya están utilizando las características totalmente administradas de Roca madre de Amazon para implementar rápidamente flujos de trabajo específicos del dominio Para una variedad de casos de uso, desde la identificación del objetivo del fármaco temprano hasta la participación del proveedor de atención médica.
Sin embargo, los casos de uso más complejos podrían beneficiarse al usar el código abierto Strands Agentes SDK. Los agentes de Strands adoptan un enfoque impulsado por el modelo para desarrollar y ejecutar agentes de IA. Funciona con la mayoría de los proveedores de modelos, incluidas las puertas de enlace del modelo de lenguaje grande personalizado e interno (LLM), y los agentes se pueden implementar donde aloje una aplicación de Python.
En esta publicación, demostramos cómo crear un poderoso asistente de investigación para el descubrimiento de drogas utilizando agentes de hilos y Roca madre de Amazon. Este asistente de IA puede buscar múltiples bases de datos científicas simultáneamente utilizando el Protocolo de contexto modelo (MCP)sintetice sus hallazgos y genere informes completos sobre objetivos farmacológicos, mecanismos de enfermedades y áreas terapéuticas. Este asistente está disponible como ejemplo en la fuente abierta. Kit de herramientas de agente de salud y ciencias de la vida para que lo uses y adaptas.
Descripción general de la solución
Esta solución utiliza agentes de hilos para conectar modelos de cimientos de alto rendimiento (FMS) con fuentes comunes de datos de ciencias de la vida como arxiv, Pubmedy Químico. Demuestra cómo crear servidores MCP rápidamente para consultar datos y ver los resultados en una interfaz de conversación.
Agentes de IA pequeños y enfocados que trabajan juntos a menudo puede producir mejores resultados que un solo agente monolítico. Esta solución utiliza un equipo de subgestados, cada uno con sus propios FM, instrucciones y herramientas. El siguiente diagrama de flujo muestra cómo el agente del orquestador (que se muestra en naranja) maneja las consultas de los usuarios y las enruta a los subgentales para recuperación de información (verde) o planificación, síntesis y generación de informes (púrpura).
Esta publicación se centra en la construcción con hilos agentes en su entorno de desarrollo local. Consulte el Documentación de agentes de hilos para desplegar agentes de producción en AWS Lambda, AWS Fargate, Servicio de Kubernetes de Amazon Elastic (Amazon EKS), o Nube de cómputo elástica de Amazon (Amazon EC2).
En las siguientes secciones, mostramos cómo crear el asistente de investigación en agentes de hilos definiendo una FM, herramientas de MCP y subciburentes.
Requisitos previos
Esta solución requiere Python 3.10+, hilosy varios paquetes adicionales de Python. Recomendamos encarecidamente usar un entorno virtual como Venv o uva para administrar estas dependencias.
Complete los siguientes pasos para implementar la solución a su entorno local:
- Clonar el repositorio de código de Github.
- Instale las dependencias de Python requeridas con
pip install -r requirements.txt. - Configure sus credenciales de AWS por establecerlos como variables de entorno, Agregarlos a un archivo de credencialeso siguiendo a otro proceso compatible.
- Guarde su clave API Tavily en un archivo .env en el siguiente formato:
TAVILY_API_KEY="YOUR_API_KEY".
Tu también necesitas acceso A los siguientes FMS en su cuenta de Amazon Bedrock en su cuenta de AWS:
- Soneto Claude 3.7 de Anthrope
- Soneto Claude 3.5 de Anthrope
- Claude 3.5 Haiku de Anthrope
Definir el modelo de base
Comenzamos definiendo una conexión con un FM en Amazon Bedrock usando los agentes de los hilos BedrockModel clase. Utilizamos el soneto Claude 3.7 de Anthrope como el modelo predeterminado. Vea el siguiente código:
Definir herramientas de MCP
MCP proporciona un estándar sobre cómo las aplicaciones de IA interactúan con sus entornos externos. Ya existen miles de servidores MCP, incluidos los de herramientas y conjuntos de datos de ciencias de la vida. Esta solución proporciona servidores MCP de ejemplo para:
- arxiv -Repositorio de artículos de acceso abierto de artículos académicos
- Pubmed -Citas revisadas por pares para la literatura biomédica
- Químico -Base de datos curada de moléculas bioactivas con propiedades de fármaco
- Clinicaltrials.gov – Base de datos del gobierno de los Estados Unidos de estudios de investigación clínica
- Búsqueda web tavily – API para encontrar noticias recientes y otros contenidos de la Internet pública
Los agentes de hilos racionalizan la definición de clientes de MCP para nuestro agente. En este ejemplo, se conecta a cada herramienta utilizando E/S estándar. Sin embargo, los agentes de hilos también admiten Servidores MCP remotos con transporte de eventos de HTTP transmitidos. Vea el siguiente código:
Definir sub-agentes especializados
El agente de planificación analiza las preguntas de los usuarios y crea un plan para el que los subcáscedes y herramientas para usar:
Del mismo modo, el agente de síntesis integra los hallazgos de múltiples fuentes en un solo informe integral:
Defina el agente de orquestación
También definimos un agente de orquestación para coordinar todo el flujo de trabajo de investigación. Este agente usa el SlidingWindowConversationManager Clase de los agentes de hilos para almacenar los últimos 10 mensajes en la conversación. Vea el siguiente código:
Caso de uso de ejemplo: explore la investigación reciente del cáncer de mama
Para probar el nuevo asistente, inicie la interfaz de chat ejecutando Streamlit Ej. La siguiente captura de pantalla muestra una conversación típica con el agente de investigación. En este ejemplo, le preguntamos al asistente: “Genere un informe para HER2 que incluya noticias recientes, investigaciones recientes, compuestos relacionados y ensayos clínicos en curso”. El asistente primero desarrolla un plan de investigación integral utilizando las diversas herramientas a su disposición. Decide comenzar con una búsqueda web de noticias recientes sobre HER2, así como artículos científicos sobre PubMed y ARXIV. También analiza los compuestos relacionados con HER2 en ChemBL y ensayos clínicos en curso. Sintetiza estos resultados en un solo informe y genera un archivo de salida de sus hallazgos, incluidas las citas.
El siguiente es un extracto de un informe generado:
En particular, no tiene que definir un proceso paso a paso para lograr esta tarea. Al proporcionar al asistente una lista bien documentada de herramientas, puede decidir qué usar y en qué orden.
Limpiar
Si siguió este ejemplo en su computadora local, no creará nuevos recursos en su cuenta de AWS que necesita limpiar. Si implementó el asistente de investigación utilizando uno de esos servicios, consulte la documentación del servicio relevante para obtener instrucciones de limpieza.
Conclusión
En esta publicación, mostramos cómo los agentes de Strands optimizan la creación de poderosos asistentes de IA específicos de dominio. Le recomendamos que pruebe esta solución con sus propias preguntas de investigación y la amplíe con nuevas herramientas científicas. La combinación de las capacidades de orquestación de los agentes de los Strands, las respuestas de transmisión y la configuración flexible con los potentes modelos de lenguaje de Amazon Bedrock crean un nuevo paradigma para la investigación asistida por AI-AI. A medida que el volumen de información científica continúa creciendo exponencialmente, marcos como los agentes de hilos se convertirán en herramientas esenciales para el descubrimiento de fármacos.
Para obtener más información sobre la construcción de agentes inteligentes con agentes de hilos, consulte Introducción de agentes de hilos, un código abierto de IA Agentes SDK, Strands Agentes SDKy el Repositorio de Github. También puedes encontrar más Agentes de muestra para la atención médica y las ciencias de la vida Construido en Amazon Bedrock.
Para obtener más información sobre la implementación de soluciones de IA para el descubrimiento de drogas en AWS, visítenos en AWS For Life Sciences.
Sobre los autores
Hasun Yu es un arquitecto de soluciones especializadas de IA/ML con una amplia experiencia en el diseño, el desarrollo y la implementación de soluciones de IA/ML para la atención médica y las ciencias de la vida. Apoya la adopción de servicios avanzados de AWS AI/ML, incluida la IA generativa y agente.
Brian leal es un arquitecto principal de soluciones de IA/ML en el equipo mundial de ciencias de la salud y la vida en Amazon Web Services. Tiene más de 20 años de experiencia en biotecnología y aprendizaje automático y le apasiona usar la IA para mejorar la salud y el bienestar humano.