verifiers 0.2.2.dev45__py3-none-any.whl → 0.2.2.dev47__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.
@@ -4,6 +4,7 @@ import importlib
4
4
  import logging
5
5
  import subprocess
6
6
  import sys
7
+ from importlib.metadata import PackageNotFoundError, version as package_version
7
8
  from pathlib import Path
8
9
  from typing import Optional
9
10
  from urllib.parse import urlparse
@@ -66,26 +67,10 @@ def is_installed(env_name: str, version: Optional[str] = None) -> bool:
66
67
  True if installed (and version matches if specified)
67
68
  """
68
69
  try:
69
- pkg_name = normalize_package_name(env_name)
70
- result = subprocess.run(
71
- _uv_pip_cmd("show", pkg_name),
72
- capture_output=True,
73
- text=True,
74
- )
75
-
76
- if result.returncode != 0:
77
- return False
78
-
79
- if version and version != "latest":
80
- for line in result.stdout.splitlines():
81
- if line.startswith("Version:"):
82
- installed_version = line.split(":", 1)[1].strip()
83
- return installed_version == version
84
- return False
85
-
86
- return True
87
- except Exception:
70
+ installed_version = package_version(normalize_package_name(env_name))
71
+ except PackageNotFoundError:
88
72
  return False
73
+ return not version or version == "latest" or installed_version == version
89
74
 
90
75
 
91
76
  def check_hub_env_installed(env_id: str) -> bool:
@@ -1,6 +1,6 @@
1
1
  from typing import ClassVar
2
2
 
3
- from pydantic import BaseModel, Field, field_serializer, model_validator
3
+ from pydantic import BaseModel, Field, SerializeAsAny, model_validator
4
4
 
5
5
  from verifiers.v1.clients.config import ClientConfig
6
6
  from verifiers.v1.episode import WireEpisode
@@ -65,15 +65,11 @@ class RunRequest(BaseRequest):
65
65
 
66
66
 
67
67
  class RunResponse(BaseResponse):
68
- episode: WireEpisode | None = None
68
+ episode: SerializeAsAny[WireEpisode] | None = None
69
69
  """The rollout's episode — its standing (`id`/`env`/`errors`, carrying
70
70
  episode-level errors even when no trace minted) inlined next to its flat,
71
71
  self-contained traces; task-specific data preserved in `model_extra`."""
72
72
 
73
- @field_serializer("episode")
74
- def _ser_episode(self, episode: "WireEpisode | None") -> dict | None:
75
- return episode.model_dump() if episode is not None else None
76
-
77
73
 
78
74
  class RunGroupRequest(BaseRequest):
79
75
  """Legacy (v0) route: group-scored v0 envs run a task's n rollouts together."""
@@ -87,8 +83,4 @@ class RunGroupRequest(BaseRequest):
87
83
 
88
84
 
89
85
  class RunGroupResponse(BaseResponse):
90
- traces: list[WireTrace] | None = None
91
-
92
- @field_serializer("traces")
93
- def _ser_traces(self, traces: "list[WireTrace] | None") -> list[dict] | None:
94
- return [t.model_dump() for t in traces] if traces is not None else None
86
+ traces: list[SerializeAsAny[WireTrace]] | None = None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: verifiers
3
- Version: 0.2.2.dev45
3
+ Version: 0.2.2.dev47
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
@@ -151,7 +151,7 @@ verifiers/utils/eval_display.py,sha256=rzpeDgP7vaUDCSnwiENpv80NMxoL6MpdOpxdlt64C
151
151
  verifiers/utils/eval_utils.py,sha256=Ch-XRhC07rkGRRbKTaf-xh55XQsuPgNBDwOB_fM0CmM,49831
152
152
  verifiers/utils/heartbeat.py,sha256=ePXFU4f0DfiMt2L_ysh4s3c6-BtRAeRO6gCxGsO2ISE,783
153
153
  verifiers/utils/import_utils.py,sha256=rWVoXfq8C4evM_1A9HW4cWRI6IGQ66YrOAjTnQv5aow,276
154
- verifiers/utils/install_utils.py,sha256=5wIM-S7Bignu9SBqy9hGoURpzX1DrH8InNy8MbZ2N_Q,7533
154
+ verifiers/utils/install_utils.py,sha256=IeKkeOBCloX2wwkgaQn4ya87b22N6Z8ijyDHygP6VL0,7208
155
155
  verifiers/utils/interception_utils.py,sha256=JFppjEGmx2bWcX8VOMjd786DcStkt0xhBTYTmuKjezQ,37954
