refiners/pyproject.toml
Cédric Deltheil 4fc5e427b8 training_utils: fix extra detection
Requirements could be, e.g.:

    wandb (>=0.15.7,<0.16.0) ; extra == "training"

Or:

    wandb>=0.16.0; extra == 'training'

Follow up of 86c5497
2023-12-08 19:09:16 +01:00

91 lines
1.9 KiB
TOML

[project]
name = "refiners"
version = "0.2.0"
description = "The simplest way to train and run adapters on top of foundational models"
authors = [{ name = "The Finegrain Team", email = "bonjour@lagon.tech" }]
license = "MIT"
dependencies = [
"torch>=2.1.1",
"safetensors>=0.4.0",
"pillow>=10.1.0",
"jaxtyping>=0.2.23",
"packaging>=23.2",
]
readme = "README.md"
requires-python = ">= 3.10"
[project.optional-dependencies]
training = [
"bitsandbytes>=0.41.2.post2",
"pydantic>=2.5.2",
"prodigyopt>=1.0",
"torchvision>=0.16.1",
"loguru>=0.7.2",
"wandb>=0.16.0",
# Added scipy as a work around until this PR gets merged:
# https://github.com/TimDettmers/bitsandbytes/pull/525
"scipy>=1.11.4",
"datasets>=2.15.0",
]
test = [
"diffusers>=0.24.0",
"transformers>=4.35.2",
"piq>=0.8.0",
"invisible-watermark>=0.2.0",
"torchvision>=0.16.1",
# An unofficial Python package for Meta AI's Segment Anything Model:
# https://github.com/opengeos/segment-anything
"segment-anything-py>=1.0",
]
conversion = [
"diffusers>=0.24.0",
"transformers>=4.35.2",
"segment-anything-py>=1.0",
]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.rye]
managed = true
dev-dependencies = [
"pyright == 1.1.333",
"ruff>=0.0.292",
"docformatter>=1.7.5",
"pytest>=7.4.2",
]
[tool.hatch.metadata]
allow-direct-references = true
[tool.rye.scripts]
lint = { chain = ["ruff format .", "ruff --fix ."] }
[tool.black]
line-length = 120
[tool.ruff]
ignore = [
"F722", # forward-annotation-syntax-error, because of Jaxtyping
"E731", # do-not-assign-lambda
]
line-length = 120
[tool.docformatter]
black = true
[tool.isort]
profile = "black"
force_sort_within_sections = true
order_by_type = true
combine_as_imports = true
[tool.pyright]
include = ["src/refiners", "tests", "scripts"]
strict = ["*"]
exclude = ["**/__pycache__"]
reportMissingTypeStubs = "warning"