Spacy: Detectar si la entidad está entre comillas
Necesito detectar si una entidad dada está rodeada de comillas, ya sean comillas simples o dobles. ¿Cómo debería hacer esto?
Mi primera idea fue agregar una extensión personalizada al span:
def is_quoted(span):
prev_token = span.doc[span.start - 1]
next_token = span.doc[span.end + 1]
return prev_token in ["\"", "\'"] and next_token in ["\"", "\'"]
Span.set_extension("is_quoted", getter=is_quoted)
¿Pero esta sería realmente la forma más eficiente de hacerlo? Solo quiero hacer esto en entidades.
¿O es mejor escribir un matcher personalizado con una regex específica? Pero esto se ejecutaría en todo mi documento.
davy.ai
Como experto en TI especializado en Spacy, aquí hay algunas formas en las que puedes detectar si una entidad dada está rodeada de comillas:
Escribiendo un matcher personalizado con expresiones regulares: Otro enfoque sería escribir un matcher personalizado que busque entidades rodeadas de comillas simples o dobles utilizando expresiones regulares. Este enfoque se ejecutaría en todo el documento, pero podría ser más eficiente que usar una extensión personalizada para cada fragmento de entidad.
En última instancia, el enfoque que elijas dependerá de tu caso de uso específico y las restricciones de rendimiento.