You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Attention Jupyter AI users! I have some exciting news to share in this issue. We are currently planning, designing, and building the next major release of Jupyter AI, v3.0.0.
This issue is a living document that lists features planned for v3.0.0, and publicly tracks progress on v3.0.0 development. The list of planned features is incomplete and will evolve in the coming months. I'm posting what we have planned so far to make our progress transparent & visible to the broader user community.
These are the features we are >95% confident should be developed as part of v3.0.0.
Migration to Jupyter Chat (must be completed first)
Context: Jupyter Chat is a new package that re-defines and provides the frontend components originally from Jupyter AI, while completely re-defining the backend model of chats. Chats will no longer be a simple list of messages stored in-memory and vanish on server restart, but instead persisted as plaintext *.chat files and represented in-memory as a Yjs CRDT document. Yjs is the same family of packages that power Jupyter Collaboration, which provides RTC functionality in JupyterLab. @brichet (the lead dev behind Jupyter Chat) and I will be working closely to ensure that this migration will be seamless & painless for existing users & contributors.
Motivation: This migration will 1) allow for multiple chats by creating a top-level abstraction for chats, 2) simplify Jupyter AI's backend by delegating chat state management & synchronization to Yjs, 3) allow for real-time editing of the chat history to enable features like message editing & re-ordering. This migration also moves most of Jupyter AI's frontend components to @jupyter/chat, allowing other extensions to re-use our code to build their own chat applications.
The new v3-dev branch will track development on v3.0.0 until its initial release.
Until then, main will still track Jupyter AI v2.x.
From now on, newly-merged PRs should be backported to v3-dev.
Comment @meeseeksdev please backport to v3-dev on PRs after merging to have the bot automatically open a new backport PR against v3-dev.
We are targeting to have a pre-release ready by the end of December 2024. The goal of this pre-release is to just achieve feature parity with v2 while migrating to jupyterlab-chat, i.e. all the features that work today for a single chat should work reasonably well for multiple chats.
When v3-dev is ready for its initial release, a PR merging v3-dev into main will be opened, and be reviewed a final time.
After that PR is merged, main will track v3.x, and a separate 2.x branch will track Jupyter AI v2.x.
We acknowledge that the Jupyter Chat migration requires contextual knowledge of Jupyter Chat & Yjs, which makes it difficult for others to contribute directly. This migration also changes the entire chat API, on both the frontend and the backend. @brichet and I are prioritizing reaching alignment on the new chat API that will be used in Jupyter AI v3.0.0 as quickly as possible, so other contributors can build freely using a (relatively) stable chat API (ETA: by end of Dec).
Once that is complete, we will add a "Contributing" section to this issue that details how contributors can assign themselves issues & open PRs, and provides a summary of what is different in v3-dev.
For now, we ask that those who wish to contribute do so by opening new issues, leaving feedback on existing ones listed here, and reviewing v3-dev PRs to stay in-the-loop on code changes.
The text was updated successfully, but these errors were encountered:
Attention Jupyter AI users! I have some exciting news to share in this issue. We are currently planning, designing, and building the next major release of Jupyter AI, v3.0.0.
This issue is a living document that lists features planned for v3.0.0, and publicly tracks progress on v3.0.0 development. The list of planned features is incomplete and will evolve in the coming months. I'm posting what we have planned so far to make our progress transparent & visible to the broader user community.
The list of issues being considered for v3.0.0 are also listed here in a dedicated GitHub milestone: https://github.com/jupyterlab/jupyter-ai/milestone/10
Planned features
These are the features we are >95% confident should be developed as part of v3.0.0.
Migration to Jupyter Chat (must be completed first)
*.chat
files and represented in-memory as a Yjs CRDT document. Yjs is the same family of packages that power Jupyter Collaboration, which provides RTC functionality in JupyterLab. @brichet (the lead dev behind Jupyter Chat) and I will be working closely to ensure that this migration will be seamless & painless for existing users & contributors.@jupyter/chat
, allowing other extensions to re-use our code to build their own chat applications.@jupyter/chat
as chat UI #862jupyterlab-chat
#1043Multiple conversation management
Message editing
Migration to Pydantic v2 and LangChain >=0.3
Unify authentication in chat & magics
Tentative features
These are features that may be developed as part of v3.0.0, but require further design, research, or feedback from the community.
Allow for dynamic installation of model dependencies
Improve
/generate
by implementing it as an agentic workflow/generate
sometimes splits classes and functions across multiple cells #1111Details on v3.0.0 development (for contributors)
The new
v3-dev
branch will track development on v3.0.0 until its initial release.main
will still track Jupyter AI v2.x.From now on, newly-merged PRs should be backported to
v3-dev
.@meeseeksdev please backport to v3-dev
on PRs after merging to have the bot automatically open a new backport PR againstv3-dev
.We are targeting to have a pre-release ready by the end of December 2024. The goal of this pre-release is to just achieve feature parity with v2 while migrating to
jupyterlab-chat
, i.e. all the features that work today for a single chat should work reasonably well for multiple chats.When
v3-dev
is ready for its initial release, a PR mergingv3-dev
intomain
will be opened, and be reviewed a final time.After that PR is merged,
main
will track v3.x, and a separate2.x
branch will track Jupyter AI v2.x.We acknowledge that the Jupyter Chat migration requires contextual knowledge of Jupyter Chat & Yjs, which makes it difficult for others to contribute directly. This migration also changes the entire chat API, on both the frontend and the backend. @brichet and I are prioritizing reaching alignment on the new chat API that will be used in Jupyter AI v3.0.0 as quickly as possible, so other contributors can build freely using a (relatively) stable chat API (ETA: by end of Dec).
Once that is complete, we will add a "Contributing" section to this issue that details how contributors can assign themselves issues & open PRs, and provides a summary of what is different in
v3-dev
.For now, we ask that those who wish to contribute do so by opening new issues, leaving feedback on existing ones listed here, and reviewing
v3-dev
PRs to stay in-the-loop on code changes.The text was updated successfully, but these errors were encountered: