How to use Jupyter AI
This guide explains how to use Jupyter AI, manage Notebook Workspaces, and configure Notebook Processes with multiple outputs in the Syntasa platform. These capabilities enable AI-assisted development, structured collaboration, and scalable notebook execution within data pipelines.
Syntasa integrates Jupyter AI at the platform level, allowing users to leverage generative AI features without managing individual model configurations or API keys. For background on Jupyter AI capabilities and supported features, refer to the official Jupyter AI documentation .
Using Jupyter AI in Syntasa
Syntasa integrates the jupyter-ai plugin directly into its notebook environment, enabling AI-assisted coding, explanation, and troubleshooting through conversational interface.
Accessing the AI Chatbot
The conversational AI interface is available from the JupyterLab sidebar.
Steps:
-
Launch a Notebook Workspace or open an existing notebook.
-
Locate and click the Chat icon in the left-hand sidebar.
-
Interact with the AI using natural language to:
- Generate code
- Explain existing logic
- Debug errors
- Optimize notebook workflows
The chatbot is context-aware and can reference the currently active notebook cells.
Managing Notebook Workspaces
Notebook Workspaces provide isolated, persistent environments that support organization, collaboration, and controlled access to notebooks.
Creating and Editing Workspaces
Steps to Create a Workspace:
- Navigate to Notebook Workspaces from the main menu.
- Click the Add (+) button.
Workspace Fields:
-
Name – Unique workspace name
-
Key – Auto-generated unique identifier
-
Description – Optional details
-
Sharing
- Public – Accessible to other users
- Private – Restricted to the owner
To modify an existing workspace, click the Edit icon on the workspace card.
Note: The Default Workspace cannot be edited or deleted.
Launching a Workspace
Click a workspace card to launch the JupyterLab environment scoped to that workspace.
- The environment is persistent
- Shared users access the same workspace context
- AI features are automatically available within the workspace
Notebook Process with Multiple Outputs
The Notebook Process node allows notebooks to be executed as part of a pipeline and supports defining multiple outputs from a single notebook run.
Configuring the Notebook Process
-
Drag a Notebook Process node onto the pipeline canvas.
-
In the General tab:
- Select Workspace
- Select Notebook
Syntasa automatically detects:
- Notebook language
- Runtime and execution settings
Adding Multiple Outputs
A single notebook can produce multiple outputs by connecting Notebook Output nodes.
Steps:
- Drag a Notebook Output node from the palette.
- Connect it to the output port of the Notebook Process node.
- Repeat for each required output.
Notebook Output Configuration:
- Display Name – Used as the identifier within the notebook code
Writing Data to Outputs in the Notebook
When executed as part of a job, Syntasa passes output locations as parameters to the notebook runtime.
- Output nodes are converted into environment variables
- The
@prefix is removed when passed to the kernel
Example (Python):
import os
output_path = os.environ.get('NotebookOutput1')
df.write.mode("overwrite").parquet(output_path)
This approach allows a single notebook to write multiple datasets to different destinations.
Troubleshooting and Best Practices
Common Issues and Tips
-
Notebook Missing
- If a previously selected notebook is no longer available, the UI displays a hint with the original notebook name.
-
Runtime Status
- Notebook runtime status (e.g., RUNNING, STARTING, STOPPED) is displayed in the notebook title bar for real-time monitoring.
-
Workspace Deletion Restrictions
- A workspace cannot be deleted if it contains active notebooks.
- Move or delete notebooks before attempting workspace deletion.
-
Default Workspace
- Every user has access to the Default Workspace, which serves as the primary shared notebook area.
Summary
By combining Jupyter AI, Notebook Workspaces, and Notebook Processes, Syntasa enables:
- AI-assisted notebook development
- Structured collaboration through shared workspaces
- Scalable pipeline execution with multi-output notebooks
These capabilities streamline development workflows while maintaining centralized governance and configuration.