Table of Contents
extra-model
This project is archived. Version 1.0.0 is the final release. The repository is read-only and will receive no further updates, bug fixes or security patches.
1.0.0 requires Python 3.12 or 3.13 and pins the
en_core_web_sm3.8.0 spacy pipeline. Python 3.14 is not supported:gensimandspacy, both of whichextra-modeldepends on, ship no wheels for it.
Code to run the Extra algorithm for the unsupervised topic/aspect extraction on English texts.
Read the Official Documentation here
Quick start
IMPORTANT:
- When running Extra inside docker-container, make sure that Docker process has enough resources. For example, on Mac/Windows it should have at least 8 Gb of RAM available to it. Read More about RAM Requirements
- GitHub repo does not come with Glove Embeddings. See section
Downloading Embeddingsfor how to download the required embeddings.
Using docker compose
This is a preferred way to run extra-model.
You can find instructions on how to run extra-model using CLI or as a Python package here
First, build the image:
docker compose build
Then, run following command to make sure that extra-model was installed correctly:
docker compose run test
Downloading Embeddings
Next step is to download the embeddings (we use Glove from Stanford in this project).
To download the required embeddings, run the following command:
docker compose run --rm setup
The embeddings will be downloaded, unzipped and formatted into a space-efficient format. Files will be saved in the embeddings/ directory in the root of the project directory. If the process fails, it can be safely restarted. If you want to restart the process with new files, delete all files except README.md in the embeddings/ directory.
[Optional] Run docker compose build again
After you've downloaded the embeddings, you may want to run docker compose build again.
This will build an image with embeddings already present inside the image.
The tradeoff here is that the image will be much bigger, but you won't spend ~2 minutes each time you run extra-model waiting for embeddings to be mounted into the container.
On the other hand, building an image with embeddings in the context will increase build time from ~3 minutes to ~10 minutes.
Run extra-model
Finally, running extra-model is as simple as:
docker compose run extra-model /package/tests/resources/100_comments.csv
NOTE: when using this approach, input file should be mounted inside the container.
By default, everything from extra-model folder will be mounted to /package/ folder.
This can be changed in docker-compose.yaml
This will produce a result.csv file in /io/ (default setting) folder.
There are multiple flags you can set to change input/outputs of extra. You can find them by running:
docker compose run extra-model --help
Learn more
Our official documentation is the best place to continue learning about extra-model:
- Explanation of inputs/outputs
- Step-by-step workflow of what happens inside of
extra-model - Examples of how
extra-modelcan be used in downstream applications - Detailed explanation of how to run
extra-modelusing different interfaces (viadocker compose, via CLI, as a Python package).
Authors
extra-model was written by mbalyasin@wayfair.com, mmozer@wayfair.com.
Metadata
Release files for extra-model 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| extra_model-1.0.0.tar.gz | 36.8 kB | Without provenance | Details for extra_model-1.0.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| extra_model-1.0.0-py3-none-any.whl | Python 3 | none | any | Details for extra_model-1.0.0-py3-none-any.whl |
Total release size: 65.8 kB
Release files / extra_model-1.0.0.tar.gz
| Download URL | extra_model-1.0.0.tar.gz |
|---|---|
| Size | 36.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d02ff67bba6a1245b24b19638c98e81b7dd7059b4a99917d8efb31452b78ec92
|
|
BLAKE2b-256 checksum How to use checksums |
ba0b9f23b0b3048a82ed0bd784e9bfc5ef549aabedd5a664888893a6abcd6944
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / extra_model-1.0.0-py3-none-any.whl
| Download URL | extra_model-1.0.0-py3-none-any.whl |
|---|---|
| Size | 29.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d5b49c13871eb1383b7107a6dbe965def928f6b8360bdb581dac8b016730deea
|
|
BLAKE2b-256 checksum How to use checksums |
b0933063795581a75135d5f974d74dd7cfecbff975e1496c413acb31ebec316c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Security for extra-model 1.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.