GLiNER_file / gliner_file.py
Olivier CARON
Update gliner_file.py
d3bad20 verified
from gliner import GLiNER
def run_ner(model, text, labels_list, threshold=0.4):
entities = model.predict_entities(text, labels_list, threshold=threshold)
# Loading the GLiNER model
model = GLiNER.from_pretrained("urchade/gliner_multi-v2.1")
model.eval() # Put the model in evaluation mode
# Initializing the dictionary to store the results
ner_results = {label: [] for label in labels_list}
# Iterating over the recognized entities and storing them in the dictionary
for entity in entities:
if entity['label'] in ner_results:
# Adds the entity's text to the corresponding list for the label
ner_results[entity['label']].append(entity['text'])
return ner_results