[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.