ImportError: cannot import name 'SentenceSegmenter' from 'spacy.pipeline'
Version de Spacy : 3.2.1
Je sais que cette classe est destinée à une version antérieure de Spacy, mais y aurait-il quelque chose de similaire pour cette version de Spacy ?
ImportError: cannot import name 'SentenceSegmenter' from 'spacy.pipeline'
Version de Spacy : 3.2.1
Je sais que cette classe est destinée à une version antérieure de Spacy, mais y aurait-il quelque chose de similaire pour cette version de Spacy ?
Il existe plusieurs méthodes pour effectuer la segmentation des phrases dans l'espace. Vous pouvez les découvrir dans la documentation ici : https://spacy.io/usage/linguistic-features#sbd .
Cet exemple est copié tel quel à partir de la documentation, montrant comment segmenter des phrases sur la base d'un modèle de langue anglaise.
import spacy
nlp = spacy.load("en_core_web_sm")
doc = nlp("This is a sentence. This is another sentence.")
assert doc.has_annotation("SENT_START")
for sent in doc.sents:
print(sent.text)
Vous pouvez également utiliser celle basée sur des règles pour effectuer un découpage de la ponctuation basé uniquement sur la langue, comme suit (également tiré de la documentation) :
import spacy
from spacy.lang.en import English
nlp = English() # just the language with no pipeline
nlp.add_pipe("sentencizer")
doc = nlp("This is a sentence. This is another sentence.")
for sent in doc.sents:
print(sent.text)
Cela devrait fonctionner pour spacy 3.0.5
et plus.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.