# \#best-practices

**URL:** https://support.prodi.gy/tag/best-practices/32.md

[Latest](https://support.prodi.gy/latest.md) · [Categories](https://support.prodi.gy/categories.md) · [Tags](https://support.prodi.gy/tags.md)

---

## [Annotation Flowchart: Named Entity Recognition](https://support.prodi.gy/t/annotation-flowchart-named-entity-recognition/1556)

<div class="topic-metadata">

**Author:** [@ines](https://support.prodi.gy/u/ines)\
**Replies:** 26\
**Last updated:** [January 23, 2024, 2:33pm UTC](https://support.prodi.gy/t/annotation-flowchart-named-entity-recognition/1556 "2024-01-23T14:33:06Z")

</div>

Just shared this on Twitter – if you find flowcharts like this useful, I'm happy to make more :smiley: Updated on October 18, 2022: New versions of the NER flowcharts! See our Twitter thread for more details.

---

## [Custom database connection being reset to prodigy.json paramters](https://support.prodi.gy/t/custom-database-connection-being-reset-to-prodigy-json-paramters/7458)

<div class="topic-metadata">

**Author:** [@FourthPartyAI](https://support.prodi.gy/u/FourthPartyAI)\
**Replies:** 2\
**Last updated:** [December 17, 2024, 10:30am UTC](https://support.prodi.gy/t/custom-database-connection-being-reset-to-prodigy-json-paramters/7458 "2024-12-17T10:30:37Z")

</div>

I have a postgres instance with two databases in it: my\_annotated\_db and my\_input\_db and I have custom stream manager that will watch my\_input\_db for new input, perform some custom operations, and then feed the stream ov…

---

## [Annotating strings without correct separation](https://support.prodi.gy/t/annotating-strings-without-correct-separation/7431)

<div class="topic-metadata">

**Author:** [@toadle](https://support.prodi.gy/u/toadle)\
**Replies:** 8\
**Last updated:** [November 21, 2024, 12:22pm UTC](https://support.prodi.gy/t/annotating-strings-without-correct-separation/7431 "2024-11-21T12:22:18Z")

</div>

Hey everybody, I'm annotating examples from bankturnovers in prodify, with so far has worked very well. Sadly sometimes I come past examples that look like this ...Kundennummer2785708... ...Hausmacherstr. 34Erstattun…

---

## [Productionising Prodigy datasets](https://support.prodi.gy/t/productionising-prodigy-datasets/7437)

<div class="topic-metadata">

**Author:** [@monsoon](https://support.prodi.gy/u/monsoon)\
**Replies:** 1\
**Last updated:** [November 20, 2024, 10:59am UTC](https://support.prodi.gy/t/productionising-prodigy-datasets/7437 "2024-11-20T10:59:58Z")

</div>

In our system we have reached the point where we have certain Prodigy datasets stored within a MySQL database. These datasets can be converted to .spacy files, and hooked into the spacy train command, and we've attached …

---

## [PDF OCR Image annotation metadata - feature suggestion?](https://support.prodi.gy/t/pdf-ocr-image-annotation-metadata-feature-suggestion/7211)

<div class="topic-metadata">

**Author:** [@PaulBFB](https://support.prodi.gy/u/PaulBFB)\
**Replies:** 3\
**Last updated:** [May 13, 2024, 9:59am UTC](https://support.prodi.gy/t/pdf-ocr-image-annotation-metadata-feature-suggestion/7211 "2024-05-13T09:59:05Z")

</div>

TL:DR - I'm trying to finetune LaoutLMv3 on my own PDFs based on this structure - LayoutLMv3 expects training data in a pretty specific way which doesn't really comply with the results of the pdf.ocr.correct recipe outpu…

---

## [Looking for reference material on best practices for correctly interacting between model layers.](https://support.prodi.gy/t/looking-for-reference-material-on-best-practices-for-correctly-interacting-between-model-layers/7097)

<div class="topic-metadata">

**Author:** [@vish](https://support.prodi.gy/u/vish)\
**Replies:** 1\
**Last updated:** [February 26, 2024, 11:06am UTC](https://support.prodi.gy/t/looking-for-reference-material-on-best-practices-for-correctly-interacting-between-model-layers/7097 "2024-02-26T11:06:48Z")

</div>

some layers can feed information forward, and some back. for example, if I'd like to train a span classifier to identify railway station, it stands to reason that many of the features captured by NER can be very useful …

---

## [\[Request\] best practice for bootstrapping data for training partially new Named Entites? (and a question about PhraseMatcher )](https://support.prodi.gy/t/request-best-practice-for-bootstrapping-data-for-training-partially-new-named-entites-and-a-question-about-phrasematcher/7051)

<div class="topic-metadata">

**Author:** [@vish](https://support.prodi.gy/u/vish)\
**Replies:** 3\
**Last updated:** [February 16, 2024, 12:52pm UTC](https://support.prodi.gy/t/request-best-practice-for-bootstrapping-data-for-training-partially-new-named-entites-and-a-question-about-phrasematcher/7051 "2024-02-16T12:52:40Z")

</div>

I'm building a new NER model. is this sane? (also a question about PhraseMatcher coming in in 1 minute) Some entities exist in the base model (e.g GPE, LOC, DATE, TIME). - I'd like to use that when creating a silver t…

---

## [Review Process - Focus on specific label/tag](https://support.prodi.gy/t/review-process-focus-on-specific-label-tag/7088)

<div class="topic-metadata">

**Author:** [@jrouss](https://support.prodi.gy/u/jrouss)\
**Replies:** 1\
**Last updated:** [February 9, 2024, 11:37am UTC](https://support.prodi.gy/t/review-process-focus-on-specific-label-tag/7088 "2024-02-09T11:37:00Z")

</div>

I annotated a bunch of data and have been incrementally training a spancat model to detect certain fragments in messages. I noticed one of my categories scores much lower than others, and I recall sort of changing the '…

---

## [NLP - Span Categorization - compound words or wordsstucktogetherlikethis](https://support.prodi.gy/t/nlp-span-categorization-compound-words-or-wordsstucktogetherlikethis/7080)

<div class="topic-metadata">

**Author:** [@jrouss](https://support.prodi.gy/u/jrouss)\
**Replies:** 1\
**Last updated:** [February 8, 2024, 3:49pm UTC](https://support.prodi.gy/t/nlp-span-categorization-compound-words-or-wordsstucktogetherlikethis/7080 "2024-02-08T15:49:41Z")

</div>

My intention is to convert loose messages about product leads and convert them into their categories. Let's say I have 3 categories: buy\_intent, product, price. Sometimes, messages turn into things like this: ltbbanana1…

---

## [Evaluation dataset + patterns](https://support.prodi.gy/t/evaluation-dataset-patterns/7026)

<div class="topic-metadata">

**Author:** [@nikolaysm](https://support.prodi.gy/u/nikolaysm)\
**Replies:** 1\
**Last updated:** [January 16, 2024, 3:54pm UTC](https://support.prodi.gy/t/evaluation-dataset-patterns/7026 "2024-01-16T15:54:46Z")

</div>

Hi there, I'm using ner.manual with patterns to recognize the company names in the text. prodigy ner.manual ner\_company\_names nl\_core\_news\_lg ./assets/raw\_text.jsonl --label ORG,PERSON --patterns ./assets/company\_name\_…

---

## [breaking down texts to sentences for textcat](https://support.prodi.gy/t/breaking-down-texts-to-sentences-for-textcat/6981)

<div class="topic-metadata">

**Author:** [@rwst](https://support.prodi.gy/u/rwst)\
**Replies:** 2\
**Last updated:** [December 13, 2023, 10:29am UTC](https://support.prodi.gy/t/breaking-down-texts-to-sentences-for-textcat/6981 "2023-12-13T10:29:36Z")

</div>

Hello, a short design question. I have text data that consists of possibly several sentences for each text, each text also having a unique ID. I want to a annotate / train / predict labels on the sentences of these texts…

---

## [Best practice for external LLM script to prodigy spancat import/launch](https://support.prodi.gy/t/best-practice-for-external-llm-script-to-prodigy-spancat-import-launch/6904)

<div class="topic-metadata">

**Author:** [@grahama](https://support.prodi.gy/u/grahama)\
**Replies:** 0\
**Last updated:** [November 18, 2023, 12:42pm UTC](https://support.prodi.gy/t/best-practice-for-external-llm-script-to-prodigy-spancat-import-launch/6904 "2023-11-18T12:42:33Z")

</div>

Hello. I’m very new to prodigy. I would like to import annotation data from my externally run lllm script directly into prodigy for correcting/re-labeling spans. So in my limited understanding, the pipeline would be LLM,…

---

## [Help! I have duplicates or missing data: Best practices on accounting for annotations](https://support.prodi.gy/t/help-i-have-duplicates-or-missing-data-best-practices-on-accounting-for-annotations/6704)

<div class="topic-metadata">

**Author:** [@ryanwesslen](https://support.prodi.gy/u/ryanwesslen)\
**Replies:** 6\
**Last updated:** [September 13, 2023, 12:34pm UTC](https://support.prodi.gy/t/help-i-have-duplicates-or-missing-data-best-practices-on-accounting-for-annotations/6704 "2023-09-13T12:34:45Z")

</div>

Scaling annotations can be really hard. More scale means more complexity, which can make accounting for all of those annotations challenging, time-consuming, overwhelming, error-prone, or even impractical. Unfortunately…

---

## [How to use the review recipe on two datasets from two different Jupyter notebooks](https://support.prodi.gy/t/how-to-use-the-review-recipe-on-two-datasets-from-two-different-jupyter-notebooks/6513)

<div class="topic-metadata">

**Author:** [@cw90](https://support.prodi.gy/u/cw90)\
**Replies:** 2\
**Last updated:** [May 3, 2023, 9:14am UTC](https://support.prodi.gy/t/how-to-use-the-review-recipe-on-two-datasets-from-two-different-jupyter-notebooks/6513 "2023-05-03T09:14:32Z")

</div>

Hello everyone, My colleague and I are running Prodigy in two different notebooks on Kubeflow and annotating a dataset in parallel. We now want to use the Prodigy review recipe to compare our work. How can we export a d…

---

## [NER review datasets with partial overlap while keeping all texts](https://support.prodi.gy/t/ner-review-datasets-with-partial-overlap-while-keeping-all-texts/6365)

<div class="topic-metadata">

**Author:** [@emiltj](https://support.prodi.gy/u/emiltj)\
**Replies:** 7\
**Last updated:** [February 20, 2023, 4:20pm UTC](https://support.prodi.gy/t/ner-review-datasets-with-partial-overlap-while-keeping-all-texts/6365 "2023-02-20T16:20:57Z")

</div>

Hi, I am looking for a way to review the NER tagging of two datasets that only partially overlap, while retaining the texts that do not overlap. Say I have two datasets, rater\_1 and rater\_2, and want to create a final\_…

---

## [Prodigy Case Study: Posh Custom Prodigy Cloud Service](https://support.prodi.gy/t/prodigy-case-study-posh-custom-prodigy-cloud-service/6371)

<div class="topic-metadata">

**Author:** [@ryanwesslen](https://support.prodi.gy/u/ryanwesslen)\
**Replies:** 0\
**Last updated:** [February 16, 2023, 7:05pm UTC](https://support.prodi.gy/t/prodigy-case-study-posh-custom-prodigy-cloud-service/6371 "2023-02-16T19:05:14Z")

</div>

We released our latest Prodigy :sparkles: case study featuring @cheyanneb. We discuss Posh's excellent cloud Prodigy annotation service for annotations for Posh's AI (chat bot) assistants. We discuss ways Posh customized…

---

## [Extending SpaCy models with Prodigy to use detect new entity types](https://support.prodi.gy/t/extending-spacy-models-with-prodigy-to-use-detect-new-entity-types/6350)

<div class="topic-metadata">

**Author:** [@rory-hurley-gds](https://support.prodi.gy/u/rory-hurley-gds)\
**Replies:** 1\
**Last updated:** [February 7, 2023, 7:29pm UTC](https://support.prodi.gy/t/extending-spacy-models-with-prodigy-to-use-detect-new-entity-types/6350 "2023-02-07T19:29:06Z")

</div>

Hello, Our team is building a model to perform NER. We would like to utilise SpaCy's existing NER models and categories, for example, spacy\_en\_core\_web\_lg, whilst introducing some new categories and excluding some pre-…

---

## [Can one leverage zero-shot classifiers for textcat tasks?](https://support.prodi.gy/t/can-one-leverage-zero-shot-classifiers-for-textcat-tasks/4885)

<div class="topic-metadata">

**Author:** [@davidefiocco](https://support.prodi.gy/u/davidefiocco)\
**Replies:** 3\
**Last updated:** [January 15, 2023, 8:42pm UTC](https://support.prodi.gy/t/can-one-leverage-zero-shot-classifiers-for-textcat-tasks/4885 "2023-01-15T20:42:18Z")

</div>

Hi! I understand that textcat.teach can use pattern-matching to bootstrap the labeling of (rare) classes in text classification tasks, but I would like to know your thoughts about using zero-shot classifiers (e.g. Huggin…

---

## [📺 Video: NER with Prodigy & Transfer Learning](https://support.prodi.gy/t/video-ner-with-prodigy-transfer-learning/2662)

<div class="topic-metadata">

**Author:** [@ines](https://support.prodi.gy/u/ines)\
**Replies:** 10\
**Last updated:** [January 9, 2023, 9:46am UTC](https://support.prodi.gy/t/video-ner-with-prodigy-transfer-learning/2662 "2023-01-09T09:46:26Z")

</div>

I recorded a new video :tada: In this video, I'm training a named entity recogntion model from scratch, using semi-automatic annotation with sense2vec vectors and improving a model in the loop, plus some cool transfer le…

---

## [Can you explain how exactly HashEmbed works ?](https://support.prodi.gy/t/can-you-explain-how-exactly-hashembed-works/564)

<div class="topic-metadata">

**Author:** [@shengc](https://support.prodi.gy/u/shengc)\
**Replies:** 9\
**Last updated:** [October 31, 2022, 8:50am UTC](https://support.prodi.gy/t/can-you-explain-how-exactly-hashembed-works/564 "2022-10-31T08:50:01Z")

</div>

try to understand the following snippet, and the rational behind it … nlp = spacy.blank('en') nlp.vocab.lex\_attr\_getters\[PREFIX\] = lambda string: string\[:3\] nlp.vocab.lex\_attr\_getters\[SUFFIX\] = lambda string…

---

## [Non binary active learning](https://support.prodi.gy/t/non-binary-active-learning/6015)

<div class="topic-metadata">

**Author:** [@nsorros](https://support.prodi.gy/u/nsorros)\
**Replies:** 2\
**Last updated:** [October 14, 2022, 1:35pm UTC](https://support.prodi.gy/t/non-binary-active-learning/6015 "2022-10-14T13:35:12Z")

</div>

Hey :wave: Just wanted to ask if there is a reason behind the default binary interface for active learning recipes like ner.teach? I assume this is to increase speed but I wonder whether in some cases its faster to be …

---

## [textcat.teach: how to exclude target dataset examples by hash, but auxiliary datasets by input?](https://support.prodi.gy/t/textcat-teach-how-to-exclude-target-dataset-examples-by-hash-but-auxiliary-datasets-by-input/5872)

<div class="topic-metadata">

**Author:** [@einarbmag](https://support.prodi.gy/u/einarbmag)\
**Replies:** 1\
**Last updated:** [August 23, 2022, 5:46pm UTC](https://support.prodi.gy/t/textcat-teach-how-to-exclude-target-dataset-examples-by-hash-but-auxiliary-datasets-by-input/5872 "2022-08-23T17:46:20Z")

</div>

Hi, here's what I'm trying to achieve: I've created a simple UI on top of prodigy for use in my team, and the workflow is typically that a user defines a labelling project with a number of textcat labels (can be exclus…

---

## [annotating special terms](https://support.prodi.gy/t/annotating-special-terms/5866)

<div class="topic-metadata">

**Author:** [@fsa](https://support.prodi.gy/u/fsa)\
**Replies:** 2\
**Last updated:** [August 17, 2022, 2:28pm UTC](https://support.prodi.gy/t/annotating-special-terms/5866 "2022-08-17T14:28:12Z")

</div>

Hi, I have special scientific data to annotate using prodigy. The difference with other data is that the annotated terms are mixed of letters and numbers and can appear in different written format e.g., word word "Ex00…

---

## [maximum video size for annotation](https://support.prodi.gy/t/maximum-video-size-for-annotation/5864)

<div class="topic-metadata">

**Author:** [@mel0d1an](https://support.prodi.gy/u/mel0d1an)\
**Replies:** 1\
**Last updated:** [August 17, 2022, 6:35am UTC](https://support.prodi.gy/t/maximum-video-size-for-annotation/5864 "2022-08-17T06:35:58Z")

</div>

Hi team! I need to annotate the video, but I faced the problem that the maximum size of the video file that I upload is about 15 mb, is it possible to increase the size of the uploaded video file? When I try to upload a …

---

## [Extracting data from PDFs using prodigy](https://support.prodi.gy/t/extracting-data-from-pdfs-using-prodigy/5619)

<div class="topic-metadata">

**Author:** [@kgodonoghue](https://support.prodi.gy/u/kgodonoghue)\
**Replies:** 2\
**Last updated:** [June 24, 2022, 4:56pm UTC](https://support.prodi.gy/t/extracting-data-from-pdfs-using-prodigy/5619 "2022-06-24T16:56:46Z")

</div>

Hi, interested in thoughts for how best to get PDF documents into a format that will work best for extraction of data, what is the best format to get the PDF documents into? Json or spacy format or other, any inputs appr…

---

## [Comprehensive guide or course to model finetuning/training results](https://support.prodi.gy/t/comprehensive-guide-or-course-to-model-finetuning-training-results/5733)

<div class="topic-metadata">

**Author:** [@joe](https://support.prodi.gy/u/joe)\
**Replies:** 2\
**Last updated:** [June 23, 2022, 9:02pm UTC](https://support.prodi.gy/t/comprehensive-guide-or-course-to-model-finetuning-training-results/5733 "2022-06-23T21:02:30Z")

</div>

Hi, it seems there's a lot of great advice hiding in individual threads, but I just wish the information was a little more consolidated -- perhaps a guide of some sort that can give me a rough idea of what effect changin…

---

## [understanding the different terminology in the command line output of a training pipeline](https://support.prodi.gy/t/understanding-the-different-terminology-in-the-command-line-output-of-a-training-pipeline/5719)

<div class="topic-metadata">

**Author:** [@nanyasrivastav](https://support.prodi.gy/u/nanyasrivastav)\
**Replies:** 2\
**Last updated:** [June 20, 2022, 9:37pm UTC](https://support.prodi.gy/t/understanding-the-different-terminology-in-the-command-line-output-of-a-training-pipeline/5719 "2022-06-20T21:37:22Z")

</div>

Hi, just a quick question regarding what the different columns of a training pipeline mean. I'm new to NLP and have been searching for resources to understand basic concepts. For instance, I was wondering what the follow…

---

## [what to do if train-curve shows slight decrease in last sample](https://support.prodi.gy/t/what-to-do-if-train-curve-shows-slight-decrease-in-last-sample/4306)

<div class="topic-metadata">

**Author:** [@mumud123](https://support.prodi.gy/u/mumud123)\
**Replies:** 6\
**Last updated:** [June 8, 2022, 4:57pm UTC](https://support.prodi.gy/t/what-to-do-if-train-curve-shows-slight-decrease-in-last-sample/4306 "2022-06-08T16:57:56Z")

</div>

I'm creating a new dataset, and so far I made about 500 annotations. I ran the train-curve command, and the score decreased from 0.3 to 0.29 in the last sample. What should I do at this point to make sure I don't annotat…

---

## [Splitting bigger documents for NER](https://support.prodi.gy/t/splitting-bigger-documents-for-ner/5496)

<div class="topic-metadata">

**Author:** [@oschulzSam](https://support.prodi.gy/u/oschulzSam)\
**Replies:** 1\
**Last updated:** [March 30, 2022, 10:55am UTC](https://support.prodi.gy/t/splitting-bigger-documents-for-ner/5496 "2022-03-30T10:55:33Z")

</div>

Hi, My team is using Prodigy to label and train a Named Entity Recognizer, and we have a couple of questions about it. We have documents, 5-20 pages, we would use around 8 new Entities and a LOC Entity from de\_core\_news…

---

## [Best Approach for My Project](https://support.prodi.gy/t/best-approach-for-my-project/5411)

<div class="topic-metadata">

**Author:** [@mauro\_svl](https://support.prodi.gy/u/mauro_svl)\
**Replies:** 3\
**Last updated:** [March 10, 2022, 6:34am UTC](https://support.prodi.gy/t/best-approach-for-my-project/5411 "2022-03-10T06:34:00Z")

</div>

Hello, I am working on a project that involves company names from all over the world as text. We basically want to define a pipeline in Spacy that includes cleaning such as removal of accents, removal of special charac…

[Next page](https://support.prodi.gy/tag/best-practices/32.md?match_all_tags=true&page=1&tags%5B%5D=best-practices)
