Create rich data annotations in Jupyter notebooks with ipyannotations.

ipyannotations provides interactive UI elements, based on ipywidgets, to allow developers and scientists to label data right in the notebook.

ipyannotations supports many common data labelling tasks, such as image and text classification and annotation. It also supports custom data presentation by leveraging the Jupyter ecosystem.


To get started with ipyannotations, install with pip:

pip install ipyannotations

To start labelling data, import from the appropriate ipyannotations module. For example, for text span/entity labelling:

from ipyannotations import text
widget = text.TextTagger()
widget.display("This is a text tagging widget. Highlight words "
               "or phrases to tag them with a class.")

Or, if you would like to classify images:

from ipyannotations import images
widget = images.ClassLabeller(options=["monkey", "ape"])


Throughout this documentation, UI elements can be interacted with (e.g. buttons can be clicked, sliders can be moved), but because there is no python process running in the background, the effect will mostly not be visible.