Skip to main content

Overview

Jupyter AI Agent is a flexible and powerful solution for using and creating ✨ AI Agents to interact with 📓 Jupyter Notebooks
with tools like insert_cell, execute_cell...

info

Jupyter AI Agent empowers AI models to interact with and modify Jupyter Notebooks.

Jupyter AI Agent

The Agent is equipped with Tools such as adding Code Cells, inserting Markdown Cells, executing Code, enabling it to modify the Notebook comprehensively based on user instructions or by reacting to Notebook and Kernel events.

What is an AI Agent?

An artificial intelligence (AI) agent is a system that autonomously performs tasks by designing workflows and using tools.

Beyond processing language, these agents make decisions, solve problems, interact with environments, and execute actions. They are widely used in areas like IT automation, software design, and conversational assistants.

Leveraging Large Manguage Models (LLMs), AI agents process user inputs step-by-step and call external tools as needed to tackle complex tasks effectively.

What Makes Jupyter AI Agent Unique?

This agent is innovative as it is designed to operate on the entire Notebook, not just at the Cell level, enabling more comprehensive and seamless modifications.

Jupyter AI Agent <-----------> JupyterLab
|
| (RTC Real Time Collaboration)
|
JNC + JKC

- JNC https://github.com/datalayer/jupyter-nbmodel-client
- JKC https://github.com/datalayer/jupyter-kernel-client

This powerful functionality is made possible through the Jupyter NbModel and Kernel clients, enabling interactions with both Jupyter Notebooks and Kernels.

Key Features

  • Dynamic Notebook Interaction: Jupyter AI agents can add, edit, and execute cells dynamically based on user instructions or notebook events.
  • Remote Agent Execution: The agent can be executed independently, remotely on a different kernel than the one used by the notebook of interest to separate the agent execution from the notebook execution. Refer to the Deployment Modes for more details.
  • Event-Based Modifications: Can react to Kernel and Notebook changes in real time, enabling modifications without user intervention. Refer to the Interaction Modes for more details.
  • Advanced Jupyter Tools: Includes current capabilities like inserting markdown or code cells, running code.
  • Built on RTC: Real-Time Collaboration ensures seamless commmunication across all the actors.

Feedback and Contributions

success

We value your feedback!

If you encounter any issues or have suggestions for improvement, please open a GitHub issue.