[tool.poetry] name = "machine-learning" version = "1.120.2" description = "" authors = ["Hau Tran "] readme = "README.md" packages = [{include = "app"}] [tool.poetry.dependencies] python = ">=3.10,<4.0" insightface = ">=0.7.3,<1.0" opencv-python-headless = ">=4.7.0.72,<5.0" pillow = ">=9.5.0,<11.0" fastapi = ">=0.95.2,<1.0" uvicorn = {extras = ["standard"], version = ">=0.22.0,<1.0"} pydantic = "^2.0.0" pydantic-settings = "^2.5.2" aiocache = ">=0.12.1,<1.0" rich = ">=13.4.2" ftfy = ">=6.1.1" python-multipart = ">=0.0.6,<1.0" orjson = ">=3.9.5" gunicorn = ">=21.1.0" huggingface-hub = ">=0.20.1,<1.0" tokenizers = ">=0.15.0,<1.0" [tool.poetry.group.dev.dependencies] mypy = ">=1.3.0" black = ">=23.3.0" pytest = ">=7.3.1" locust = ">=2.15.1" httpx = ">=0.24.1" pytest-asyncio = ">=0.21.0" pytest-cov = ">=4.1.0" ruff = ">=0.0.272" pytest-mock = ">=3.11.1" [tool.poetry.group.cpu] optional = true [tool.poetry.group.cpu.dependencies] onnxruntime = "^1.15.0" [tool.poetry.group.cuda] optional = true [tool.poetry.group.cuda.dependencies] onnxruntime-gpu = {version = "^1.17.0", source = "cuda12"} [tool.poetry.group.openvino] optional = true [tool.poetry.group.openvino.dependencies] onnxruntime-openvino = ">=1.17.1,<1.19.0" [tool.poetry.group.armnn] optional = true [tool.poetry.group.armnn.dependencies] onnxruntime = "^1.15.0" [[tool.poetry.source]] name = "cuda12" url = "https://aiinfra.pkgs.visualstudio.com/PublicPackages/_packaging/onnxruntime-cuda-12/pypi/simple/" priority = "explicit" [build-system] requires = ["poetry-core"] build-backend = "poetry.core.masonry.api" [tool.mypy] python_version = "3.11" plugins = "pydantic.mypy" follow_imports = "silent" warn_redundant_casts = true disallow_any_generics = true check_untyped_defs = true disallow_untyped_defs = true ignore_missing_imports = true [tool.pydantic-mypy] init_forbid_extra = true init_typed = true warn_required_dynamic_aliases = true warn_untyped_fields = true [tool.ruff] line-length = 120 target-version = "py311" [tool.ruff.lint] select = ["E", "F", "I"] per-file-ignores = { "test_main.py" = ["F403"] } [tool.black] line-length = 120 target-version = ['py311'] [tool.pytest.ini_options] markers = ["providers", "ov_device_ids"]