Metadata-Version: 2.3
Name: autointent
Version: 0.3.0
Summary: A tool for automatically configuring a text classification pipeline for intent prediction.
Keywords: nlp,dialog-systems,transformers,auto-ml
Author: Alexeev Ilya, Kuznetsov Denis
Author-email: Alexeev Ilya <ilya_alekseev_2016@list.ru>, Kuznetsov Denis <kuznetsov.den.p@gmail.com>
License: Apache 2.0
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: Natural Language :: English
Classifier: Natural Language :: Russian
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: Microsoft :: Windows
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Text Processing :: Linguistic
Classifier: Topic :: Utilities
Classifier: Framework :: Pytest
Classifier: Framework :: Sphinx
Classifier: Typing :: Typed
Requires-Dist: torch>=2.0.0,<3.0.0
Requires-Dist: scikit-learn>=1.5,<2.0
Requires-Dist: scikit-multilearn==0.2.0
Requires-Dist: appdirs>=1.4,<2.0
Requires-Dist: optuna>=4.0.0,<5.0.0
Requires-Dist: pathlib>=1.0.1,<2.0.0
Requires-Dist: pydantic>=2.10.5,<3.0.0
Requires-Dist: faiss-cpu>=1.9.0,<2.0.0
Requires-Dist: datasets>=3.2.0,<5.0.0
Requires-Dist: xxhash>=3.5.0,<4.0.0
Requires-Dist: python-dotenv>=1.0.1,<2.0.0
Requires-Dist: aiometer>=1.0.0,<2.0.0
Requires-Dist: aiofiles>=24.1.0,<25.0.0
Requires-Dist: threadpoolctl>=3.0.0,<4.0.0
Requires-Dist: catboost>=1.2.8,<2.0.0 ; extra == 'catboost'
Requires-Dist: codecarbon==3.0.0 ; extra == 'codecarbon'
Requires-Dist: pynvml>=8.0.4,<12.0.0 ; extra == 'codecarbon'
Requires-Dist: dspy>=2.6.5,<3.0.0 ; extra == 'dspy'
Requires-Dist: fastapi>=0.115,<1.0 ; extra == 'fastapi'
Requires-Dist: uvicorn>=0.24,<1.0 ; extra == 'fastapi'
Requires-Dist: pydantic-settings>=2.0,<3.0 ; extra == 'fastapi'
Requires-Dist: pydantic-settings>=2.0,<3.0 ; extra == 'fastmcp'
Requires-Dist: fastmcp>=2.11.3,<3.0 ; extra == 'fastmcp'
Requires-Dist: openai>=2,<3 ; extra == 'openai'
Requires-Dist: tiktoken>=0.7,<1 ; extra == 'openai'
Requires-Dist: opensearch-py>=3.0.0,<4.0.0 ; extra == 'opensearch'
Requires-Dist: peft>=0.10.0,!=0.15.0,!=0.15.1,<1.0.0 ; extra == 'peft'
Requires-Dist: sentence-transformers>=3,<4 ; extra == 'sentence-transformers'
Requires-Dist: transformers[torch]>=4.49.0,<5.0.0 ; extra == 'transformers'
Requires-Dist: vllm>=0.20.0 ; extra == 'vllm'
Requires-Dist: wandb>=0.19.10,<1.0.0 ; extra == 'wandb'
Maintainer: Alexeev Ilya, Solomatin Roman
Maintainer-email: Alexeev Ilya <ilya_alekseev_2016@list.ru>, Solomatin Roman <risolomatin@gmail.com>
Requires-Python: >=3.10, <3.15
Project-URL: Documentation, https://deeppavlov.github.io/AutoIntent/
Project-URL: Homepage, https://deeppavlov.github.io/AutoIntent/
Project-URL: Repository, https://github.com/deeppavlov/AutoIntent
Provides-Extra: catboost
Provides-Extra: codecarbon
Provides-Extra: dspy
Provides-Extra: fastapi
Provides-Extra: fastmcp
Provides-Extra: openai
Provides-Extra: opensearch
Provides-Extra: peft
Provides-Extra: sentence-transformers
Provides-Extra: transformers
Provides-Extra: vllm
Provides-Extra: wandb
Description-Content-Type: text/markdown

# AutoIntent

<img align="left" width="100" height="100" src="logo/square-light.svg#gh-light-mode-only">
<img align="left" width="100" height="100" src="logo/square-dark.svg#gh-dark-mode-only">

Auto ML for intent classification.

Documentation: [deeppavlov.github.io/AutoIntent](https://deeppavlov.github.io/AutoIntent/).

Changelog: [CHANGELOG.md](./CHANGELOG.md).

The project is under active development.

## Installation

```bash
pip install autointent
```

## About

**AutoIntent** is an open source tool for automatic configuration of a text classification pipeline for intent prediction.

The task of intent detection is one of the main subtasks in creating task-oriented dialogue systems, along with scriptwriting and slot filling. AutoIntent project offers users the following:

- A convenient library of methods for intent classification that can be used in a sklearn-like "fit-predict" format.
- An AutoML approach to creating classifiers, where the only thing needed is to upload a set of labeled data.

Example of building an intent classifier in a couple of lines of code:

```python
from autointent import Pipeline, Dataset

dataset = Dataset.from_json(path_to_json)
pipeline = Pipeline.from_preset("classic-light")
pipeline.fit(dataset)
pipeline.predict(["show me my latest transactions"])
```

## Cite

If you find our work useful, please cite our EMNLP 2025 [paper](https://arxiv.org/abs/2509.21138):
```
@misc{alekseev2025autointentautomltextclassification,
      title={AutoIntent: AutoML for Text Classification}, 
      author={Ilya Alekseev and Roman Solomatin and Darina Rustamova and Denis Kuznetsov},
      year={2025},
      eprint={2509.21138},
      archivePrefix={arXiv},
      primaryClass={cs.CL},
      url={https://arxiv.org/abs/2509.21138}, 
}
```

## Disclaimer

This project is in development phase. Bugs and breaking changes are expected. Contributions and feedback are welcome! See [CONTRIBUTING.md](./CONTRIBUTING.md).

## Credits

Logo designed by [nkognit0](https://github.com/nkognit0).
