lingua-language-detector>=2.1.0
stop-words>=2025.11.4
emoji>=2.14
ftfy>=6.3
Unidecode>=1.4
beautifulsoup4>=4.14
onnxruntime>=1.24.2
tokenizers>=0.22.2
huggingface-hub>=1.5.0
numpy>=2.2.0
presidio_anonymizer>=2.2.360
regex>=2024.11.6

[all-ner]
torch>=2.6.0
transformers>=4.48
gliner<1.0,>=0.2.25
gliner2<2.0,>=1.0

[classify]
gliclass>=0.1.16

[classify-onnx]
onnxruntime>=1.24.2

[dev]
hypothesis>=6.130
faker>=33.0
ruff>=0.11
pytest>=8.3
pytest-timeout>=2.3
rapidfuzz>=3.12

[fuzzy]
rapidfuzz>=3.12

[gliner]
gliner<1.0,>=0.2.25

[gliner2]
gliner2<2.0,>=1.0

[gpu]
onnxruntime-gpu>=1.24.2

[presidio]
presidio-analyzer>=2.2.360

[synthetic]
faker>=33.0

[test]
coverage>=7.8
pytest-cov>=6.0

[torch]
torch>=2.6.0
transformers>=4.48
