Could not broadcast input array from shape (96) into shape (128)

Specs:
Python 3.7.3
Spacy 2.0.18
Thinc 6.12.1
Prodigy 1.7.1

I have downloaded and installed Prodigy 1.7.1

I have created an initial dataset using

python -m prodigy dataset airports "Airport Dataset" --author "Rey Garcia"

Then I attempted to create a terms dataset (I realize these are probably too long for terms so I tried it with a single term “airport” but it still didn’t work)

###Input

python -m prodigy terms.teach airport_terms en_core_web_lg --seeds "Austin-Bergstrom International Airport, Los Angeles International Airport, Denver International Airport"
Initialising with 3 seed terms: Denver International Airport, Los Angeles International Airport, Austin-Bergstrom International Airport

###Output

Traceback (most recent call last):
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\prodigy\__main__.py", line 331, in <module>
    controller = recipe(*args, use_plac=True)
  File "cython_src\prodigy\core.pyx", line 211, in prodigy.core.recipe.recipe_decorator.recipe_proxy
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\plac_core.py", line 328, in call
    cmd, result = parser.consume(arglist)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\plac_core.py", line 207, in consume
    return cmd, self.func(*(args + varargs + extraopts), **kwargs)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\prodigy\recipes\terms.py", line 134, in teach
    nlp = spacy.load(vectors)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\spacy\__init__.py", line 21, in load
    return util.load_model(name, **overrides)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\spacy\util.py", line 114, in load_model
    return load_model_from_package(name, **overrides)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\spacy\util.py", line 135, in load_model_from_package
    return cls.load(**overrides)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\en_core_web_lg\__init__.py", line 12, in load
    return load_model_from_init_py(__file__, **overrides)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\spacy\util.py", line 173, in load_model_from_init_py
    return load_model_from_path(data_path, meta, **overrides)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\spacy\util.py", line 156, in load_model_from_path
    return nlp.from_disk(model_path)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\spacy\language.py", line 647, in from_disk
    util.from_disk(path, deserializers, exclude)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\spacy\util.py", line 511, in from_disk
    reader(path / key)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\spacy\language.py", line 643, in <lambda>
    deserializers[name] = lambda p, proc=proc: proc.from_disk(p, vocab=False)
  File "pipeline.pyx", line 643, in spacy.pipeline.Tagger.from_disk
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\spacy\util.py", line 511, in from_disk
    reader(path / key)
  File "pipeline.pyx", line 626, in spacy.pipeline.Tagger.from_disk.load_model
  File "pipeline.pyx", line 627, in spacy.pipeline.Tagger.from_disk.load_model
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\thinc\neural\_classes\model.py", line 352, in from_bytes
    copy_array(dest, param[b'value'])
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\thinc\neural\util.py", line 70, in copy_array
    dst[:] = src
ValueError: could not broadcast input array from shape (96) into shape (128)

Then I thought well I will just provide a dataset and manually annotate
###Input

python -m prodigy ner.manual airports training_data.jsonl --label AIRPORT

###Output

Using 1 labels: AIRPORT
Traceback (most recent call last):
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\prodigy\__main__.py", line 331, in <module>
    controller = recipe(*args, use_plac=True)
  File "cython_src\prodigy\core.pyx", line 211, in prodigy.core.recipe.recipe_decorator.recipe_proxy
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\plac_core.py", line 328, in call
    cmd, result = parser.consume(arglist)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\plac_core.py", line 207, in consume
    return cmd, self.func(*(args + varargs + extraopts), **kwargs)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\prodigy\recipes\ner.py", line 183, in manual
    nlp = spacy.load(spacy_model)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\spacy\__init__.py", line 21, in load
    return util.load_model(name, **overrides)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\spacy\util.py", line 114, in load_model
    return load_model_from_package(name, **overrides)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\spacy\util.py", line 135, in load_model_from_package
    return cls.load(**overrides)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\en_core_web_lg\__init__.py", line 12, in load
    return load_model_from_init_py(__file__, **overrides)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\spacy\util.py", line 173, in load_model_from_init_py
    return load_model_from_path(data_path, meta, **overrides)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\spacy\util.py", line 156, in load_model_from_path
    return nlp.from_disk(model_path)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\spacy\language.py", line 647, in from_disk
    util.from_disk(path, deserializers, exclude)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\spacy\util.py", line 511, in from_disk
    reader(path / key)
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\spacy\language.py", line 643, in <lambda>
    deserializers[name] = lambda p, proc=proc: proc.from_disk(p, vocab=False)
  File "pipeline.pyx", line 643, in spacy.pipeline.Tagger.from_disk
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\spacy\util.py", line 511, in from_disk
    reader(path / key)
  File "pipeline.pyx", line 626, in spacy.pipeline.Tagger.from_disk.load_model
  File "pipeline.pyx", line 627, in spacy.pipeline.Tagger.from_disk.load_model
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\thinc\neural\_classes\model.py", line 352, in from_bytes
    copy_array(dest, param[b'value'])
  File "C:\Users\Rey\Anaconda3\envs\Python-3.7\lib\site-packages\thinc\neural\util.py", line 70, in copy_array
    dst[:] = src
ValueError: could not broadcast input array from shape (96) into shape (128)

Any help would be really appriciated.

Nvm, I realized since I installed Prodigy. It downgraded Spacy to 2.0.x and my pretrained model was for version 2.1.x. After downloading a model for 2.0 it works perfectly.

1 Like

Thanks for updating – and yes, errors like that usually indicate a model incompatibility. We’re currently testing Prodigy with v2.1, but we want to make sure everything works and is compatible, because the upgrade means that every user will have to retrain their models, and previously trained models become incompatible.