verifiers 0.1.15.dev151__tar.gz → 0.1.15.dev153__tar.gz
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-0.1.15.dev151 → verifiers-0.1.15.dev153}/PKG-INFO +1 -1
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/swe/scale_swe/taskset.py +9 -1
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/display_utils.py +19 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/harness.py +3 -0
- verifiers-0.1.15.dev153/verifiers/v1/utils/logging_utils.py +57 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/.gitignore +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/LICENSE +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/README.md +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/pyproject.toml +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/AGENTS.md +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/README.md +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/conftest.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_browser_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_build_script.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_cli_agent_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_client_auth_errors.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_client_config.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_client_multimodal_types.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_composable_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_context_token_metrics.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_decorator_ranks.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_endpoint_registry.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_env_group.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_env_server.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_environment.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_environment_extra.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_envs.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_error_chain.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_eval_cli.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_eval_display.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_eval_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_gepa_cli.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_gepa_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_gym_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_harbor_env_mcp.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_imports.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_init_script.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_install_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_interception_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_langchain_deep_agents_wikispeedia.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_lean_task.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_logging.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_math_rubric.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_maybe_think_parser.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_mcp_search_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_message_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_message_utils_multimodal.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_multiturn_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_nemorl_client.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_openai_chat_completions_token_client.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_openai_responses_client.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_opencode_harbor.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_opencode_rlm_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_openenv_client.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_parser.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_path_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_per_turn_timing.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_pricing_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_prime_plugin.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_renderer_client.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_renderer_e2e.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_rlm_composable_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_rlm_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_rubric.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_rubric_group.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_sandbox_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_sandbox_mixin.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_save_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_setup_script.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_singleturn_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_stateful_tool_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_think_parser.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_tool_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_tool_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_trajectory_processing.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_tui_info_formatting.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_types.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_v1_bfcl.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_v1_config_extension.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_v1_empty_completions.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_v1_endpoint_protocols.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_v1_example_counts.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_v1_group_reward_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_v1_harbor_cli.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_v1_mini_swe_agent.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_v1_nemo_gym_harness.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_v1_openenv_taskset.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_v1_openreward_taskset.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_v1_rlm_swe.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_v1_runtime_lifecycle.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_v1_scoring_functions.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_v1_taskset_bindings.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_v1_taskset_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_v1_textarena_taskset.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_wiki_search_v1.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_wordle_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_wordle_v1_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_xml_parser.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/AGENTS.md +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/cli/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/cli/commands/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/cli/commands/build.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/cli/commands/eval.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/cli/commands/gepa.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/cli/commands/init.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/cli/commands/install.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/cli/commands/setup.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/cli/plugins/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/cli/plugins/prime.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/cli/tui.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/clients/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/clients/anthropic_messages_client.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/clients/client.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/clients/nemorl_chat_completions_client.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/clients/openai_chat_completions_client.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/clients/openai_chat_completions_token_client.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/clients/openai_completions_client.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/clients/openai_responses_client.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/clients/renderer_client.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/decorators.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/AGENTS.md +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/env_group.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/environment.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/README.md +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/cli_agent_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/README.md +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/_filter.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/composable_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/harness.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/harnesses/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/harnesses/mini_swe_agent.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/harnesses/opencode.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/harnesses/prompt.txt +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/harnesses/rlm.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/swe_debug_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/task.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/cp/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/cp/cp_task.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/cp/test_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/harbor/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/harbor/harbor.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/lean/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/lean/lean_task.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/math/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/math/math_task.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/swe/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/swe/multi_swe/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/swe/multi_swe/extract_fix_patch.sh +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/swe/multi_swe/taskset.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/swe/openswe/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/swe/openswe/taskset.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/swe/r2e_gym/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/swe/r2e_gym/log_parser.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/swe/r2e_gym/taskset.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/swe/scale_swe/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/swe/shared/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/swe/shared/test_patch.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/swe/swe_bench/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/swe/swe_bench/taskset.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/swe/swe_lego/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/swe/swe_lego/taskset.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/swe/swe_rebench_v2/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/swe/swe_rebench_v2/log_parsers.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/swe/swe_rebench_v2/taskset.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/swe/swe_smith/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/swe/swe_smith/taskset.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/tasksets/swe/swe_tasksets.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/gym_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/harbor_env/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/harbor_env/env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/harbor_env/mcp.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/mcp_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/opencode_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/opencode_qa_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/opencode_rlm_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/rlm_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/sandbox_mixin.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/utils/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/utils/file_locks.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/utils/git_checkout_cache.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/integrations/README.md +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/integrations/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/integrations/browser_env/README.md +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/integrations/browser_env/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/integrations/browser_env/browser_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/integrations/browser_env/modes/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/integrations/browser_env/modes/base.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/integrations/browser_env/modes/cua_mode.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/integrations/browser_env/modes/dom_mode.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/integrations/openenv_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/integrations/reasoninggym_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/integrations/textarena_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/multiturn_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/python_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/sandbox_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/singleturn_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/stateful_tool_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/tool_env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/errors.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/gepa/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/gepa/adapter.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/gepa/config.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/gepa/display.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/gepa/gepa_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/parsers/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/parsers/maybe_think_parser.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/parsers/parser.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/parsers/think_parser.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/parsers/xml_parser.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/rl/README.md +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/rl/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/rl/inference/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/rl/inference/client.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/rl/inference/server.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/rl/trainer/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/rl/trainer/config.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/rl/trainer/orchestrator.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/rl/trainer/trainer.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/rl/trainer/utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/rubrics/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/rubrics/experimental/hybrid_math_rubric.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/rubrics/judge_rubric.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/rubrics/math_rubric.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/rubrics/rubric.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/rubrics/rubric_group.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/scripts/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/scripts/build.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/scripts/eval.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/scripts/gepa.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/scripts/init.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/scripts/install.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/scripts/rl.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/scripts/setup.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/scripts/train.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/scripts/tui.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/scripts/vllm.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/serve/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/serve/client/env_client.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/serve/client/zmq_env_client.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/serve/server/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/serve/server/env_router.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/serve/server/env_server.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/serve/server/env_worker.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/serve/server/zmq_env_server.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/serve/types.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/types.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/async_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/client_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/config_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/data_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/env_config_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/env_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/error_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/eval_display.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/eval_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/heartbeat.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/import_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/install_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/interception_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/logging_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/message_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/metric_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/path_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/pricing_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/process_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/response_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/save_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/serve_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/thread_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/threaded_sandbox_client.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/tool_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/usage_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/utils/version_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/ENVIRONMENT_BEST_PRACTICES.md +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/README.md +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/RE_MIGRATION.md +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/artifact.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/config.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/env.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/model.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/program.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/runtime.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/runtime_handles.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/sandbox.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/state.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/task.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/taskset.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/toolset.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/types.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/user.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/__init__.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/binding_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/config_callable_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/config_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/endpoint_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/json_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/judge_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/lifecycle_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/mcp_proxy_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/mcp_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/object_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/program_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/prompt_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/runtime_owner_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/runtime_registry.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/sandbox_program_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/sandbox_python_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/sandbox_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/scoring_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/serialization_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/task_freeze_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/taskset_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/tool_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/toolset_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/trajectory_utils.py +0 -0
- {verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/v1/utils/usage_utils.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: verifiers
|
|
3
|
-
Version: 0.1.15.
|
|
3
|
+
Version: 0.1.15.dev153
|
|
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
|
|
@@ -34,6 +34,7 @@ from verifiers.envs.experimental.composable import SandboxSpec, SandboxTaskSet
|
|
|
34
34
|
logger = logging.getLogger(__name__)
|
|
35
35
|
|
|
36
36
|
DATASET_NAME = "AweAI-Team/Scale-SWE"
|
|
37
|
+
REGISTRY_PREFIX = "us-central1-docker.pkg.dev/prime-intellect-platform/prod-sandbox"
|
|
37
38
|
|
|
38
39
|
ENV_VARS_SCALE_SWE = {
|
|
39
40
|
"PATH": (
|
|
@@ -70,6 +71,13 @@ if __name__ == "__main__":
|
|
|
70
71
|
"""
|
|
71
72
|
|
|
72
73
|
|
|
74
|
+
def _build_docker_image(info: dict) -> str:
|
|
75
|
+
image = info["image_url"]
|
|
76
|
+
if image.startswith(REGISTRY_PREFIX):
|
|
77
|
+
return image
|
|
78
|
+
return f"{REGISTRY_PREFIX}/{image}"
|
|
79
|
+
|
|
80
|
+
|
|
73
81
|
class ScaleSWERubric(vf.Rubric):
|
|
74
82
|
"""Scores Scale-SWE tasks by checking merged F2P/P2P pytest results."""
|
|
75
83
|
|
|
@@ -155,7 +163,7 @@ class ScaleSWETaskSet(SandboxTaskSet):
|
|
|
155
163
|
|
|
156
164
|
def get_sandbox_spec(self, info: dict) -> SandboxSpec:
|
|
157
165
|
return SandboxSpec(
|
|
158
|
-
image=info
|
|
166
|
+
image=_build_docker_image(info),
|
|
159
167
|
timeout_minutes=self.timeout_minutes,
|
|
160
168
|
)
|
|
161
169
|
|
|
@@ -533,6 +533,25 @@ def _timing_parts(
|
|
|
533
533
|
return parts
|
|
534
534
|
|
|
535
535
|
|
|
536
|
+
def format_timing_plain(
|
|
537
|
+
setup: float = 0.0,
|
|
538
|
+
generation: float = 0.0,
|
|
539
|
+
scoring: float = 0.0,
|
|
540
|
+
overhead: float = 0.0,
|
|
541
|
+
model: float = 0.0,
|
|
542
|
+
env: float = 0.0,
|
|
543
|
+
) -> str:
|
|
544
|
+
"""Return a plain-text compact timing breakdown (no Rich styling)."""
|
|
545
|
+
parts = _timing_parts(setup, generation, scoring, overhead, model, env)
|
|
546
|
+
segments: list[str] = []
|
|
547
|
+
for label, value, subs in parts:
|
|
548
|
+
segment = f"{label} {value}"
|
|
549
|
+
if subs:
|
|
550
|
+
segment += " (" + " + ".join(f"{sl} {sv}" for sl, sv in subs) + ")"
|
|
551
|
+
segments.append(segment)
|
|
552
|
+
return " + ".join(segments)
|
|
553
|
+
|
|
554
|
+
|
|
536
555
|
def format_timing_rich(
|
|
537
556
|
setup: float = 0.0,
|
|
538
557
|
generation: float = 0.0,
|
|
@@ -71,6 +71,7 @@ from .utils.sandbox_program_utils import (
|
|
|
71
71
|
python_program_sandbox,
|
|
72
72
|
run_sandbox_python_program,
|
|
73
73
|
)
|
|
74
|
+
from .utils.logging_utils import log_rollout_finish, log_rollout_start
|
|
74
75
|
from .utils.prompt_utils import (
|
|
75
76
|
SystemPrompt,
|
|
76
77
|
SystemPromptStrategy,
|
|
@@ -241,6 +242,7 @@ class Harness(RuntimeOwnerMixin[ConfigT], Generic[ConfigT]):
|
|
|
241
242
|
|
|
242
243
|
async def run(self, task: Task, state: State | None = None) -> State:
|
|
243
244
|
state = await self.init_state(task) if state is None else state
|
|
245
|
+
log_rollout_start(state)
|
|
244
246
|
timing_recorded = False
|
|
245
247
|
completed = False
|
|
246
248
|
try:
|
|
@@ -272,6 +274,7 @@ class Harness(RuntimeOwnerMixin[ConfigT], Generic[ConfigT]):
|
|
|
272
274
|
state.strip_runtime_handles()
|
|
273
275
|
elif completed:
|
|
274
276
|
state.assert_serializable()
|
|
277
|
+
log_rollout_finish(state)
|
|
275
278
|
return state
|
|
276
279
|
|
|
277
280
|
def record_error(self, state: State, error: Error) -> None:
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import logging
|
|
2
|
+
from collections import Counter
|
|
3
|
+
|
|
4
|
+
from verifiers.utils.display_utils import format_numeric, format_timing_plain
|
|
5
|
+
from verifiers.utils.logging_utils import truncate
|
|
6
|
+
|
|
7
|
+
from ..state import State
|
|
8
|
+
|
|
9
|
+
logger = logging.getLogger("verifiers.v1.rollout")
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
def log_rollout_start(state: State) -> None:
|
|
13
|
+
logger.info(
|
|
14
|
+
f"Started example_id={state.get('example_id')} "
|
|
15
|
+
f"| trajectory_id={state.get('trajectory_id')}"
|
|
16
|
+
)
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
def log_rollout_finish(state: State) -> None:
|
|
20
|
+
tools = Counter(
|
|
21
|
+
call["name"]
|
|
22
|
+
for step in state.get("trajectory") or []
|
|
23
|
+
for message in step.get("completion") or []
|
|
24
|
+
for call in message.get("tool_calls") or []
|
|
25
|
+
)
|
|
26
|
+
timing = state.get("timing") or {}
|
|
27
|
+
metrics = state.get("metrics") or {}
|
|
28
|
+
|
|
29
|
+
def duration(phase: str) -> float:
|
|
30
|
+
return (timing.get(phase) or {}).get("duration", 0.0)
|
|
31
|
+
|
|
32
|
+
tool_summary = ", ".join(f"{name}: {n}" for name, n in tools.most_common())
|
|
33
|
+
metric_summary = ", ".join(
|
|
34
|
+
f"{name}: {format_numeric(value)}" for name, value in metrics.items()
|
|
35
|
+
)
|
|
36
|
+
parts = [
|
|
37
|
+
f"Finished example_id={state.get('example_id')}",
|
|
38
|
+
f"trajectory_id={state.get('trajectory_id')}",
|
|
39
|
+
f"tools=[{tool_summary}]",
|
|
40
|
+
"timing="
|
|
41
|
+
+ format_timing_plain(
|
|
42
|
+
setup=duration("setup"),
|
|
43
|
+
generation=duration("generation"),
|
|
44
|
+
scoring=duration("scoring"),
|
|
45
|
+
overhead=timing.get("overhead", 0.0),
|
|
46
|
+
model=duration("model"),
|
|
47
|
+
env=duration("env"),
|
|
48
|
+
),
|
|
49
|
+
f"stop={state.get('stop_condition')}",
|
|
50
|
+
f"reward={format_numeric(state.get('reward') or 0.0)}",
|
|
51
|
+
"metrics={" + metric_summary + "}",
|
|
52
|
+
]
|
|
53
|
+
if state.get("error"):
|
|
54
|
+
parts.append(f"error={truncate(state['error']['error_chain_str'], 200)}")
|
|
55
|
+
if state.get("is_truncated"):
|
|
56
|
+
parts.append("truncated=True")
|
|
57
|
+
logger.info(" | ".join(parts))
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/tests/test_langchain_deep_agents_wikispeedia.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/clients/anthropic_messages_client.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/clients/openai_completions_client.py
RENAMED
|
File without changes
|
{verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/clients/openai_responses_client.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/cli_agent_env.py
RENAMED
|
File without changes
|
{verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/README.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/composable/task.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/harbor_env/env.py
RENAMED
|
File without changes
|
{verifiers-0.1.15.dev151 → verifiers-0.1.15.dev153}/verifiers/envs/experimental/harbor_env/mcp.py
RENAMED
|
File without changes
|