Metadata-Version: 2.1
Name: weasel
Version: 0.1.0rc0
Summary: Weasel: A small and easy workflow system
Home-page: https://github.com/explosion/weasel/
Author: Explosion
Author-email: contact@explosion.ai
License: MIT
Project-URL: Release notes, https://github.com/explosion/weasel/releases
Project-URL: Source, https://github.com/explosion/weasel/
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: Microsoft :: Windows
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Scientific/Engineering
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: confection (<0.1.0,>=0.0.4)
Requires-Dist: packaging (>=20.0)
Requires-Dist: wasabi (<1.2.0,>=0.9.1)
Requires-Dist: srsly (<3.0.0,>=2.4.3)
Requires-Dist: catalogue (<2.1.0,>=2.0.6)
Requires-Dist: typer (<0.8.0,>=0.3.0)
Requires-Dist: pathy (>=0.10.0)
Requires-Dist: requests (<3.0.0,>=2.13.0)
Requires-Dist: pydantic (!=1.8,!=1.8.1,<1.11.0,>=1.7.4)

<a href="https://explosion.ai"><img src="https://explosion.ai/assets/img/logo.svg" width="125" height="125" align="right" /></a>

# Weasel: A small and easy workflow system

Weasel lets you manage and share **end-to-end workflows** for
different **use cases and domains**, and orchestrate training, packaging and
serving your custom pipelines. You can start off by cloning a pre-defined
project template, adjust it to fit your needs, load in your data, train a
pipeline, export it as a Python package, upload your outputs to a remote storage
and share your results with your team. Weasel can be used via the
[`weasel`](docs/cli.md) command and we provide templates in our
[`projects`](https://github.com/explosion/projects) repo.

![Illustration of project workflow and commands](docs/assets/images/projects.svg)

## :bulb: Example: Get started with a project template

The easiest way to get started is to clone a project template and run it – for
example, this [end-to-end template](https://github.com/explosion/projects/tree/v3/pipelines/tagger_parser_ud)
that lets you train a spaCy **part-of-speech
tagger** and **dependency parser** on a Universal Dependencies treebank.

```shell
python -m weasel clone pipelines/tagger_parser_ud
```

> **Note**
>
> Our [`projects`](https://github.com/explosion/projects) repo includes various
> project templates for different NLP tasks, models, workflows and integrations
> that you can clone and run. The easiest way to get started is to pick a
> template, clone it and start modifying it!

## :closed_book: Documentation

Get started with the documentation:

- [Learn how to create a Weasel workflow](docs/tutorial/workflow.md)
- [Working with directory and assets](docs/tutorial/directory-and-assets.md)
- [Running custom scripts](docs/tutorial/custom-scripts.md)
- [Using remote storage](docs/tutorial/remote-storage.md)
- [Weasel integrations](docs/tutorial/integrations.md)
- [Command line interface description](docs/cli.md)

## Migrating from spaCy Projects

Weasel is a standalone replacement for spaCy Projects.
There are a few backward incompatibilities that you should be aware of:

- The `SPACY_CONFIG_OVERRIDES` environment variable is no longer checked.
  You can set configuration overrides using `WEASEL_CONFIG_OVERRIDES`.
- Support for the `spacy_version` configuration key has been dropped.
- Support for `SPACY_PROJECT_USE_GIT_VERSION` environment variable has been dropped.
- Error codes are now Weasel-specific, and do not follow spaCy error codes.

Weasel checks for the first three incompatibilities and will issue a
warning if you're using it with spaCy-specific configuration options.
