[project] name = "nation-optimizer-rl" version = "0.1.0" description = "OpenEnv-compatible multi-agent RL environment for parliamentary resource allocation." readme = "README.md" requires-python = ">=3.11" dependencies = [ "huggingface-hub>=1.12.0", "openenv-core>=0.2.3", "pydantic>=2.13.3", "python-dotenv>=1.2.2", "fastapi>=0.104.0", "uvicorn[standard]>=0.24.0", "unsloth>=2026.4.8", "trl>=0.24.0", "peft>=0.19.1", "transformers>=5.5.0", "accelerate>=1.13.0", "datasets>=4.3.0", "trackio>=0.25.0", "matplotlib>=3.10.9", "seaborn>=0.13.2", "gradio>=4.19.2", ] [project.optional-dependencies] dev = [ "pytest>=8.0", ] training = [ "accelerate>=0.34", "bitsandbytes>=0.43; platform_system != 'Windows'", "datasets>=2.20", "peft>=0.12", "trackio>=0.1", "transformers>=4.44", "trl>=0.20", ] viz = [ "matplotlib>=3.8", ] [tool.uv] package = true [tool.pytest.ini_options] testpaths = ["tests"] pythonpath = ["."] addopts = "-q" [tool.hatch.build.targets.wheel] packages = [ "core", "server", "schemas", "agents", "telemetry", "evaluation", "training", "llm_integration", ] include = ["client.py", "openenv.yaml"] [tool.hatch.build.targets.wheel.force-include] "core/sectors.json" = "core/sectors.json" "core/events.json" = "core/events.json" "client.py" = "client.py" "openenv.yaml" = "openenv.yaml" [build-system] requires = ["hatchling"] build-backend = "hatchling.build" [dependency-groups] dev = [ "pytest>=9.0.3", ]