[project] name = 'colpali_engine' # dynamic = ["version"] version = '0.0.1' description = 'This repository centralizes ressources for the ColPali project.' authors = [ { name = 'Manuel Faysse', email = 'manuel.faysse@illuin.tech' }, { name = 'Hugues Sibille', email = 'hugues.sibille@illuin.tech' }, { name = 'Tony Wu', email = 'tony.wu@illuin.tech' }, ] readme = 'README.md' requires-python = '>=3.9' classifiers = [ 'Intended Audience :: Science/Research', 'Intended Audience :: Developers', 'Operating System :: OS Independent', 'Private :: Do Not Upload', 'Programming Language :: Python :: 3', 'Programming Language :: Python :: 3.10', 'Topic :: Scientific/Engineering :: Artificial Intelligence', 'Typing :: Typed', ] dependencies = [ "torch>=2.2.0", "transformers>=4.41.1", "mteb>=1.12.22", "requests", "GPUtil", "peft>=0.11.0, <0.12.0", ] [project.optional-dependencies] dev = [ "black>=24.4.2", "coverage>=7.5.2", "ipykernel>=6.29.4", "mypy>=1.10.0", "pytest>=8.2.1", "ruff>=0.4.5", ] train = [ "accelerate==0.30.1", "configue==5.0.0", "datasets==2.19.1", "typer==0.12.3", "bitsandbytes", ] [project.urls] homepage = "https://github.com/ManuelFay/colpali" [build-system] requires = ['setuptools', 'setuptools_scm[toml]', 'wheel'] build-backend = 'setuptools.build_meta' [tool.setuptools_scm] fallback_version = '0.0.0-dev' [tool.setuptools] zip-safe = false platforms = ['any'] [tool.setuptools.packages.find] include = ['colpali_engine', 'colpali_engine.*'] [tool.mypy] check_untyped_defs = true disallow_untyped_defs = true enable_error_code = ['ignore-without-code'] exclude = ['docs/'] mypy_path = '$MYPY_CONFIG_FILE_DIR/typings' no_implicit_optional = true show_error_codes = true warn_redundant_casts = true warn_return_any = true warn_unused_configs = true warn_unused_ignores = true warn_unreachable = true [[tool.mypy.overrides]] module = ['transformers', 'transformers.*', 'torch', 'torch.*'] ignore_missing_imports = true [tool.coverage.run] include = [] [tool.coverage.report] exclude_lines = [ 'pragma: no cover', 'raise NotImplementedError', 'if __name__ == "__main__":', 'if TYPE_CHECKING:', 'def __repr__', ] [tool.black] line-length = 120 [tool.ruff] select = ["E", "F", "W", "I", "N"] line-length = 120 [tool.ruff.per-file-ignores] '__init__.py' = ["F401"]