This page lists the history of changes to Prodigy. Whenever a new update is
available, you’ll receive an email notification sent to the address specified
at checkout. You can then download the new version via your personal
download link. If your free upgrades expired, you can now add 12 months of
updates to your license via our online shop. Please allow up to 24 hours
for your download link to be reactivated.
This patch release fixes an issue with the --base-model argument in
train which resulted in erroneous sourcing of the tok2vec component
from the spaCy base model. It also updates the
peewee (<3.17),
pydantic (<2.0),
FastAPI (<0.95.1) and
typeguard (<4.0) dependencies.
This release reverts a backward incompatible change from v1.11.10 that removed
database methods and helpers get_db, set_db and disconnect. These methods
were not part of the documented API, but could be accessed via the Prodigy
source available to users, which might have potentially caused problems.
fix
Restore database methods get_db, set_db and disconnect.
This update includes fixes to better support
spaCy v3.2 and improves sentence segmentation
correction, data export for binary NER annotations, and stream handling for
multi-user sessions.
new
Update spaCy version range to allow installing spaCy v3.2 with Prodigy by default.
fix
Fix vector handling for spaCy v3.2 compatibility.
fix
Improve caching to prevent duplication in named multi-user sessions.
fix
Enable newline and whitespace highlighting by default in sent.correct.
fix
Ensure binary rejected entity spans are ignored in train and data-to-spacy if they’re also in the accepted annotations.
This update includes a new workflow for correcting a trained span categorizer,
as well as various small fixes to the config generation, stream setup and UI.
This release updates Prodigy to use the new
spaCy v3, which brings you lots of new exciting
features like end-to-end support for transformer-based pipelines, a training
config system for reproducible results, as well as new trainable components for
sentence segmentation and span categorization that you can create annotations
for with Prodigy. Thanks to the 300+ (!) nightly users who helped us test this
new release!
Prodigy v1.11 includes a bunch of new features, including a new installation
process via pip and new wheels for Python 3.9 and ARM architectures, a new
recipe and UI for annotating overlapping and nested spans, new recipes for
improving a sentence recognizer model, new training and data export recipes
that seamlessly integrate with spaCy’s config system and let you train multiple
components with different evaluation sets, support for updating the model in the
loop in ner.correct and a new textcat.correct to go along with it, improved
handling of binary annotations in ner.teach for better results, as well as new
customization options and settings.
new
Support for spaCy v3, including transformer-based pipelines, training configs, new trainable components and more.
new
Improved wheel installation: download the best-matching wheel via pip using your license key!
new
Pre-built wheels for Python 3.9 and ARM architectures.
new
New train command that supports training multiple components from different datasets and evaluation datasets (using the eval: prefix) and mixing manual and binary datasets.
new
New data-to-spacy command that generates all data you need: training and evaluation corpora in spaCy’s binary format, initialized label sets for faster training and optional config file.
new
New train-curve command with support for multiple components and visual plots.
Improved ner.teach workflow for more accurate results with spaCy v3. In addition to binary questions about entity suggestions, you’re now also asked questions about texts with no entities at all. If an example includes no highlighted suggestions, you can hit accept to confirm that it contains no entities, or reject if it contains entities.
new
progress command to calculate annotation progress over time.
new
The -F argument to provide a file path for custom recipe scripts now supports multiple, comma-separated paths and can also be used to load custom registered functions for spaCy configs. It works across all recipes, including the built-in workflows.
new
Add --auto-accept flag to review recipe to automatically accept annotations with no conflicts and add them to the database.
new
Support "history_text" property in task for customizing preview shown in sidebar history.
new
Allow optional "meta" and "score" in choice options, which will be displayed with the option.
new
Include the UNIX timestamp of when an annotation was answered in the UI as "_timestamp".
new
Support counting finite and potentially filtered generator streams for better progress estimation via "auto_count_stream": true. Note that this setting should only be used for streams that are not dynamic and depend on outside state (e.g. an updated model in the loop).
new
Add total_examples_target for the total number of examples that should be annotated to reach a progress of 100%. Useful for infinite streams or if completion doesn’t map to stream size.
new
PRODIGY_CONFIG and PRODIGY_CONFIG_OVERRIDESenvironment variables to provide custom path to global config JSON and override individual config settings on the CLI.
new
Dark mode theme! Enable it by setting "theme": "dark" in your prodigy.json.
new
Support overriding color palettes used for labels via "palettes" in "custom_theme".
Add more human-readable CSS class names and data attributes.
fyi
The train command now handles binary annotations out-of-the-box, so you won’t have to explicitly set --binary or --ner-missing anymore. Future annotations created with binary workflows like ner.teach will now also set "_is_binary": true explicitly in the data.
fyi
Per-label stats in the output of train can now be toggled via the --label-stats flag.
fyi
The --textcat-exclusive argument is not needed anymore in train and related workflows and has been removed. Instead, you can explicitly provide datasets via --textcat (exclusive categories) and --textcat-multilabel (non-exclusive categories).
fyi
The --init-tok2vec argument has been removed from textcat.teach. You can now pretrained embeddings directly via the spaCy pipeline you load in.
fyi
Examples are now accepted automatically in textcat.manual if when you select an option with mutually exclusive categories. You can override this by setting "choice_auto_accept": false..
fyi
The force_stream_order config setting is now deprecated and the default behavior of the feeds. Batches are now always sent and re-sent in the same order wherever possible.
Fix various issues and inconsistencies around stream handling and feed overlap when using named multi-user sessions with a single instance of Prodigy.
fix
Fix span selection in relations UI via tap on mobile devices.
fix
Correctly handle vectors for languages without uppercase/lowercase distinction in terms.teach.
fix
Fix issue that could cause next batch to be blocked when using "instant_submit": true.
fix
Fix issue in CSV loader that would handle title-cased Label columns incorrectly.
fix
Fix base64 conversion to be forwards-compatible.
fix
Ensure that html_template overrides are correctly interpreted in blocks UI.
fix
Deep-merge all config settings provided via global and local prodigy.json, recipe config and overrides to support changing only individual nested properties.
fix
Fix issue that could cause config keyword arguments to not be set correctly in prodigy.serve.
This release includes updates to the relations and review workflows, fixes for
feed overlap and multi-user session handling, new UI customization options and a
Portuguese UI translation, as well as various other small fixes and
improvements.
Support label_style setting config instead of just ner_manual_label_style to indicate that it applies to ner_manual, image_manual and relations UI.
new
Add --show-skipped option to review interface to include answers that would otherwise be skipped, like ignored answers or rejected examples in manual interfaces.
new
Allow clicking on a version in review interface to update final annotation.
new
Add swipe_gesturesconfig setting to customize left/right mapping.
The feed_overlap config setting now defaults to false and Prodigy will show a warning if an overlapping feed is used without named sessions.
fix
Use symbols for whitespace characters in relations UI.
fix
Fix issue that could cause head or child span of first token to not be represented correctly in relations interface.
fix
Fix issue that could cause span label changes to not be reflected correctly in "relations" meta generated by relations UI and make sure "spans" are always sorted by default.
fix
Set default batch size in calls to nlp.pipe in recipes.
fix
Ensure that custom database is correctly passed to RepeatingFeed.
fix
Fix issue that could cause excluded datasets to not be represented correctly in named sessions.
fix
Always sort files alphabetically in loaders that read from directories.
fix
Make train fail more gracefully if no data is available.
fix
Fix issue that could cause honor_token_whitespace to not be reflected correctly.
fix
Don’t explicitly set delimiter in CSV loader and let Python guess.
fix
Correctly interpret image spans without "points" in image UI.
This update includes small fixes to the stream state management and hashing and
improves handling of pre-defined tokens and spans in recipes and interfaces. It
also introduces new customization options for the manual image and audio UIs.
new
Support customizing the JSON key used to store image spans in image_manual. Can be used to combine the interface with other interfaces that use "spans", e.g. ner_manual.
This update fixes a problem with the exclude logic by input hashes and adds
support for custom tokenization in the manual relation annotation workflow.
This update includes small fixes to the exclude logic in repeating streams,
improvements to dependency parsing annotation and training, and updates to the
ASGI server. Check out the release notes for v1.10 for all the new
features introduced in the latest update!
fix
Fix issue that’d cause repeating feed to not honor exclude_by.
fix
Fix problem in dep.correct sentence segmentation that could lead Prodigy to incorrectly report misaligned tokenization.
fix
Correctly print dependency parser training results in train.
Allow changing expected max length for MySQL via PRODIGY_MYSQL_MAX_LEN environment variable to prevent Prodigy from raising an error if the field type was changed to mediumblob.
This update includes small fixes for problems introduced in v1.10.0, as well as
improvements to the spaCy v2.3 integration, more customization for audio and
video transcription, and a new UI translation for French. Check out the
release notes for v1.10 for all the new features introduced in the
latest update!
new
Support customizing field ID used to store transcript in audio.transcribe.
Our biggest release yet includes a bunch of new features, interfaces and recipes
for dependency and relation annotation,
audio and video annotation, as well as a new and improved
manual image annotation interface with support for
editing shapes and bounding boxes. We’ve also added new
recipe callbacks for modifying examples placed
in the database and validating answers at runtime, added more settings for
whitespace-handling in manual NER annotation, including a mode for
character-based highlighting,
and introduced various new config settings to customize the web app and
annotation interfaces. Thanks to everyone who’s helped us beta test the new
features – your feedback has helped a lot! See the changelog below for a full
list of new features.
new
Flexible relations interface for fully manual dependency and relationship annotation and joint span and dependency relation annotation.
audio and audio_manual interfaces binary and fully manual audio and video annotation. Add and modify segments for different labels and collect feedback about pre-highlighted regions.
New and improved image_manual interface with support for moving and resizing shapes, adjusting polygons, freehand annotation, more detailed data format and more settings.
new
Support dataset:{name} and dataset:{name}:{answer} syntax as source argument in recipes to allow loading from existing datasets. For example, dataset:my_set will use examples dataset my_set as the input data and dataset:my_set:accept will only load in accepted answers.
new
Add validate_answer recipe component to perform custom validation of annotations created in the UI and prevent invalid answers from being submitted.
new
Allow recipes to return a before_db callback for modifying examples before they’re placed in the database, e.g. to strip out base64 data.
Support multi-arc dependency annotations (e.g. created with dep.correct) in train.
new
Set information about trailing whitespace in add_tokens and reflect whitespace (or lack of whitespace) between tokens in ner_manual (can be changed using the "honor_token_whitespace" setting).
new
Add --highlight-chars flag to ner.manual and use_chars argument to add_tokens to allow highlighting individual characters instead of full tokens.
new
Add "field_suggestions" property to text_input UI to allow specifying a list of auto-suggestions to show when the user types or presses ↓.
new
Allow disabling and reordering of the accept, reject, ignore and undo buttons at the bottom of the screen via the "buttons"config setting.
new
Add options --width (card with and maximum image width) and --remove-base64 (remove base64-encoded image data) to image.manual.
new
Add file_ext argument to Images and ImageServerloaders, always preserve original local file path as "path" and add Audio, AudioServer, Video and VideoServerloaders.
Add --rehash flag to db-merge to force-overwrite hashes.
new
Add --base-model argument to data-to-spacy to customize tokenizer and sentencizer.
new
Allow individual tasks to override global or UI config via a key "config".
new
Add "ui_lang" config and translations of descriptions, messages and tooltips in the annotation UI to German, Spanish, Dutch and Chinese.
new
Make sidebar history length default to batch_size and allow customizing it via the history_sizeconfig setting. Note that the history size can’t be larger than the batch size.
new
Show recipe name in project info in sidebar and allow customizing info via "project_info" config.
new
Add Controller methods and attributes for retrieving total counts and progress by session ID.
new
Warn if global or local prodigy.json settings override potentially critical recipe components.
new
Support custom label colors manual interfaces and automatically pick contrasting text color.
new
Show keyboard shortcuts for toolbar buttons on hover.
new
Show friendlier error if prodigy.json contains invalid JSON.
fix
Make progress function returned by recipes consistent and always pass it the controller and the return value of the update callback, if available.
fix
Correctly report per-session progress for streams with a length and multi-user sessions and take feed_overlap into account.
fix
Improve support for using "force_stream_order": True (repeating feed) with "feed_overlap": False (no overlap between sessions).
fix
Make all manual recipes default to "force_stream_order": True for more intuitive stream behavior: batches of tasks are now always re-sent until they’re answered and refreshing the page will show the same batch again.
fix
Fix issue that could cause the review to not displayed changes when user hits undo.
fix
Preserve "choice_style" config setting on tasks so it can be re-applied when running review.
fix
Support simpler data format in diff interface to make it work combined with choice in a blocks interface and prevent clash of "accept" property used by both UIs.
fix
Adjust display of spans with RTL text when "writing_mode": "rtl" is enabled.
fyi
The deprecated --api recipe argument has been removed and merged with --loader.
fyi
textcat.manual now doesn’t perform additional checks for the pre-v1.9 syntax with an (unused) spaCy model argument anymore.
fyi
Loading from standard input now requires the source argument to be set to - explicitly.
The "spans" data created with image_manual now also include a "type" (either "rect", "polygon" or "freehand"), as well as "width", "height", "x", "y" and "center" values for rects.
fyi
Forced stream order and repeating batches by default means that you should use named sessions or set "force_stream_order": False if you want multiple users connecting to the same instance. Otherwise, you may get duplicate questions.
This patch release includes small fixes to the force_stream_order setting to
prevent a race condition and duplicate examples. Stay tuned for v1.10, which is
coming soon and will include lots of cool new features!
This release includes small fixes and improvements to the built-in recipes and
interfaces.
new
Add overwrite flag to add_tokens preprocessor to overwrite existing "tokens".
new
Allow review recipe to overwrite view ID (e.g. to render blocks annotations differently).
fix
Accept pre-set tokens correctly in add_tokens to make it easier to provide custom tokenization.
fix
Improve backwards-compatibility checks of arguments in textcat.manual.
fix
Correctly report numbers of textcat examples in train and filter out ignored answers instead of just ignoring the examples during training and evaluation.
fix
Fix handling of integer option "id" values in print-dataset.
fix
Fix issue that’d cause text_input value to not reset and auto-focus correctly between tasks.
fix
Fix incorrect validation errors for dep UI and "card_css" setting.
fix
Set more explicit MIME types for JS bundle for server configs that prevent MIME type sniffing.
This release includes small fixes, a new option for changing keyboard shortcuts
for labels and multiple choice options, and a new loader for serving images.
This release introduces tons of new features and improvements, including new
recipes, interfaces and workflows. We also redesigned the website, rewrote the
documentation from scratch and added lots of new pages, usage guides, demos and
examples. We hope you like it! Some highlights in Prodigy v1.9 include new
unified training recipes, two new
annotation interfaces for free-form text input and
combining different UIs, config settings for making streams repeat questions
until they’re answered, and changing keyboard shortcuts, official support for
spaCy v2.2 and a
new recipe for converting Prodigy annotations of
different types to a single training corpus in spaCy’s JSON format. See the
changelog below for a full list of new features.
new
Add new general-purpose train and train-curve recipes to replace the task-specific training recipes and make overall training process more consistent.
new
Show accuracy per entity type, tag or text category in training results.
new
Add data-to-spacy recipe that takes Prodigy datasets for NER, text classification, tagging and parsing and outputs a merged corpus (optionally split into training and evaluation data) in spaCy’s JSON format that you can use with spacy train.
new
Add --patterns argument to ner.manual to pre-highlight suggestions from patterns. This workflow is going to replace the binary ner.match.
new
Add general-purpose print-stream and print-dataset recipes that can output different data types. Those recipes are going to replace the more specific print utilities like ner.print-stream.
Add text_input interface to collect free-form text input from annotators.
new
New "force_stream_order"config setting. If True, tasks will always be sent out in the same order and re-sent until they’re answered – even if you refresh the app in your browser.
Support tokenizing terms in terms.to-patterns to create patterns for multi-token terms.
new
Add "exclude_by" config setting to allow recipes to specify whether to filter by input hash or task hash so that manual recipes don’t repeat the same content with different suggestions.
new
Support blank:{lang}, e.g. blank:en as an alternative spaCy model in ner.manual, textcat.teach and train to start off with a blank model.
new
Pass --label values added to mark to the "labels" config so the recipe can be used with manual interfaces like ner_manual and image_manual.
new
Add --no-fetch flag to image.manual to disable base64 conversion of images.
new
Add --fetch-media flag to review recipe to temporarily replace paths with base64 data.
new
Also support - as the value of source arguments to read from standard input and make this the recommended best practice (instead of omitting the argument).
new
Always auto-create datasets and deprecate dataset command.
Exclude by input hash instead of task hash in ner.manual, ner.correct, pos.correct, textcat.manual and image.manual, using the new "exclude_by" setting. Examples will only be shown again if their content is identical, not if they include different highlighted suggestions.
fix
Fix handling of newline tokens in ner.manual for multiple newline character and adjust style of ↵ symbols. Newline-only tokens are now unselectable by default to prevent creating newline token entities. You can set "allow_newline_highlight": true to change this.
fix
Show error if MySQL database is used and JSON blob saved to the database is longer than 65535 characters, to prevent MySQL DB from truncating example.
fyi
Rename ner.make-gold and pos.make-gold to ner.correct and pos.correct. The old names are still supported so your code won’t break.
fyi
Deprecate various outdated recipes, the built-in live APIs and the recipe_args dict. You can still use all of these features and your code shouldn’t break but they’ll be removed in v2.
fyi
Refactor the whole code base and module organization and various other internals, and added simple type annotations to recipe functions.
doc
New documentation and website redesigned and rewritten completely from scratch, with tons of new content, demos and usage examples. The new site also replaces the PRODIGY_README.html that used to be available for download with Prodigy.
This release updates Prodigy for the brand new
spaCy v2.1, which features BERT-style
language model pretraining,
an
extended match pattern API
and faster tokenization. We’ve also added support for basic authentication and
several completely new built-in recipes and workflows for reviewing annotations
from multiple sessions and resolving conflicts, manual multiple-choice text
classification, and merging two or more existing datasets.
New interface and review recipe for reviewing and reconciling annotations from multiple sessions on the same data. View conflicting annotations, resolve them in the UI and create a final training set.
This update makes it easy to set up named multi-user sessions in a single
instance and use some of the multi-user features we’ve developed for the
upcoming
Prodigy Scale.
It also introduces a new setting for instant submissions and support for custom
CSS and JavaScript across all interfaces. Of course, we also fixed various bugs
and inconsistencies to make sure Prodigy runs as smoothly as possible.
By the way, if you want to add 12 months of updates to your license, you can now
do so via our online shop!
new
Add "instant_submit" option to send back a task instantly after it’s answered in the app, skipping the history and immediately triggering the update callback if available.
new
Support custom named sessions via query parameters in the app to enable multi-user workflows in single instances. For example, accessing the app with /?session=alex will add all annotations to a session dataset dataset-alex. The boolean "feed_overlap" setting lets you control whether to have each example sent out once so it’s annotated by someone or whether to allow overlaps and send out each example to everyone (default).
new
Add "global_css" option across all interfaces, more human-readable class names and expose data-prodigy-view-id and data-prodigy-recipe for custom interface or recipe-specific styling.
new
Add "javascript" option across all interfaces and fire custom events on mount, update and answer.
new
Add --batch-size option to drop command to prevent database errors when deleting large datasets.
fix
Make labels in pos.teach and pos.make_gold correctly default to built-in label scheme and raise error if no fine-grained labels are provided.
fix
Make sure PatternMatcher only shows matches for recipe labels.
fix
Fix bug that would cause add_tokens preprocessor to raise an error.
fix
Correctly handle min_length in split_sentences preprocessor.
fix
Fix bug that’d cause text classification tasks to not be deep copied correctly.
fix
Raise error if terms.to-patterns is used without label to prevent null value.
fix
Fix problem that’d cause dependency arcs to be rendered incorrectly.
fix
Improve relative sizing of bounding boxes and labels for large images.
fix
Ensure task can only be flagged via keyboard shortcut if "show_flag" is enabled.
fix
Drop third-party dependency mmh3 that was causing problems for some users.
This update takes advantage of pre-built binary wheels for our dependencies and
speeds up the installation by up to 10 times! We’ve also added official support
for Python 3.7, made excluding the current dataset the default behavior, fixed
issues related to patterns, text classification and NER training and improved
some internals to get Prodigy ready for multi-user workflows and the upcoming
Prodigy Scale.
new
Add official support and wheels for Python 3.7.
new
Use spaCy v2.0.16 to take advantage of pre-built wheels and allow up to 10 times faster installation.
new
Automatically exclude examples already present in the current dataset (e.g. make --exclude dataset the default behavior). To disable this feature, you can set "auto_exclude_current": false in your prodigy.json or recipe config.
This update includes several bug fixes and stability improvements related to the
new part-of-speech tagging recipes and the built-in pattern matcher model, as
well as a better identification system for match patterns.
new
Add --resume argument to ner.match to update matcher from dataset.
new
Use hashes as pattern IDs to allow updating existing matchers even if pattern files change across sessions.
fix
Make pos.teach and pos.batch-train work as expected with both fine-grained and coarse-grained part-of-speech tags.
This update includes new recipes for part-of-speech tagging, an experimental
release of the new manual image labeling interface and a new mechanism for
adding custom loaders, database connectors and recipes via Python entry points.
We’ve also added validation for incoming streams and detailed error messages for
incorrect task formats, enhanced the training options for sparse and
gold-standard named entity data, and improved handling of newlines and
formatting tokens in the manual NER interface.
Add annotation task validation. Before the Prodigy server starts, your stream is checked against a schema to make sure it has the correct format. If not, Prodigy tells you what the problem is.
new
Allow adding custom recipes, databases and loaders via entry points.
new
Add --no-missing flag to ner.batch-train to assume all correct spans are in the gold annotation, and any spans not in the gold annotation are incorrect. This is especially useful when training from annotations collected with ner.manual or ner.make-gold.
new
Add --resume argument to terms.teach to update target vector from dataset.
new
Add “true” newlines to newline tokens ↵ manual interfaces. The behavior can be turned off by setting "hide_true_newline_tokens": true.
new
Allow marking tokens as "disabled": true in manual interfaces. Disabled tokens can’t be highlighted and can be used to assist annotators with formatting.
new
Converter recipe ner.iob-to-gold to convert IOB tags to Prodigy’s JSONL.
fix
Disable and restore other pipeline components in batch-train recipes.
fix
Ensure seed terms are added to the dataset correctly.
fix
Fix bug that would cause web app to fail with annotation instructions.
fix
Make keyboard shortcuts in choice interface work as expected again.
fix
Add missing import and make image.test work out-of-the-box again.
doc
Add sections on Python entry points and document new recipes and interfaces.
This update improves efficiency of the ner.batch-train recipe and fixes
the handling of task and input hashes in the database methods and --exclude
option. It also comes with various improvements to error messages and web app
stability.
new
Improve efficiency of ner.batch-train – up to 10× faster for some workloads!
fix
Fix problem that would cause text classification tasks created from pattern matches to not have a label assigned to the task.
fix
Ensure that --exclude logic is always applied after the stream is (re)hashed.
fix
Fix bug that would cause hashes to not be returned correctly by the database.
fix
Allow the "instructions" setting to be false or null.
fix
Improve error messages if recipe file is not valid and if dataset doesn’t exist in terms.to-patterns.
This update includes a new
annotation interface for relations and
dependencies, as well as an experimental dep.teach recipe.
textcat.teach now takes a file of match patterns instead of seed terms,
and manual interfaces now support lists of up to 30 labels with keyboard
shortcuts. We’ve also improved the customization of various components.
This update introduces a new ner.make-gold recipe that lets you create
gold-standard data faster by manually correcting a model’s predictions. We’ve
also added a new pos.make-gold recipe for
annotating part-of-speech tags, as
well as converters to create spaCy training data from Prodigy datasets.
new
Improved ner.make-gold workflow: run a model over your text and manually correct the entities to create gold-standard data.
new
Add "ner_manual_label_style" option to display label set as list of dropdown (always uses dropdown for more than 10 labels) and add number keyboard shortcuts to list of labels.
new
Experimental pos.make-gold recipe for manual POS annotation.
Add option for custom label color schemes for NER and POS tagging.
new
Add UI option to “flag” tasks to bookmark them for later via "show_flag" setting and a flag icon and f keyboard shortcut. Add --flagged-only setting to db-out command.
new
Rename split_tokens pre-processor to add_tokens.
fix
Fix rendering and use icons for whitespace tokens in ner_manual.
fix
Fix rendering of RTL languages in manual interfaces via "writing_dir" setting.
fix
Overwrite database settings correctly when using connect().
fix
Fix bug in logging timestamp and log minutes correctly.
fix
Only use colored CLI output if supported by user’s terminal.
This update introduces ner.manual, a new recipe and interface for
manual NER annotation. You can now
highlight one or more text spans per task and select the entity label from a
dropdown menu. To allow faster annotation and less fiddly clicking, token
boundaries are used to determine the entity spans when highlighting them. Note
that this workflow replaces ner.mark and boundaries.
new
ner.manual recipe and interface for manual NER annotation.
new
"card_css" option to inject custom CSS into annotation card.
new
Experimental "show_whitespace" for basic ner interface.
fix
Make --exclude argument and recipe option work as expected.
fix
Don’t merge and modify NER spans before adding example to the database.
doc
Document API of PatternMatcher model.
doc
Improve formatting of available recipes in prodigy --help.