-
Notifications
You must be signed in to change notification settings - Fork 17
/
pyproject.toml
129 lines (119 loc) · 4.71 KB
/
pyproject.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
[tool.poetry]
name = "pytorch_optimizer"
version = "3.0.1"
description = "optimizer & lr scheduler & objective function collections in PyTorch"
license = "Apache-2.0"
authors = ["kozistr <[email protected]>"]
maintainers = ["kozistr <[email protected]>"]
readme = "README.md"
homepage = "https://github.com/kozistr/pytorch_optimizer"
repository = "https://github.com/kozistr/pytorch_optimizer"
documentation = "https://pytorch-optimizers.readthedocs.io/en/latest"
keywords = [
"pytorch", "deep-learning", "optimizer", "lr scheduler", "A2Grad", "ASGD", "AccSGD", "AdaBelief", "AdaBound",
"AdaDelta", "AdaFactor", "AdaMax", "AdaMod", "AdaNorm", "AdaPNM", "AdaSmooth", "AdaHessian", "Adai", "Adalite",
"AdamP", "AdamS", "Adan", "AggMo", "Aida", "AliG", "Amos", "Apollo", "AvaGrad", "bSAM", "CAME", "DAdaptAdaGrad",
"DAdaptAdam", "DAdaptAdan", "DAdaptSGD", "DAdaptLion", "DiffGrad", "FAdam", "Fromage", "GaLore", "Gravity", "GSAM",
"LARS", "Lamb", "Lion", "LOMO", "Lookahead", "MADGRAD", "MSVAG", "Nero", "NovoGrad", "PAdam", "PCGrad", "PID",
"PNM", "Prodigy", "QHAdam", "QHM", "RAdam", "Ranger", "Ranger21", "RotoGrad", "SAM", "ScheduleFreeSGD",
"ScheduleFreeAdamW", "SGDP", "Shampoo", "ScalableShampoo", "SGDW", "SignSGD", "SM3", "SopihaH", "SRMM", "SWATS",
"Tiger", "WSAM", "Yogi", "BCE", "BCEFocal", "Focal", "FocalCosine", "SoftF1", "Dice", "LDAM", "Jaccard",
"Bi-Tempered", "Tversky", "FocalTversky", "LovaszHinge", "bitsandbytes",
]
classifiers = [
"License :: OSI Approved :: Apache Software License",
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Education",
"Intended Audience :: Developers",
"Intended Audience :: Science/Research",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Operating System :: OS Independent",
"Topic :: Scientific/Engineering",
"Topic :: Scientific/Engineering :: Artificial Intelligence",
"Topic :: Software Development",
"Topic :: Software Development :: Libraries",
"Topic :: Software Development :: Libraries :: Python Modules",
]
[tool.poetry.dependencies]
python = ">=3.8,<4.0.0"
numpy = { version = "*", python = ">=3.8" }
torch = { version = ">=1.10", python = ">=3.8", source = "torch" }
bitsandbytes = { version = "^0.43", optional = true }
[tool.poetry.dev-dependencies]
isort = { version = "^5", python = ">=3.8" }
black = { version = "^24", python = ">=3.8" }
ruff = "*"
pytest = "*"
pytest-cov = "*"
[tool.poetry.extras]
bitsandbytes = ["bitsandbytes"]
[[tool.poetry.source]]
name = "torch"
url = "https://download.pytorch.org/whl/cpu"
priority = "explicit"
[tool.ruff]
lint.select = [
"A", "B", "C4", "D", "E", "F", "G", "I", "N", "S", "T", "ISC", "ICN", "W", "INP", "PIE", "T20", "RET", "SIM",
"TID", "ARG", "ERA", "RUF", "YTT", "PL", "Q"
]
lint.ignore = [
"B905", "D100", "D102", "D104", "D105", "D107", "D203", "D213", "D413", "PIE790", "PLR0912", "PLR0913", "PLR0915",
"PLR2004", "RUF013", "Q003",
]
lint.fixable = ["ALL"]
lint.unfixable = ["F401"]
exclude = [
".git",
".github",
".idea",
".ipynb_checkpoints",
".pytest_cache",
".ruff_cache",
"assets",
"dist",
"docs",
".venv",
"__pypackages__",
]
line-length = 119
lint.dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"
target-version = "py311"
lint.flake8-quotes.docstring-quotes = "double"
lint.flake8-quotes.inline-quotes = "single"
lint.pylint.max-args = 7
[tool.ruff.format]
quote-style = "single"
[tool.ruff.lint.per-file-ignores]
"./pytorch_optimizer/__init__.py" = ["F401"]
"./pytorch_optimizer/lr_scheduler/__init__.py" = ["F401"]
"./hubconf.py" = ["D", "INP001"]
"./tests/__init__.py" = ["D"]
"./tests/constants.py" = ["D"]
"./tests/utils.py" = ["D"]
"./tests/test_base.py" = ["D", "S101"]
"./tests/test_utils.py" = ["D", "S101", "ERA001"]
"./tests/test_gradients.py" = ["D", "S101"]
"./tests/test_optimizers.py" = ["D", "S101"]
"./tests/test_optimizer_parameters.py" = ["D", "S101"]
"./tests/test_general_optimizer_parameters.py" = ["D", "S101"]
"./tests/test_lr_schedulers.py" = ["D", "S101"]
"./tests/test_lr_scheduler_parameters.py" = ["D", "S101"]
"./tests/test_create_optimizer.py" = ["D"]
"./tests/test_loss_functions.py" = ["D", "S101"]
"./tests/test_load_modules.py" = ["D", "S101"]
[tool.pytest.ini_options]
testpaths = "tests"
[tool.coverage.run]
omit = [
"./pytorch_optimizer/optimizer/rotograd.py",
]
[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"