numpy>=1.24.0
ultralytics<9,>=8.3.0

[alerts]
opencv-python>=4.8.0
requests>=2.31.0
twilio>=8.10.0

[all]
albumentations<3,>=2.0.0
fastapi<1,>=0.115.0
matplotlib>=3.7.0
opencv-python>=4.8.0
pycocotools>=2.0.6
python-multipart>=0.0.9
PyYAML>=6.0
requests>=2.31.0
torch>=2.0.0
tqdm>=4.65.0
twilio>=8.10.0
uvicorn<1,>=0.30.0

[api]
fastapi<1,>=0.115.0
opencv-python>=4.8.0
python-multipart>=0.0.9
uvicorn<1,>=0.30.0

[apple]
coremltools<10,>=9.0

[dev]
albumentations<3,>=2.0.0
build>=1.2.0
fastapi<1,>=0.115.0
matplotlib>=3.7.0
opencv-python>=4.8.0
pycocotools>=2.0.6
pytest>=8.0.0
pytest-cov>=5.0.0
python-multipart>=0.0.9
PyYAML>=6.0
requests>=2.31.0
ruff<0.16,>=0.15.0
torch>=2.0.0
tqdm>=4.65.0
twilio>=8.10.0
twine>=6.0.0
uvicorn<1,>=0.30.0

[dev:python_version < "3.10"]
httpx>=0.27.0

[dev:python_version >= "3.10"]
httpx2>=2.7.0
pip-audit>=2.10.0

[notebooks]
jupyterlab>=4.0.0
pandas>=2.0.0
seaborn>=0.13.0

[training]
albumentations<3,>=2.0.0
matplotlib>=3.7.0
opencv-python>=4.8.0
pycocotools>=2.0.6
PyYAML>=6.0
torch>=2.0.0
tqdm>=4.65.0
