Diplomovka/perun/requirements/skbench/pyproject.toml
2026-11-04 23:46:33 +01:00

103 lines
2.7 KiB
TOML

[project]
name = "sk-bench"
version = "0.1.0"
description = "Elevating Slovak LLM evaluation through the power of lighteval."
license = "Apache-2.0"
license-files = ["LICENSE"]
requires-python = ">=3.13,<3.14"
dependencies = [
"lighteval[multilingual,vllm]>=0.13.0",
"pip>=25.3",
"transformers==5.12.1",
"pyyaml>=6.0.3",
"more-itertools>=10.8.0",
"immutabledict>=4.3.1",
"langdetect>=1.0.9",
"litellm[caching]>=1.82.0",
"wandb>=0.26.1",
"hf>=1.1.0",
"pre-commit>=4.5.1",
"vllm==0.28.0",
"torch==2.13.0",
]
[project.optional-dependencies]
vllm = ["vllm==0.28.0", "torch==2.13.0"]
[dependency-groups]
dev = [
{include-group = "lint"},
{include-group = "typing"},
{include-group = "test"},
{include-group = "notebooks"},
]
lint = [
"ruff>=0.9.0",
"pre-commit>=4.1.0",
"typos>=1.29.0",
]
typing = [
"mypy>=1.14.0",
"pandas-stubs>=2.3.3.260113",
]
test = [
"pytest>=8.0.0",
]
notebooks = [
"pandas",
"pyarrow",
"jupyter",
"matplotlib",
]
hpc = ["deep-gemm"]
[tool.ruff]
line-length = 119
[tool.ruff.lint]
# Enable pycodestyle (`E`) and Pyflakes (`F`) codes by default.
# Never enforce `E501` (line length violations).
ignore = ["E501", "D100", "D101", "D102", "D103", "D104", "D415", "D105", "DOC501", "DOC201", "CPY001"]
select = ["C", "E", "F", "I", "W", "CPY", "D417", "DOC"]
preview = true
[tool.ruff.lint.pydocstyle]
convention = "google"
[tool.ruff.lint.isort]
lines-after-imports = 2
known-first-party = ["lighteval"]
[tool.ruff.format]
quote-style = "double" # Like Black, use double quotes for strings.
indent-style = "space" # Like Black, indent with spaces, rather than tabs.
skip-magic-trailing-comma = false # Like Black, respect magic trailing commas.
line-ending = "auto" # Like Black, automatically detect the appropriate line ending.
[tool.uv]
default-groups = []
index-strategy = "unsafe-best-match"
extra-build-dependencies = { deep-gemm = ["torch"] }
[tool.uv.sources]
lighteval = { git = "https://github.com/huggingface/lighteval.git", rev = "10b9104eb16778b174e9e240140974a039018981" }
deep-gemm = { git = "https://github.com/deepseek-ai/DeepGEMM.git", rev = "v2.1.1.post3" }
# No default-groups: uv sync will only install core dependencies.
[[tool.mypy.overrides]]
module = ["src.evaluation_tracker_patch", "src.pipeline_patch"]
ignore_errors = true
[tool.typos.default.extend-words]
Ony = "Ony"
tak = "tak"
biologia = "biologia"
[[tool.uv.dependency-metadata]]
name = "deep-gemm"
version = "2.1.1.post3"
requires-dist = []
# vllm >= 0.28.0 ships CUDA 13 wheels on PyPI directly (no cu128 build
# exists anymore); the GPU nodes' driver (580.159.04) supports CUDA 13.0,
# so the default PyPI index is used for both vllm and torch.