Skip to main content

Use fast UDPipe models directly in spaCy

Project description

spaCy + UDPipe

This package wraps the fast and efficient UDPipe language-agnostic NLP pipeline (via its Python bindings), so you can use UDPipe pre-trained models as a spaCy pipeline for 50+ languages out-of-the-box. Inspired by spacy-stanfordnlp, this package offers slightly less accurate models that are in turn much faster (see benchmarks for UDPipe and StanfordNLP).

Installation

Use the package manager pip to install spacy-udpipe.

pip install spacy-udpipe

After installation, use spacy_udpipe.download(lang) to download the pre-trained model for the desired language.

Usage

The loaded UDPipeLanguage class returns a spaCy Language object, i.e., the nlp object you can use to process text and create a Doc object.

import spacy_udpipe

spacy_udpipe.download("en") # download English model

text = "Wikipedia is a free online encyclopedia, created and edited by volunteers around the world."
nlp = spacy_udpipe.load("en")

doc = nlp(text)
for token in doc:
    print(token.text, token.lemma_, token.pos_, token.dep_)

As all attributes are computed once and set in the custom Tokenizer, the nlp.pipeline is empty.

Authors and acknowledgment

Created by Antonio Šajatović during an internship at Text Analysis and Knowledge Engineering Lab (TakeLab).

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

Tests are run automatically for each pull request on the master branch. To start the tests locally, just run pytest in the root source directory.

License

MIT © TakeLab

Project status

Maintained by Text Analysis and Knowledge Engineering Lab (TakeLab).

Notes

  • All available pre-trained models are licensed under CC BY-NC-SA 4.0.

  • All annotations match with Spacy's, except for token.tag_, which map from CoNLL XPOS tag (language-specific part-of-speech tag), defined for each language separately by the corresponding Universal Dependencies treebank.

  • Full list of supported languages and models is available in languages.json.

  • This package exposes a spacy_languages entry point in its setup.py so full suport for serialization is enabled:

    nlp = spacy_udpipe.load("en")
    nlp.to_disk("./udpipe-spacy-model")
    

    To properly load a saved model, you must pass the udpipe_model argument when loading it:

    udpipe_model = spacy_udpipe.UDPipeModel("en")
    nlp = spacy.load("./udpipe-spacy-model", udpipe_model=udpipe_model)
    

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

spacy-udpipe-0.1.0.tar.gz (11.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

spacy_udpipe-0.1.0-py3-none-any.whl (10.5 kB view details)

Uploaded Python 3

File details

Details for the file spacy-udpipe-0.1.0.tar.gz.

File metadata

  • Download URL: spacy-udpipe-0.1.0.tar.gz
  • Upload date:
  • Size: 11.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.40.2 CPython/3.6.9

File hashes

Hashes for spacy-udpipe-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e86e6f8cf36bbcdfdce3b1c9cad9740509a6bcbd002c017934d81dc19760817a
MD5 3e61516767f8176435fa4c917634497c
BLAKE2b-256 2631fda3df813cbb75355bb0b6ec2f77daf2b960f7abae9f8ec38520a05cfc3d

See more details on using hashes here.

File details

Details for the file spacy_udpipe-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: spacy_udpipe-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 10.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.40.2 CPython/3.6.9

File hashes

Hashes for spacy_udpipe-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d8cf37e7d0ee179c8613468e9dbfb9efae7b787c18587fbede2704ea4d1bb9ca
MD5 6dbb27b67fd5d876f536e6e28cf954fe
BLAKE2b-256 53eadc89025c7f0ed8e6d7fd11893e53eddb53ecb20c017f8ffba4a11eea64ef

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page