  
      def add_entity(self, unicode entity_id, float prob, vectors=None, features=None):
          cdef hash_t id_hash = self.strings.add(entity_id)
  
          # Return if this entity was added before
          if id_hash in self._entry_index:
              user_warning("Entity " + entity_id + " already exists in the KB")
 
</s> remove         """For a given alias, add its potential entities and prior probabilies to the KB."""
 </s> add         """
        For a given alias, add its potential entities and prior probabilies to the KB.
        Return the alias_hash at the end
        """ </s> remove     def get_entity_name(self, KnowledgeBase kb):
        return kb.strings[self.entity_hash]
 </s> add     property kb_id_:
        """RETURNS (unicode): ID of this entity in the KB"""
        def __get__(self):
            return self.kb.strings[self.entity_hash]

    property kb_id:
        """RETURNS (uint64): hash of the entity's KB ID"""
        def __get__(self):
            return self.entity_hash

    property alias_:
        """RETURNS (unicode): ID of the original alias"""
        def __get__(self):
            return self.kb.strings[self.alias_hash]
        """
        Add an entity to the KB.
        Return the hash of the entity ID at the end
        """
  
      def add_entity(self, unicode entity_id, float prob, vectors=None, features=None):
        """
        Add an entity to the KB.
        Return the hash of the entity ID at the end
        """
          cdef hash_t id_hash = self.strings.add(entity_id)
  
          # Return if this entity was added before
          if id_hash in self._entry_index:
              user_warning("Entity " + entity_id + " already exists in the KB")
keep add keep keep keep keep keep
 property getters and keep track of KB internally 
spacy/kb.pyx