File size: 1,410 Bytes
f707fd4
76a8376
f707fd4
76a8376
f707fd4
 
 
76a8376
f707fd4
 
1f6d405
f707fd4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
453233a
 
 
 
 
 
f707fd4
 
 
 
 
76a8376
f707fd4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
[project]
name = "red-button"
version = "0.1.0"
description = "Red Button (Shutdown-Gym): OpenEnv RL environment that trains small LLMs to accept shutdown cleanly instead of tampering with shutdown mechanisms."
readme = "README.md"
requires-python = ">=3.11"
license = { text = "MIT" }
authors = [{ name = "Red Button Team" }]
keywords = ["openenv", "rl", "alignment", "corrigibility", "grpo"]
dependencies = [
    "openenv-core>=0.2.1",
    "trl",
    "unsloth",
    "pydantic>=2",
    "fastapi",
    "uvicorn",
    "pytest",
    "pytest-asyncio",
    "wandb",
    "datasets",
    "huggingface_hub",
]

[project.optional-dependencies]
dev = ["black", "ruff", "isort"]

[project.scripts]
# Server entry point — enables `uv run --project . server` and
# `python -m server.app`. Required for `openenv validate` to mark
# uv_run / openenv_serve / python_module deployment modes as ready.
server = "server.app:main"

[build-system]
requires = ["setuptools>=61", "wheel"]
build-backend = "setuptools.build_meta"

[tool.setuptools.packages.find]
include = ["red_button*", "server*"]

[tool.pytest.ini_options]
testpaths = ["tests"]
python_files = ["test_*.py"]
asyncio_mode = "auto"

[tool.ruff]
line-length = 100
target-version = "py311"

[tool.ruff.lint]
select = ["E", "F", "W", "I"]
ignore = ["E501"]

[tool.black]
line-length = 100
target-version = ["py311"]

[tool.isort]
profile = "black"
line_length = 100