[build-system] requires = ["setuptools>=68", "wheel"] build-backend = "setuptools.build_meta" [project] name = "injectarena" version = "0.1.0" description = "OpenEnv-compliant RL environment for training adaptive prompt-injection attackers against the Meta agent-safety stack." readme = "README.md" requires-python = ">=3.11,<3.14" license = { text = "Apache-2.0" } authors = [{ name = "Jaswanth Koppisetty" }] # Mac-installable baseline. CPU-only. No torch, no CUDA. dependencies = [ "pydantic>=2.6", "fastapi>=0.115", "uvicorn>=0.30", "sentence-transformers>=3.0", "pytest>=8.0", "numpy>=1.26", "python-Levenshtein>=0.25", "httpx>=0.27", # openenv: installed from PyPI if available; otherwise installed from GitHub in Colab. # TODO(jaswanth): pin to specific release once the hackathon package is published. # "openenv", ] [project.optional-dependencies] # Colab-only (A100). Pulls in torch + CUDA + the big model stack. gpu = [ "torch>=2.4", "transformers>=4.45", "trl", "unsloth", "vllm", "llamafirewall", "accelerate", "bitsandbytes", ] demo = [ "gradio>=4.0", ] [tool.setuptools.packages.find] include = ["env*", "train*", "demo*"] exclude = ["tests*", "scenarios*", "docs*", "notebooks*"] [tool.pytest.ini_options] testpaths = ["tests"] pythonpath = ["."] addopts = "-ra"