[build-system] requires = ["hatchling>=1.21"] build-backend = "hatchling.build" [project] name = "dovla-cil" version = "0.1.0" description = "Interventional VLA pretraining from Counterfactual Intervention Lattices." readme = "README.md" requires-python = ">=3.10" license = { text = "MIT" } authors = [{ name = "DoVLA-CIL Contributors" }] dependencies = [ "pydantic>=2.0", "pyyaml>=6.0", "numpy>=1.23", "torch>=2.0", "tqdm>=4.65", "rich>=13.0", "pytest>=7.4", "httpx>=0.24", "openai>=1.0", "pandas>=2.0", "matplotlib>=3.7", ] [project.optional-dependencies] dev = [ "pytest>=7.4", "ruff>=0.6", "mypy>=1.8", ] webdataset = ["webdataset>=0.2"] parquet = ["pyarrow>=12.0"] wandb = ["wandb>=0.16"] ray = ["ray>=2.8"] visual = ["h5py>=3.8", "pillow>=10.0"] vlm = ["transformers>=4.46,<6", "h5py>=3.8", "pillow>=10.0"] maniskill = ["mani_skill==3.0.1", "h5py>=3.8", "pillow>=10.0"] all = [ "pyarrow>=12.0", "webdataset>=0.2", "wandb>=0.16", "ray>=2.8", "h5py>=3.8", "pillow>=10.0", "transformers>=4.46,<6", ] [tool.hatch.build.targets.wheel] packages = ["dovla_cil"] [tool.pytest.ini_options] testpaths = ["tests"] pythonpath = ["."] [tool.ruff] line-length = 110 target-version = "py310" [tool.ruff.lint] select = ["E", "F", "I", "UP", "B"] [tool.ruff.lint.per-file-ignores] "scripts/*.py" = ["E402"] "tests/test_dovla_model.py" = ["E402"] "tests/test_openvla_adapter.py" = ["E402"] [tool.mypy] python_version = "3.10" strict = false warn_unused_ignores = true warn_redundant_casts = true