Introduce an AI copilot type extension focusing more on notebook cell interaction and precise control

I am a data analyst having below needs which drive me to work out this extension v1.0. Currently only support openai and moonshot models. If you are interested in jupyterlab extension ecosystem, come and contribute to this open source project.

intro_how_to_use.gif

Or Click to Watch Introduction Video

Highlights

It is someway similar to Github Copilot or Cursor under jupyterlab environment as well as jupyter-ai. But it does not have fast code generation capabilities. It is more like a chatbot that can be used interactively in jupyterlab.

The original intention of the NoteChat tool is to allow users to have more precise and controllable conversations, including but not limited to:

  • include all possible notebook elements the conversation context, such as cell execution outputs, code and markdown inputs, external files, etc.
  • precisely specifying cell or file references by unique, relative or range cell IDs
  • python kernel can directly refer notebook cell code/outputs and AI-generated texts reciprocally
  • execute python code and AI-generated texts in sequence
  • manipulate AI-generated text manually as context

So that users can better utilize the strengths of LLMs, including:

  • common conversations (although the user experience is not as good as dialogue flow)
  • writing structured essay or long reports
  • data and text analysis with LLM models
  • assisting programming
  • acquiring LLM knowledge to notebook

Basic Interface

See more, click the above or this link to github repo

1 Like