El blog de Deska
Cómo ejecutar agentes en Jupyter Notebooks
Guía técnica sobre cómo ejecutar agentes en Jupyter Notebooks para automatizar análisis de datos y visualización dentro de tu entorno de desarrollo local.
10 min de lectura
Los flujos de trabajo modernos en ciencia de datos e investigación están evolucionando más allá de la ejecución manual de celdas. La práctica de ejecutar agentes en Jupyter Notebooks permite a los desarrolladores automatizar el análisis exploratorio de datos complejo, generar visualizaciones y refactorizar código experimental desordenado mediante interfaces de lenguaje natural. En lugar de tratar el notebook como un documento estático, la integración de agentes de IA lo transforma en un entorno de ejecución activo donde el agente puede observar salidas, corregir errores e iterar sobre la lógica de forma autónoma.
La arquitectura de los Notebooks Agénticos
Para entender cómo interactúan los agentes con los notebooks, es necesario observar la arquitectura subyacente de Jupyter. Un notebook es esencialmente un documento JSON que se comunica con un kernel a través del protocolo ZeroMQ. Cuando estás ejecutando agentes en Jupyter Notebooks, el agente suele operar de una de dos maneras.
Primero, el agente puede actuar como un envoltorio alrededor del kernel de IPython. En este modelo, el agente recibe un objetivo de alto nivel, genera el código Python necesario para alcanzarlo y envía ese código al kernel. Luego, analiza las salidas de stdout, stderr y los medios enriquecidos (como gráficos) para decidir si el paso fue exitoso. Si el código falla, el agente utiliza el trazado de error para corregirse a sí mismo.
Segundo, el agente puede existir como una entidad externa con acceso al sistema de archivos. Esto es común con agentes basados en CLI que tratan al archivo .ipynb como un objetivo para modificación. Este enfoque suele ser más robusto para refactorizaciones a gran escala o para migrar la lógica de un notebook a scripts de Python listos para producción.
Capacidades principales de los agentes de IA en ciencia de datos
Ejecutar agentes en Jupyter Notebooks proporciona varios beneficios inmediatos para los flujos de trabajo técnicos. Estos agentes no son meros motores de autocompletado; son entidades orientadas a objetivos capaces de gestionar tareas de larga duración.
- Limpieza de datos automatizada: Los agentes pueden inspeccionar un DataFrame, identificar valores faltantes o valores atípicos y escribir el código repetitivo necesario para manejarlos.
- Generación de visualizaciones: En lugar de buscar la sintaxis de Matplotlib o Plotly, puedes describir la información que deseas obtener. El agente genera el gráfico y ajusta la estética basándose en la distribución de los datos.
- Documentación y anotación: Los agentes pueden analizar una serie de celdas experimentales y generar encabezados de Markdown o explicaciones para que el notebook sea legible para otros miembros del equipo.
- Migración de librerías: Si necesitas mover un proyecto de Pandas a Polars por rendimiento, un agente puede reescribir la lógica en docenas de celdas manteniendo la intención original.
Comparación de enfoques para la integración de agentes
Diferentes herramientas adoptan enfoques únicos sobre cómo proporcionan estas capacidades agénticas. La elección correcta depende de tus requisitos de privacidad y de tu interfaz preferida.
| Categoría de herramienta | Interfaz principal | Modelo de ejecución |
|---|---|---|
| IDEs integrados | Chat lateral | Acceso al kernel interno |
| Agentes CLI | Terminal | Acceso al sistema de archivos |
| Espacios de trabajo de lienzo | Lienzo infinito | Ejecución lado a lado |
| Notebooks web | Navegador | Gestionado en la nube |
Los IDEs estándar a menudo proporcionan una interfaz de chat que puede ver tu código, pero podrían tener dificultades con la naturaleza no lineal de los notebooks. Los agentes CLI como Claude Code o Codex CLI proporcionan interacciones potentes basadas en terminal que pueden ejecutar comandos y modificar archivos directamente. Estas herramientas difieren en su enfoque en comparación con las soluciones basadas en la nube que gestionan la infraestructura por ti, pero que podrían requerir la carga de conjuntos de datos sensibles a sus servidores.
Integrando Deska en el flujo de trabajo
Para los desarrolladores que prefieren mantener sus datos en su propio hardware, Deska proporciona un entorno único para ejecutar agentes en Jupyter Notebooks. La aplicación funciona como una app de escritorio gratuita para Mac, Windows y Linux, enfocándose en una filosofía local-first.
En Deska, puedes organizar tu flujo de trabajo utilizando un lienzo infinito. Esto te permite colocar una instancia de Jupyter en un panel mientras ejecutas agentes de codificación como Claude Code u OpenCode en paneles de terminal adyacentes. Esta disposición lado a lado es beneficiosa porque puedes ver la lógica del agente en la terminal mientras observas la salida visual del notebook en tiempo real.
Si utilizas el nivel de por vida, puedes traer tus propias llaves de API para interactuar con estos modelos. El espacio de trabajo también incluye una función llamada Ask Deska, un asistente de voz y chat que puede dirigir el entorno. Puede abrir paneles específicos o ejecutar comandos, permitiéndote gestionar el espacio de trabajo mientras el agente se concentra en el código.
Privacidad y ejecución local
Una preocupación significativa al ejecutar agentes en Jupyter Notebooks es la seguridad de los datos que se analizan. Muchos proyectos de ciencia de datos involucran información propietaria o datos personales sensibles. El uso de una herramienta local-first garantiza que tu código, archivos y sesiones de notebook permanezcan en tu máquina.
Deska facilita esto asegurando que el espacio de trabajo en sí sea local. Incluso cuando usas la aplicación móvil para monitorear una sesión de entrenamiento prolongada, los dispositivos se emparejan directamente a través de un relevo seguro. No se exponen puertos a la internet pública y los datos no residen en un servidor de terceros. Esta es una consideración crítica para investigadores que deben cumplir con requisitos estrictos de residencia de datos.
Resolución de problemas en Notebooks Agénticos
Cuando comiences a ejecutar agentes en Jupyter Notebooks, es posible que encuentres desafíos específicos relacionados con la gestión del estado. Los notebooks son conocidos por la ejecución fuera de orden, lo que puede confundir a un agente que espera un flujo lineal.
- Reiniciar el Kernel: Si el agente se confunde con variables antiguas, utiliza una sesión de kernel nueva para asegurar un estado limpio.
- Limitar el contexto: Proporcionar un notebook de 100 celdas a un agente puede llevar al agotamiento de tokens o a alucinaciones. Divide los notebooks grandes en unidades funcionales más pequeñas.
- Verificar instalaciones: Los agentes a veces asumen que las librerías están instaladas. Asegúrate de que tu entorno coincida con las suposiciones del agente ejecutando
pip freezeen un panel de terminal.
FAQ
¿Cómo usar Claude Code con Jupyter?
Para usar Claude Code con Jupyter, debes ejecutar el agente en una terminal dentro del mismo directorio que tus archivos .ipynb. El agente podrá entonces leer el contenido del notebook, sugerir cambios o incluso ejecutar scripts de Python que interactúen con los mismos archivos de datos que usa tu notebook.
¿Son seguros los agentes de IA para ciencia de datos privada?
La seguridad depende de la herramienta. Si utilizas un espacio de trabajo local-first y tus propias llaves de API, los datos permanecen bajo tu control. Asegúrate siempre de que el agente no esté configurado para enviar tus datos de entrenamiento para mejorar los modelos, a menos que lo hayas aceptado explícitamente.
¿Pueden los agentes de IA ejecutar celdas automáticamente?
Sí, algunos marcos agénticos están diseñados para interactuar directamente con el kernel de Jupyter. Envían bloques de código al kernel, esperan a que la ejecución termine y luego procesan el resultado. En un espacio de trabajo como Deska, puedes ejecutar estos agentes en paneles junto a tu notebook para monitorear su progreso.
Primeros pasos con espacios de trabajo agénticos
La transición a un flujo de trabajo agéntico requiere el conjunto adecuado de herramientas y un cambio de mentalidad hacia la automatización. Al combinar la retroalimentación visual de Jupyter con las capacidades de razonamiento de los LLM modernos, puedes acelerar significativamente tu ciclo de desarrollo.
Para comenzar a configurar tu propio entorno local para ejecutar agentes en Jupyter Notebooks, puedes descargar la aplicación de escritorio de Deska. Una vez instalada, consulta la guía de inicio rápido para aprender cómo configurar tu primer espacio de trabajo y conectar tus agentes de codificación preferidos.