[build-system] requires = ["setuptools>=61.0"] build-backend = "setuptools.build_meta" [project] name = "llamafactory" dynamic = [ "version", "dependencies", "optional-dependencies", "requires-python", "scripts", "authors", "description", "readme", "license", "keywords", "classifiers" ] [tool.ruff] target-version = "py39" line-length = 119 indent-width = 4 [tool.ruff.lint] ignore = [ "C408", # collection "C901", # complex "E501", # line too long "E731", # lambda function "E741", # ambiguous var name "D100", # no doc public module "D101", # no doc public class "D102", # no doc public method "D103", # no doc public function "D104", # no doc public package "D105", # no doc magic method "D107", # no doc __init__ ] extend-select = [ "C", # complexity "E", # error "F", # pyflakes "I", # isort "W", # warning "UP", # pyupgrade "D", # pydocstyle "PT009", # pytest assert "RUF022", # sort __all__ ] [tool.ruff.lint.isort] lines-after-imports = 2 known-first-party = ["llamafactory"] known-third-party = [ "accelerate", "datasets", "gradio", "numpy", "peft", "torch", "transformers", "trl", ] [tool.ruff.lint.pydocstyle] convention = "google" [tool.ruff.format] quote-style = "double" indent-style = "space" docstring-code-format = true skip-magic-trailing-comma = false line-ending = "auto" [tool.uv] conflicts = [ [ { extra = "torch-npu" }, { extra = "aqlm" }, ], [ { extra = "torch-npu" }, { extra = "liger-kernel" }, ], [ { extra = "torch-npu" }, { extra = "vllm" }, ], [ { extra = "torch-npu" }, { extra = "sglang" }, ], [ { extra = "vllm" }, { extra = "sglang" }, ], [ { extra = "sglang" }, { extra = "minicpm_v" }, ], ]