Home › Fóruns › Fórum Processamento de Linguagem Natural com spaCy e Python › Processamento de Linguagem Natural com Spacy – erro de versão
- Este tópico contém 4 respostas, 3 vozes e foi atualizado pela última vez 3 anos, 2 meses atrás por Jones Granatyr.
- AutorPosts
- 11 de julho de 2021 às 10:03 #29660
sBom dia!
Estou com problema na versão da spacy. Pela aula, devo usar a versão 2.2.1 e a minha é mais recente, versão 3. Já tentei desinstalar de várias maneiras para instalar a anterior mas não tive sucesso. E não consigo seguir com a aula pois ocorre erro na criação do classificador. Como faço para corrigir isso? Obrigado!
modelo = spacy.blank('pt') categorias = modelo.create_pipe('textcat') categorias.add_label("ALEGRIA") categorias.add_label("TRISTEZA") modelo.add_pipe(categorias) historico = []
—————————————————————————
ValueError Traceback (most recent call last)
<ipython-input-16-993ea01d8549> in <module>
6 categorias.add_label(“DESGOSTO”)
7 categorias.add_label(“MEDO”)
—-> 8 modelo.add_pipe(categorias)
9 historico = []~\Anaconda3\lib\site-packages\spacy\language.py in add_pipe(self, factory_name, name, before, after, first, last, source, config, raw_config, validate)
756 bad_val = repr(factory_name)
757 err = Errors.E966.format(component=bad_val, name=name)
–> 758 raise ValueError(err)
759 name = name if name is not None else factory_name
760 if name in self.component_names:ValueError: [E966]
nlp.add_pipe
now takes the string name of the registered component factory, not a callable component. Expected string, but got <spacy.pipeline.textcat.TextCategorizer object at 0x00000275AC8E4708> (name: ‘None’).– If you created your component with
nlp.create_pipe('name')
: remove nlp.create_pipe and callnlp.add_pipe('name')
instead.– If you passed in a component like
TextCategorizer()
: callnlp.add_pipe
with the string name instead, e.g.nlp.add_pipe('textcat')
.– If you’re using a custom component: Add the decorator
@Language.component
(for function components) or@Language.factory
(for class components / factories) to your custom component and assign it a name, e.g.@Language.component('your_name')
. You can then runnlp.add_pipe('your_name')
to add it to the pipeline.- Este tópico foi modificado 3 anos, 3 meses atrás por MARCO AZEVEDO.
15 de julho de 2021 às 22:55 #29779Olá Marco, digite os comandos abaixo:
!pip uninstall spacy !pip install spacy==2.2.3
Fabio
17 de julho de 2021 às 22:33 #29802Boa noite Fabio! Obrigado pelo retorno.
Eu estava usando justamente os comandos que você sugeriu. Mas, durante essa semana, percebi que teria que excluir também as bibliotecas dos pacotes em português e inglês. Fiz e deu tudo certo. Consegui implementar e executar o código.
18 de julho de 2021 às 19:19 #29804Olá Marco, que bom que deu certo 😉
Fabio
13 de agosto de 2021 às 09:50 #30057Eu tenho o mismo problema, será que tem alguma dica pra usar a versão 3 e não a 2?
- AutorPosts
- Você deve fazer login para responder a este tópico.