                  # currently, the context is the same for each entity in a sentence (should be refined)
                  context_encoding = context_encodings[i]
                  for ent in doc.ents:
                      entity_count += 1
                      type_vector = [0 for i in range(len(type_to_int))]
                      if len(type_to_int) > 0:
                          type_vector[type_to_int[ent.label_]] = 1
  
                      candidates = self.kb.get_candidates(ent.text)
                      if not candidates:
                          final_kb_ids.append(self.NIL)  # no prediction possible for this entity
                          final_tensors.append(context_encoding)
 
</s> remove         type_to_int = self.cfg.get("type_to_int", dict())

 </s> add  </s> remove                 for kb_id, value in kb_dict.items():
                    entity_encoding = self.kb.get_vector(kb_id)
                    prior_prob = self.kb.get_prior_prob(kb_id, mention)

                    gold_ent = ents_by_offset["{}_{}".format(start, end)]
                    if gold_ent is None:
                        raise RuntimeError(Errors.E147.format(method="update", msg="gold entity not found"))
 </s> add  </s> remove                     type_vector = [0 for i in range(len(type_to_int))]
                    if len(type_to_int) > 0:
                        type_vector[type_to_int[gold_ent.label_]] = 1

                    # store data
                    entity_encodings.append(entity_encoding)
                    context_docs.append(doc)
                    type_vectors.append(type_vector)

                    if self.cfg.get("prior_weight", 1) > 0:
                        priors.append([prior_prob])
                    else:
                        priors.append([0])
 </s> add                 for kb_id, value in kb_dict.items():
                    # Currently only training on the positive instances
                    if value:
                        context_docs.append(doc) </s> remove                         # this will set the prior probabilities to 0 (just like in training) if their weight is 0
                        prior_probs = xp.asarray([[c.prior_prob] for c in candidates])
                        prior_probs *= self.cfg.get("prior_weight", 1)
 </s> add                         # this will set all prior probabilities to 0 if they should be excluded from the model
                        prior_probs = xp.asarray([c.prior_prob for c in candidates])
                        if not self.cfg.get("incl_prior", True):
                            prior_probs = xp.asarray([[0.0] for c in candidates])
                  # currently, the context is the same for each entity in a sentence (should be refined)
                  context_encoding = context_encodings[i]
                  for ent in doc.ents:
                      entity_count += 1



  
                      candidates = self.kb.get_candidates(ent.text)
                      if not candidates:
                          final_kb_ids.append(self.NIL)  # no prediction possible for this entity
                          final_tensors.append(context_encoding)
keep keep keep keep replace replace replace keep keep keep keep keep
 CLI scripts for entity linking (wikipedia & generic) (#4091)

* document token ent_kb_id

* document span kb_id

* update pipeline documentation

* prior and context weights as bool's instead

* entitylinker api documentation

* drop for both models

* finish entitylinker documentation

* small fixes

* documentation for KB

* candidate documentation

* links to api pages in code

* small fix

* frequency examples as counts for consistency

* consistent documentation about tensors returned by predict

* add entity linking to usage 101

* add entity linking infobox and KB section to 101

* entity-linking in linguistic features

* small typo corrections

* training example and docs for entity_linker

* predefined nlp and kb

* revert back to similarity encodings for simplicity (for now)

* set prior probabilities to 0 when excluded

* code clean up

* bugfix: deleting kb ID from tokens when entities were removed

* refactor train el example to use either model or vocab

* pretrain_kb example for example kb generation

* add to training docs for KB + EL example scripts

* small fixes

* error numbering

* ensure the language of vocab and nlp stay consistent across serialization

* equality with =

* avoid conflict in errors file

* add error 151

* final adjustements to the train scripts - consistency

* update of goldparse documentation

* small corrections

* push commit

* turn kb_creator into CLI script (wip)

* proper parameters for training entity vectors

* wikidata pipeline split up into two executable scripts

* remove context_width

* move wikidata scripts in bin directory, remove old dummy script

* refine KB script with logs and preprocessing options

* small edits

* small improvements to logging of EL CLI script 
spacy/pipeline/pipes.pyx