pyproject.toml 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. [build-system]
  2. requires = ["hatchling", "hatch-vcs"]
  3. build-backend = "hatchling.build"
  4. [tool.hatch.version]
  5. source = "vcs"
  6. [tool.hatch.build.targets.wheel]
  7. include = ["colpali_engine"]
  8. [project]
  9. name = "colpali_engine"
  10. dynamic = ["version"]
  11. description = "The code used to train and run inference with the ColPali architecture."
  12. authors = [
  13. { name = "Manuel Faysse", email = "manuel.faysse@illuin.tech" },
  14. { name = "Hugues Sibille", email = "hugues.sibille@illuin.tech" },
  15. { name = "Tony Wu", email = "tony.wu@illuin.tech" },
  16. ]
  17. maintainers = [
  18. { name = "Manuel Faysse", email = "manuel.faysse@illuin.tech" },
  19. { name = "Tony Wu", email = "tony.wu@illuin.tech" },
  20. ]
  21. readme = "README.md"
  22. requires-python = ">=3.9"
  23. classifiers = [
  24. "Programming Language :: Python :: 3",
  25. "License :: OSI Approved :: MIT License",
  26. "Intended Audience :: Science/Research",
  27. "Intended Audience :: Developers",
  28. "Operating System :: OS Independent",
  29. "Topic :: Scientific/Engineering :: Artificial Intelligence",
  30. ]
  31. dependencies = [
  32. "numpy",
  33. "peft>=0.14.0,<0.18.0",
  34. "pillow>=10.0.0",
  35. "requests",
  36. "scipy",
  37. "torch>=2.2.0,<2.9.0",
  38. "torchvision",
  39. "transformers>=4.53.1,<4.58.0",
  40. ]
  41. [project.optional-dependencies]
  42. train = [
  43. "accelerate>=0.34.0,<1.9.0",
  44. "bitsandbytes",
  45. "configue>=5.0.0",
  46. "datasets>=2.19.1",
  47. "mteb>=1.16.3,<2",
  48. "pillow>=10.0.0,<11.4.0",
  49. "typer>=0.15.1",
  50. ]
  51. interpretability = [
  52. "einops>=0.8.0,<1.0.0",
  53. "matplotlib>=3.9.0,<4.0.0",
  54. "seaborn>=0.13.2,<1.0.0",
  55. ]
  56. dev = ["pytest>=8.0.0", "ruff>=0.4.0"]
  57. all = [
  58. "colpali-engine[dev]",
  59. "colpali-engine[interpretability]",
  60. "colpali-engine[train]",
  61. ]
  62. [project.urls]
  63. homepage = "https://github.com/illuin-tech/colpali"
  64. [tool.pytest.ini_options]
  65. filterwarnings = ["ignore::Warning"]
  66. markers = ["slow: marks test as slow"]
  67. testpaths = ["tests"]
  68. [tool.ruff]
  69. line-length = 120
  70. [tool.ruff.lint]
  71. select = ["E", "F", "W", "I", "N"]
  72. [tool.ruff.lint.per-file-ignores]
  73. "__init__.py" = ["F401"]