verifiers 0.3.2.dev147__py3-none-any.whl → 0.3.2.dev148__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
verifiers/v1/agent.py CHANGED
@@ -57,22 +57,13 @@ __all__ = ["Agent", "AgentConfig", "Agents", "TimeoutConfig", "make_agent"]
57
57
  logger = logging.getLogger(__name__)
58
58
 
59
59
 
60
- DEFAULT_ROLLOUT_TIMEOUT = 4 * 3600.0
61
- """Agent solve-attempt budget when neither the eval config nor the task sets one."""
62
-
63
-
64
60
  def resolve_rollout_timeouts(timeout: TimeoutConfig, task: Task) -> RolloutTimeouts:
65
61
  """Apply an agent's stage-timeout precedence to one task."""
66
- agent_timeout = (
67
- timeout.rollout if timeout.rollout is not None else task.data.timeout.agent
68
- )
69
- if agent_timeout is None:
70
- agent_timeout = DEFAULT_ROLLOUT_TIMEOUT
71
- elif agent_timeout == 0:
72
- agent_timeout = None # explicit: unbounded
73
62
  return RolloutTimeouts(
74
63
  setup=timeout.setup if timeout.setup is not None else task.data.timeout.setup,
75
- agent=agent_timeout,
64
+ agent=(
65
+ timeout.rollout if timeout.rollout is not None else task.data.timeout.agent
66
+ ),
76
67
  finalize=(
77
68
  timeout.finalize
78
69
  if timeout.finalize is not None
@@ -2,7 +2,7 @@
2
2
 
3
3
  from typing import Any
4
4
 
5
- from pydantic import BaseModel, SerializeAsAny, model_validator
5
+ from pydantic import BaseModel, Field, SerializeAsAny, model_validator
6
6
  from pydantic_config import BaseConfig
7
7
 
8
8
  from verifiers.v1.clients import ClientConfig
@@ -14,16 +14,17 @@ from verifiers.v1.utils.generic import deep_merge
14
14
 
15
15
 
16
16
  class TimeoutConfig(BaseConfig):
17
- """Timeout (in seconds) for different phases of an agent's run."""
17
+ """Timeout (in seconds) for different phases of an agent's run. Each unset
18
+ stage takes the task's own timeout for it, else runs with no limit."""
18
19
 
19
- setup: float | None = None # one shared budget: task setup + provisioning
20
+ # one shared budget: task setup + provisioning
21
+ setup: float | None = Field(None, gt=0)
20
22
  """Timeout (in seconds) for task/harness setup through session preparation."""
21
- rollout: float | None = None
22
- """Timeout (in seconds) for the agent's solve attempt. Unset: the task's own
23
- timeout, else 4 hours. `0` disables the timeout."""
24
- finalize: float | None = None
23
+ rollout: float | None = Field(None, gt=0)
24
+ """Timeout (in seconds) for the agent's solve attempt."""
25
+ finalize: float | None = Field(None, gt=0)
25
26
  """Timeout (in seconds) for the task + harness finalize hooks."""
26
- scoring: float | None = None
27
+ scoring: float | None = Field(None, gt=0)
27
28
  """Timeout (in seconds) for the task + harness metrics + scoring hooks."""
28
29
 
29
30
 
@@ -77,10 +77,10 @@ class HarborConfig(TasksetConfig):
77
77
  tasks: list[str] | None = None
78
78
  """Optional subset of task names to load (None = all)."""
79
79
  ignore_timeouts: bool = True
80
- """Drop each task's declared agent and verifier timeouts so rollouts use the
81
- run-level `--timeout.*` limits or their defaults (4 h for the agent; `--timeout.rollout 0`
82
- runs unbounded). Task timeouts are authored against Harbor's runtime and confound
83
- model capability with inference speed; set False to apply them anyway."""
80
+ """Drop each task's declared agent and verifier timeouts so rollouts use only the
81
+ run-level `--timeout.*` limits (none by default). Task timeouts are authored
82
+ against Harbor's runtime and confound model capability with inference speed; set
83
+ False to apply them anyway."""
84
84
  timeout_multiplier: float = Field(1.0, gt=0)
85
85
  """Scale each task's agent and verifier timeouts. Only applies with
86
86
  `ignore_timeouts=False`."""
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: verifiers
3
- Version: 0.3.2.dev147
3
+ Version: 0.3.2.dev148
4
4
  Summary: Verifiers: Environments for LLM Reinforcement Learning
5
5
  Project-URL: Homepage, https://github.com/primeintellect-ai/verifiers
6
6
  Project-URL: Documentation, https://github.com/primeintellect-ai/verifiers
@@ -1,6 +1,6 @@
1
1
  verifiers/__init__.py,sha256=F5IVMw6mhGaPBMCw7QKk0la_r5mMwydP2hdTTdQucik,352
2
2
  verifiers/v1/__init__.py,sha256=xbx98CgqJCmGkbR_FP7ugRuDVQ8t_l1F0oVddtLKkSs,8585
3
- verifiers/v1/agent.py,sha256=10hXkda0sC5FxT2a32t9En5QlExqcxgnBYtGYk7oins,32651
3
+ verifiers/v1/agent.py,sha256=yBCCBe5tVTeQ8OZDlVSZLw_IDvCmEQSnF3wQ1BZcT14,32342
4
4
  verifiers/v1/env.py,sha256=GqrVxxrvv-9WitXhD8Rre0tKQgnQWeD8mTM2gDHMVBs,18040
5
5
  verifiers/v1/episode.py,sha256=UPtA02aGWA-fY8cJKEuYCMtQVnPN1C0BSN13LggNT8U,5986
6
6
  verifiers/v1/errors.py,sha256=QFbKFrma1STrN7abYcU2LBQOQBpj43Rm-nOwL9EFeUM,5743
@@ -42,7 +42,7 @@ verifiers/v1/clients/client.py,sha256=zqC_AkiD9pl0kxxIbupNiehbS-YnVdp3EMZ0LOHTd8
42
42
  verifiers/v1/clients/eval.py,sha256=cJucyUFsbF1JlG8nF0Tlw2EBMSoAF0YMklgYiOSoNpg,8322
43
43
  verifiers/v1/clients/train.py,sha256=jm_z_Gkwqo4IKEVN8WrDnEyJykXxmswFHzlsnFop7_I,18945
44
44
  verifiers/v1/configs/__init__.py,sha256=X7u6X7B3ieD1HZl79Tv1kg-yPHbT0QLvAebaGqxVtvA,317
45
- verifiers/v1/configs/agent.py,sha256=76ZvO0EE_JCEep96vOYfvAmC4fsLHtJn_cKbJhve6gU,5241
45
+ verifiers/v1/configs/agent.py,sha256=Vut73R2EW8QuL5c0iTnNFC_g-Obvl8YUKsjlvkABuL0,5311
46
46
  verifiers/v1/configs/client.py,sha256=fPWtBJv5lPkqttwk0AF2ubfLdzxX2XCO0Zr-A9V4mtk,4440
47
47
  verifiers/v1/configs/env.py,sha256=k47XBYYWLOf-8P1dbek3x_s0ucNb726xxoryG69DIr4,7256
48
48
  verifiers/v1/configs/harness.py,sha256=ZrR-Egzfft95oMoqQ78bAq9TqP882Q68M_47Ajw9lE8,2918
@@ -160,7 +160,7 @@ verifiers/v1/tasksets/__init__.py,sha256=2ijE3qIlLoUA02g6iysOwWQylyBBQL1GhSpjv8_
160
160
  verifiers/v1/tasksets/harbor/__init__.py,sha256=JxThzHFYEkuSfQbVf3pEnjordgdfe4MU-QOsSSbyovU,326
161
161
  verifiers/v1/tasksets/harbor/compose.py,sha256=8r5JgEaPaf6xVsQqXqlZnKMI5L8ZWztOz8CTYdJ8gH0,13869
162
162
  verifiers/v1/tasksets/harbor/env.py,sha256=-U-CeyeuWysXCNHi3cew0XtakUa7TqJVnVzElKtG41w,6356
163
- verifiers/v1/tasksets/harbor/taskset.py,sha256=LytWZs22cQIWlC7fy5Ie3OymtTBFpCHhwHIW0WwwEPY,36123
163
+ verifiers/v1/tasksets/harbor/taskset.py,sha256=HQXrCu2Gpx_UH6AwOtitSXw-OvtdFrDUDewlNUqXWEk,36070
164
164
  verifiers/v1/tasksets/harbor/toolset.py,sha256=_7HXu-uuvqzhmJ1EX6c3KWLg0g0eRrLjCq1kBsZhIwo,3159
165
165
  verifiers/v1/tasksets/nemo_gym/__init__.py,sha256=654gAvG3Wd_Z_nh6mypeKn4s_IIQ0Ge6vcZvxTHC2_E,306
166
166
  verifiers/v1/tasksets/nemo_gym/response.py,sha256=EhrsquEP8g0bjzAThGfE6Ypgy86_nVX235NiFYtVDVM,4463
@@ -192,8 +192,8 @@ verifiers/v1/utils/scope.py,sha256=bzUEiWDOVdbj7dXOwGOlzsQ_-Xu0j9NR5TalQB-8TS8,8
192
192
  verifiers/v1/utils/score.py,sha256=493yJVMw8teCu9JxapxMFPFzI0hNUqdo0Y2nGW4kckk,6200
193
193
  verifiers/v1/utils/trace_store.py,sha256=RsCDonGR-bs-tvEstcppiJm3jFmAdIiG83fA5KtCbAw,2801
194
194
  verifiers/v1/utils/version.py,sha256=-obEo_-l9-D8FLef4hYxncOe-uJpxrM1g2Hig_37Sgs,1607
195
- verifiers-0.3.2.dev147.dist-info/METADATA,sha256=GlTJjj6uj00nP8F28dj-J7O8t2rMipShpCBpBbErjnw,4161
196
- verifiers-0.3.2.dev147.dist-info/WHEEL,sha256=W3fkpkm7-wf9vBI5Z-7s0eWkeM-spu78I8Neb98DeEg,87
197
- verifiers-0.3.2.dev147.dist-info/entry_points.txt,sha256=iugElcdWPKbQM7uFF0lZ8iUpHsNr17-BwEAAjJWxV3U,259
198
- verifiers-0.3.2.dev147.dist-info/licenses/LICENSE,sha256=v0RrUsdV3IDoZhrRce297IXS3xMHNJ-_LdLpFAUWb9k,1072
199
- verifiers-0.3.2.dev147.dist-info/RECORD,,
195
+ verifiers-0.3.2.dev148.dist-info/METADATA,sha256=tp0l7a77Bfs3JtAQY5qQbdL5QB4LAQrAyv5BWtFdAOQ,4161
196
+ verifiers-0.3.2.dev148.dist-info/WHEEL,sha256=W3fkpkm7-wf9vBI5Z-7s0eWkeM-spu78I8Neb98DeEg,87
197
+ verifiers-0.3.2.dev148.dist-info/entry_points.txt,sha256=iugElcdWPKbQM7uFF0lZ8iUpHsNr17-BwEAAjJWxV3U,259
198
+ verifiers-0.3.2.dev148.dist-info/licenses/LICENSE,sha256=v0RrUsdV3IDoZhrRce297IXS3xMHNJ-_LdLpFAUWb9k,1072
199
+ verifiers-0.3.2.dev148.dist-info/RECORD,,