156
156
  verifiers/utils/logging_utils.py,sha256=ORhY77WdhjhExTC8ckXBMubVt-bLwzETYKzZL-zuH9U,8529
157
157
  verifiers/utils/message_utils.py,sha256=c1orN5CVFSK4Hk2ai__LhBV4xboZcSyyWtpltAt15w4,17884
@@ -305,7 +305,7 @@ verifiers/v1/serve/__init__.py,sha256=sr_zkDzAHnOcQm-QRm8xwJBmCMFD-xhKIFPaDZvMbU
305
305
  verifiers/v1/serve/client.py,sha256=amUhf4cFJ1xCb8kw_AoVviwN543Wknx8LzImq1ZpaiQ,7057
306
306
  verifiers/v1/serve/pool.py,sha256=e9Nc3nQKEyV9YqyKHl_RuqQ84zWVa8z2J1rc3rfCadM,14828
307
307
  verifiers/v1/serve/server.py,sha256=VBOD3Gzq4p0ZD_8xgtG039i3JaefhOH0MmR6cxG56iY,9705
308
- verifiers/v1/serve/types.py,sha256=AHFbt8C-Rzlee34RDPLQ3lPiYDLkUm5eFMnRQINiO6s,3016
308
+ verifiers/v1/serve/types.py,sha256=y8Cf9wKOZRKDXcThFWVygTFHITJofOinGiIzwjQGCUE,2674
309
309
  verifiers/v1/tasksets/__init__.py,sha256=b62O4WDNbGfJH_4NjYmznn5otWovdfvUgJZyoIZyLh8,596
310
310
  verifiers/v1/tasksets/harbor/__init__.py,sha256=wwVGA8N7E2Q2qA5WGHuLRrn4DgG5oaRHrCS2RW3NXVY,195
311
311
  verifiers/v1/tasksets/harbor/taskset.py,sha256=aPgdVExCtt09t2YJrsK4UmlpQwAp5-htXa7arC1bX68,13877
@@ -329,8 +329,8 @@ verifiers/v1/utils/logging.py,sha256=OcMHA6NsYux3oIzjPuI95rDWmFBHNcHDjZeNIhXTX-Y
329
329
  verifiers/v1/utils/memory.py,sha256=ZkIvGk6uITAH5sKon65LifKPbvZr8mJ__PVc23FZpOQ,1835
330
330
  verifiers/v1/utils/sampling.py,sha256=JczGzBn6s3wsIrSY2Hy3hE8m6NreNgsNzhSjDikQqX0,1037
331
331
  verifiers/v1/utils/version.py,sha256=-obEo_-l9-D8FLef4hYxncOe-uJpxrM1g2Hig_37Sgs,1607
332
- verifiers-0.2.2.dev45.dist-info/METADATA,sha256=kW2k_YmsnTCNa5EjDuo1jduAsLBdM8D3TapsO1mHvgo,4545
333
- verifiers-0.2.2.dev45.dist-info/WHEEL,sha256=lCkmxWfQsSc9CfIClYeavTdQeEX2toPqufh9gI35EQA,87
334
- verifiers-0.2.2.dev45.dist-info/entry_points.txt,sha256=dF82JUYEFslR1AOW8LZfuBWeZeQoyX4wCRrduklg8-I,551
335
- verifiers-0.2.2.dev45.dist-info/licenses/LICENSE,sha256=v0RrUsdV3IDoZhrRce297IXS3xMHNJ-_LdLpFAUWb9k,1072
336
- verifiers-0.2.2.dev45.dist-info/RECORD,,
332
+ verifiers-0.2.2.dev47.dist-info/METADATA,sha256=nTyUOf7IYoOyomIyJerWGt0HPDzT_xGMjdqVmJAC4_U,4545
333
+ verifiers-0.2.2.dev47.dist-info/WHEEL,sha256=lCkmxWfQsSc9CfIClYeavTdQeEX2toPqufh9gI35EQA,87
334
+ verifiers-0.2.2.dev47.dist-info/entry_points.txt,sha256=dF82JUYEFslR1AOW8LZfuBWeZeQoyX4wCRrduklg8-I,551
335
+ verifiers-0.2.2.dev47.dist-info/licenses/LICENSE,sha256=v0RrUsdV3IDoZhrRce297IXS3xMHNJ-_LdLpFAUWb9k,1072
336
+ verifiers-0.2.2.dev47.dist-info/RECORD,,