chapyter  by chapyter

JupyterLab extension for natural language code generation

created 2 years ago
830 stars

Top 43.7% on sourcepulse

GitHubView on GitHub
1 Expert Loves This Project
Project Summary

Chapyter is a JupyterLab extension that bridges GPT-4 with your coding environment, enabling natural language programming by translating descriptions into executable Python code. It's designed for developers and researchers seeking to boost productivity and explore new ideas within their familiar Jupyter workflow.

How It Works

Chapyter leverages an IPython magic command (%%chat) to interpret natural language prompts within a Jupyter cell. It then calls OpenAI's GPT models to generate Python code, which is automatically executed. The extension supports using coding history and execution output for context-aware code generation, facilitating tasks like data visualization. It also offers in-situ debugging and customization of prompts and AI configurations.

Quick Start & Requirements

  • Install via pip: pip install chapyter
  • Requires JupyterLab ≥ 4.0.
  • Requires OpenAI API key and organization set as environment variables.
  • Official examples are available at examples/01-quick-start.ipynb.

Highlighted Details

  • Seamlessly integrates GPT-4 into JupyterLab for natural language programming.
  • Supports code generation from natural language with automatic execution.
  • Allows using coding history and execution output for context-aware code generation.
  • Enables in-situ debugging and code editing within the Jupyter environment.
  • Offers transparency and customization of prompts and AI configurations.
  • Emphasizes privacy by adhering to OpenAI API data usage policies.

Maintenance & Community

  • Development notes indicate a two-component architecture: IPython magic command and frontend execution listener.
  • Requires NodeJS for building the extension package.
  • Development setup involves cloning the repo, installing in development mode (pip install -e "."), and linking the extension (jupyter labextension develop . --overwrite).
  • A jlpm watch command is available for continuous rebuilding during development.

Licensing & Compatibility

  • The README does not explicitly state a license.

Limitations & Caveats

  • Installation may upgrade JupyterLab to ≥ 4.0, potentially breaking existing environments.
  • The README does not specify a license, which could impact commercial use or closed-source integration.
Health Check
Last commit

1 year ago

Responsiveness

1 day

Pull Requests (30d)
0
Issues (30d)
0
Star History
3 stars in the last 90 days

Explore Similar Projects

Starred by Chip Huyen Chip Huyen(Author of AI Engineering, Designing Machine Learning Systems) and Carol Willing Carol Willing(Core Contributor to CPython, Jupyter).

genai by rgbkrk

0%
352
IPython extension for generative AI assistance in Jupyter notebooks
created 3 years ago
updated 1 year ago
Starred by Chris Van Pelt Chris Van Pelt(Cofounder of Weights & Biases), Chip Huyen Chip Huyen(Author of AI Engineering, Designing Machine Learning Systems), and
15 more.

developer by smol-ai

0.1%
12k
Agent for embedding a developer in your app
created 2 years ago
updated 1 year ago
Feedback? Help us improve.