eval-protocol 0.2.95.dev1__tar.gz → 0.2.96__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.
- {eval_protocol-0.2.95.dev1/eval_protocol.egg-info → eval_protocol-0.2.96}/PKG-INFO +2 -2
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/_version.py +3 -3
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/cli_commands/create_rft.py +7 -2
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/fireworks_rft.py +19 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp/execution/base_policy.py +7 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp/execution/policy.py +8 -8
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/models.py +1 -1
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96/eval_protocol.egg-info}/PKG-INFO +2 -2
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol.egg-info/SOURCES.txt +1 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol.egg-info/requires.txt +1 -1
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/pyproject.toml +1 -1
- eval_protocol-0.2.96/tests/test_litellm_policy_provider_fields.py +95 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/LICENSE +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/README.md +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/development/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/development/normalize_sandbox_fusion.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/development/utils/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/development/utils/generate_api_key.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/development/utils/subprocess_manager.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/__main__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/adapters/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/adapters/base.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/adapters/bigquery.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/adapters/braintrust.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/adapters/fireworks_tracing.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/adapters/huggingface.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/adapters/langchain.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/adapters/langfuse.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/adapters/langsmith.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/adapters/openai_responses.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/adapters/trl.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/adapters/utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/adapters/weave.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/agent/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/agent/models.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/agent/orchestrator.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/agent/resource_abc.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/agent/resource_pool.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/agent/resources/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/agent/resources/bfcl_envs/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/agent/resources/bfcl_envs/gorilla_file_system.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/agent/resources/bfcl_envs/math_api.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/agent/resources/bfcl_envs/posting_api.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/agent/resources/bfcl_sim_api_resource.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/agent/resources/docker_resource.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/agent/resources/filesystem_resource.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/agent/resources/python_state_resource.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/agent/resources/sql_resource.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/agent/task_manager.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/agent/tool_registry.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/auth.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/benchmarks/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/benchmarks/data/airline_dataset.jsonl +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/benchmarks/data/retail_dataset.jsonl +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/benchmarks/test_aime25.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/benchmarks/test_frozen_lake.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/benchmarks/test_glm_streaming_compliance.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/benchmarks/test_gpqa.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/benchmarks/test_livebench_data_analysis.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/benchmarks/test_tau_bench_airline.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/benchmarks/test_tau_bench_retail.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/cli.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/cli_commands/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/cli_commands/agent_eval_cmd.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/cli_commands/common.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/cli_commands/deploy.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/cli_commands/deploy_mcp.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/cli_commands/local_test.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/cli_commands/logs.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/cli_commands/preview.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/cli_commands/run_eval_cmd.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/cli_commands/upload.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/cli_commands/utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/common_utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/config.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/data_loader/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/data_loader/dynamic_data_loader.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/data_loader/factory_data_loader.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/data_loader/inline_data_loader.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/data_loader/jsonl_data_loader.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/data_loader/models.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/dataset_logger/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/dataset_logger/dataset_logger.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/dataset_logger/local_fs_dataset_logger_adapter.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/dataset_logger/sqlite_dataset_logger_adapter.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/dataset_logger/sqlite_evaluation_row_store.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/datasets/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/datasets/loader.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/directory_utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/evaluation.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/event_bus/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/event_bus/event_bus.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/event_bus/logger.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/event_bus/sqlite_event_bus.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/event_bus/sqlite_event_bus_database.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/exceptions.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/execution/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/execution/pipeline.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/gcp_tools.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/generation/cache.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/generation/clients/base.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/generation/clients.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/generic_server.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/get_pep440_version.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/human_id/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/human_id/dictionary.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/integrations/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/integrations/deepeval.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/integrations/openai_rft.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/integrations/openeval.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/integrations/tinker_cookbook.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/integrations/tinker_rollout_processor.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/integrations/trl.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/log_utils/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/log_utils/elasticsearch_client.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/log_utils/elasticsearch_direct_http_handler.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/log_utils/elasticsearch_index_manager.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/log_utils/fireworks_tracing_http_handler.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/log_utils/init.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/log_utils/rollout_context.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/log_utils/rollout_id_filter.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/log_utils/util.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/logging_utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp/adapter.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp/client/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp/client/connection.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp/clients.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp/execution/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp/execution/manager.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp/execution/vllm_policy.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp/grid_renderer.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp/mcp_multi_client.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp/mcpgym.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp/process_manager.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp/session/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp/session/manager.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp/simple_process_manager.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp/simulation_server.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp_agent/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp_agent/config.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp_agent/main.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp_agent/orchestration/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp_agent/orchestration/base_client.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp_agent/orchestration/local_docker_client.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp_agent/orchestration/stdio_mcp_client_helper.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp_env.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp_servers/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp_servers/frozen_lake/frozen_lake_adapter.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp_servers/frozen_lake/frozen_lake_mcp.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp_servers/frozen_lake/server.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp_servers/tau2/README.md +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp_servers/tau2/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp_servers/tau2/airplane_environment/airline_environment.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp_servers/tau2/mock_environment/mock_environment.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp_servers/tau2/retail_environment/retail_environment.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp_servers/tau2/server.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp_servers/tau2/tau2_mcp.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp_servers/tau2/tests/system_prompts/airline_agent_system_prompt.md +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp_servers/tau2/tests/system_prompts/mock_agent_system_prompt.md +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp_servers/tau2/tests/system_prompts/retail_agent_system_prompt.md +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp_servers/tau2/tests/test_tau2_e2e.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/packaging.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/platform_api.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/playback_policy.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/proxy/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/proxy/proxy_core/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/proxy/proxy_core/app.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/proxy/proxy_core/auth.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/proxy/proxy_core/langfuse.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/proxy/proxy_core/litellm.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/proxy/proxy_core/main.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/proxy/proxy_core/models.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/proxy/proxy_core/redis_utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/default_agent_rollout_processor.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/default_dataset_adapter.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/default_langchain_rollout_processor.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/default_mcp_gym_rollout_processor.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/default_no_op_rollout_processor.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/default_pydantic_ai_rollout_processor.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/default_single_turn_rollout_process.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/dual_mode_wrapper.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/elasticsearch_setup.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/evaluation_test.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/evaluation_test_postprocess.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/evaluation_test_utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/exception_config.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/execution.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/generate_parameter_combinations.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/github_action_rollout_processor.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/handle_persist_flow.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/integrations/openenv_trl_vllm.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/openenv_rollout_processor.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/parameterize.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/plugin.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/remote_rollout_processor.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/rollout_processor.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/rollout_result_post_processor.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/store_experiment_link.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/store_results_url.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/tracing_utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/types.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/pytest/validate_signature.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/quickstart/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/quickstart/aha_judge/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/quickstart/aha_judge/llm_judge.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/quickstart/aha_judge/llm_judge_braintrust.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/quickstart/aha_judge/llm_judge_langfuse.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/quickstart/aha_judge/llm_judge_langsmith.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/quickstart/aha_judge/llm_judge_openai_responses.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/quickstart/aha_judge/utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/quickstart/llm_judge.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/quickstart/llm_judge_braintrust.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/quickstart/svg_agent/evaluator/test_svgagent.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/quickstart/svg_agent/evaluator/utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/quickstart/svg_agent/vercel_svg_server/api/init.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/quickstart/utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/resources.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/reward_function.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rewards/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rewards/accuracy.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rewards/accuracy_length.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rewards/apps_coding_reward.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rewards/apps_execution_utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rewards/apps_testing_util.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rewards/bfcl_reward.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rewards/code_execution.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rewards/code_execution_utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rewards/cpp_code.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rewards/deepcoder_reward.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rewards/format.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rewards/function_calling.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rewards/json_schema.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rewards/language_consistency.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rewards/lean_prover.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rewards/length.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rewards/list_comparison_math_reward.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rewards/math.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rewards/multiple_choice_math_reward.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rewards/reasoning_steps.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rewards/repetition.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rewards/tag_count.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/rl_processing.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/server.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/stats/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/stats/confidence_intervals.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/typed_interface.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/types/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/types/errors.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/types/remote_rollout_processor.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/types/types.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/utils/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/utils/batch_evaluation.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/utils/batch_transformation.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/utils/browser_utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/utils/check_server_status.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/utils/dataset_helpers.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/utils/evaluation_row_utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/utils/logs_models.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/utils/logs_server.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/utils/module_loader.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/utils/packaging_utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/utils/show_results_url.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/utils/static_policy.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/utils/subprocess_utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/utils/vite_server.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol.egg-info/dependency_links.txt +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol.egg-info/entry_points.txt +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol.egg-info/top_level.txt +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/setup.cfg +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/setup.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_accuracy.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_accuracy_length.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_adapters_e2e.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_agent_orchestrator.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_agent_resources.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_auth.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_batch_evaluation.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_cli.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_cli_agent.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_cli_args.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_cli_create_rft.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_cli_local_test.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_code_execution.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_config.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_control_plane_separation.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_cpp_code.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_data_driven_task_manager.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_deepcoder_reward.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_deepeval_integration.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_deploy_integration.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_directory_utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_e2b_integration.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_e2b_js_integration.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_edge_cases.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_ep_upload_e2e.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_eval_protocol_import.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_evaluation.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_evaluation_integration.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_evaluation_postprocess.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_evaluation_preview_integration.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_event_bus.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_event_bus_helper.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_examples_end_to_end.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_exception_config.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_exceptions.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_fireworks_api.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_format.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_fractional_code.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_function_calling.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_gcp_tools.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_generic_server.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_human_id.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_integration.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_json_schema.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_kwargs_validation.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_language_consistency.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_lean_prover.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_lean_prover_runner.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_length.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_list_comparison_math_reward.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_logs_server.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_logs_server_simple.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_math.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_message_field_filtering.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_minimal.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_models.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_models_rl.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_multiple_choice_math_reward.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_n_variant_batch_integration.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_n_variant_integration.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_openai_compatibility.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_openai_rft_integration.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_openeval_integration.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_packaging.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_parallel_rollouts.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_platform_api.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_quickstart_utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_readiness.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_reasoning_steps.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_repetition.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_repetition_debug.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_retry_mechanism.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_reward_function.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_reward_protocol_import.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_rl_processing.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_rollout_control_plane_integration.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_server.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_show_results_url.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_status_migration_changes.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_status_migration_integration.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_status_model.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_tag_count.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_tau_bench_airline_smoke.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_typed_interface.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_typed_interface_rl.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_upload_entrypoint.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_url_handling.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/tests/test_vite_server.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/agent/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/agent/base.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/agent/llm_agent.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/api_service/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/api_service/api_config.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/api_service/data_model.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/api_service/simulation_service.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/cli.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/config.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/data/domains/airline/policy.md +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/data/domains/mock/policy.md +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/data/domains/mock/policy_solo.md +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/data/domains/retail/policy.md +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/data/domains/telecom/main_policy.md +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/data/domains/telecom/main_policy_solo.md +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/data/domains/telecom/tech_support_manual.md +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/data/domains/telecom/tech_support_workflow.md +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/data/domains/telecom/tech_support_workflow_solo.md +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/data/user_simulator/simulation_guidelines.md +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/data/user_simulator/simulation_guidelines_tools.md +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/data_model/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/data_model/message.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/data_model/simulation.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/data_model/tasks.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/airline/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/airline/data_model.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/airline/environment.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/airline/tools.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/airline/utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/mock/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/mock/data_model.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/mock/environment.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/mock/tools.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/mock/utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/retail/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/retail/data_model.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/retail/environment.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/retail/tools.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/retail/utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/telecom/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/telecom/data_model.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/telecom/environment.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/telecom/tasks/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/telecom/tasks/const.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/telecom/tasks/create_tasks.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/telecom/tasks/manager.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/telecom/tasks/mms_issues.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/telecom/tasks/mobile_data_issues.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/telecom/tasks/service_issues.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/telecom/tasks/utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/telecom/tools.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/telecom/user_data_model.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/telecom/user_tools.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/domains/telecom/utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/environment/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/environment/db.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/environment/environment.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/environment/server.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/environment/tool.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/environment/toolkit.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/environment/utils/interface_agent.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/evaluator/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/evaluator/evaluator.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/evaluator/evaluator_action.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/evaluator/evaluator_base.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/evaluator/evaluator_communicate.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/evaluator/evaluator_env.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/evaluator/evaluator_nl_assertions.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/metrics/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/metrics/agent_metrics.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/metrics/break_down_metrics.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/orchestrator/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/orchestrator/environment_manager.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/orchestrator/orchestrator.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/orchestrator/utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/registry.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/run.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/scripts/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/scripts/check_data.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/scripts/show_domain_doc.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/scripts/start_servers.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/scripts/view_simulations.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/user/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/user/base.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/user/user_simulator.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/utils/__init__.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/utils/display.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/utils/io_utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/utils/llm_utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/utils/pydantic_utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vendor/tau2/utils/utils.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/versioneer.py +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vite-app/dist/assets/favicon-BkAAWQga.png +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vite-app/dist/assets/index-CuQbfdPD.js +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vite-app/dist/assets/index-CuQbfdPD.js.map +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vite-app/dist/assets/index-iZp_HgyW.css +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vite-app/dist/assets/logo-light-BprIBJQW.png +0 -0
- {eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/vite-app/dist/index.html +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: eval-protocol
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.96
|
|
4
4
|
Summary: The official Python SDK for Eval Protocol (EP.) EP is an open protocol that standardizes how developers author evals for large language model (LLM) applications.
|
|
5
5
|
Author-email: Fireworks AI <info@fireworks.ai>
|
|
6
6
|
License-Expression: MIT
|
|
@@ -34,7 +34,7 @@ Requires-Dist: toml>=0.10.0
|
|
|
34
34
|
Requires-Dist: loguru>=0.6.0
|
|
35
35
|
Requires-Dist: docstring-parser>=0.15
|
|
36
36
|
Requires-Dist: rich>=12.0.0
|
|
37
|
-
Requires-Dist: psutil>=
|
|
37
|
+
Requires-Dist: psutil>=6.0.0
|
|
38
38
|
Requires-Dist: addict>=2.4.0
|
|
39
39
|
Requires-Dist: deepdiff>=6.0.0
|
|
40
40
|
Requires-Dist: websockets>=15.0.1
|
|
@@ -8,11 +8,11 @@ import json
|
|
|
8
8
|
|
|
9
9
|
version_json = '''
|
|
10
10
|
{
|
|
11
|
-
"date": "2025-12-
|
|
11
|
+
"date": "2025-12-08T17:48:51-0800",
|
|
12
12
|
"dirty": false,
|
|
13
13
|
"error": null,
|
|
14
|
-
"full-revisionid": "
|
|
15
|
-
"version": "0.2.
|
|
14
|
+
"full-revisionid": "0902602fdca3f7d80e259fd29bd293758a79c44a",
|
|
15
|
+
"version": "0.2.96"
|
|
16
16
|
}
|
|
17
17
|
''' # END VERSION_JSON
|
|
18
18
|
|
|
@@ -702,8 +702,13 @@ def _create_rft_job(
|
|
|
702
702
|
print(f"Prepared RFT job for evaluator '{evaluator_id}' using dataset '{dataset_id}'")
|
|
703
703
|
if getattr(args, "evaluation_dataset", None):
|
|
704
704
|
body["evaluationDataset"] = args.evaluation_dataset
|
|
705
|
-
|
|
706
|
-
|
|
705
|
+
|
|
706
|
+
output_model_arg = getattr(args, "output_model", None)
|
|
707
|
+
if output_model_arg:
|
|
708
|
+
if len(output_model_arg) > 63:
|
|
709
|
+
print(f"Error: Output model name '{output_model_arg}' exceeds 63 characters.")
|
|
710
|
+
return 1
|
|
711
|
+
body.setdefault("trainingConfig", {})["outputModel"] = f"accounts/{account_id}/models/{output_model_arg}"
|
|
707
712
|
else:
|
|
708
713
|
# Auto-generate output model name if not provided
|
|
709
714
|
auto_output_model = build_default_output_model(evaluator_id)
|
|
@@ -6,6 +6,7 @@ import sys
|
|
|
6
6
|
import tempfile
|
|
7
7
|
import time
|
|
8
8
|
import uuid
|
|
9
|
+
import hashlib
|
|
9
10
|
from pathlib import Path
|
|
10
11
|
from typing import Any, Callable, Dict, Iterable, Optional, Tuple
|
|
11
12
|
from urllib.parse import urlencode
|
|
@@ -216,6 +217,24 @@ def build_default_dataset_id(evaluator_id: str) -> str:
|
|
|
216
217
|
def build_default_output_model(evaluator_id: str) -> str:
|
|
217
218
|
base = evaluator_id.lower().replace("_", "-")
|
|
218
219
|
uuid_suffix = str(uuid.uuid4())[:4]
|
|
220
|
+
|
|
221
|
+
# suffix is "-rft-{4chars}" -> 9 chars
|
|
222
|
+
suffix_len = 9
|
|
223
|
+
max_len = 63
|
|
224
|
+
|
|
225
|
+
# Check if we need to truncate
|
|
226
|
+
if len(base) + suffix_len > max_len:
|
|
227
|
+
# Calculate hash of the full base to preserve uniqueness
|
|
228
|
+
hash_digest = hashlib.sha256(base.encode("utf-8")).hexdigest()[:6]
|
|
229
|
+
# New structure: {truncated_base}-{hash}-{uuid_suffix}
|
|
230
|
+
# Space needed for "-{hash}" is 1 + 6 = 7
|
|
231
|
+
hash_part_len = 7
|
|
232
|
+
|
|
233
|
+
allowed_base_len = max_len - suffix_len - hash_part_len
|
|
234
|
+
truncated_base = base[:allowed_base_len].strip("-")
|
|
235
|
+
|
|
236
|
+
return f"{truncated_base}-{hash_digest}-rft-{uuid_suffix}"
|
|
237
|
+
|
|
219
238
|
return f"{base}-rft-{uuid_suffix}"
|
|
220
239
|
|
|
221
240
|
|
{eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp/execution/base_policy.py
RENAMED
|
@@ -199,6 +199,13 @@ class LLMBasePolicy(PlaybackPolicyBase, ABC):
|
|
|
199
199
|
if message.get("tool_calls"):
|
|
200
200
|
assistant_message_for_history["tool_calls"] = message["tool_calls"]
|
|
201
201
|
|
|
202
|
+
# Preserve specific fields from provider_specific_fields if present
|
|
203
|
+
if message.get("provider_specific_fields"):
|
|
204
|
+
if message["provider_specific_fields"].get("reasoning_details"):
|
|
205
|
+
assistant_message_for_history["reasoning_details"] = message["provider_specific_fields"][
|
|
206
|
+
"reasoning_details"
|
|
207
|
+
]
|
|
208
|
+
|
|
202
209
|
# Add to actual conversation history
|
|
203
210
|
conversation_history.append(assistant_message_for_history)
|
|
204
211
|
|
|
@@ -146,7 +146,7 @@ class LiteLLMPolicy(LLMBasePolicy):
|
|
|
146
146
|
Clean messages with only OpenAI API compatible fields
|
|
147
147
|
"""
|
|
148
148
|
# Standard OpenAI message fields
|
|
149
|
-
allowed_fields = {"role", "content", "tool_calls", "tool_call_id", "name"}
|
|
149
|
+
allowed_fields = {"role", "content", "tool_calls", "tool_call_id", "name", "reasoning_details"}
|
|
150
150
|
|
|
151
151
|
clean_messages = []
|
|
152
152
|
for msg in messages:
|
|
@@ -217,12 +217,15 @@ class LiteLLMPolicy(LLMBasePolicy):
|
|
|
217
217
|
logger.debug(f"🔄 API call for model: {self.model_id}")
|
|
218
218
|
|
|
219
219
|
# LiteLLM already returns OpenAI-compatible format
|
|
220
|
+
message_obj = getattr(response.choices[0], "message", object())
|
|
221
|
+
|
|
220
222
|
return {
|
|
221
223
|
"choices": [
|
|
222
224
|
{
|
|
223
225
|
"message": {
|
|
224
|
-
"role": getattr(
|
|
225
|
-
"content": getattr(
|
|
226
|
+
"role": getattr(message_obj, "role", "assistant"),
|
|
227
|
+
"content": getattr(message_obj, "content", None),
|
|
228
|
+
"provider_specific_fields": getattr(message_obj, "provider_specific_fields", None),
|
|
226
229
|
"tool_calls": (
|
|
227
230
|
[
|
|
228
231
|
{
|
|
@@ -233,12 +236,9 @@ class LiteLLMPolicy(LLMBasePolicy):
|
|
|
233
236
|
"arguments": getattr(getattr(tc, "function", None), "arguments", "{}"),
|
|
234
237
|
},
|
|
235
238
|
}
|
|
236
|
-
for tc in (
|
|
237
|
-
getattr(getattr(response.choices[0], "message", object()), "tool_calls", [])
|
|
238
|
-
or []
|
|
239
|
-
)
|
|
239
|
+
for tc in (getattr(message_obj, "tool_calls", []) or [])
|
|
240
240
|
]
|
|
241
|
-
if getattr(
|
|
241
|
+
if getattr(message_obj, "tool_calls", None)
|
|
242
242
|
else []
|
|
243
243
|
),
|
|
244
244
|
},
|
|
@@ -550,7 +550,7 @@ class MetricResult(BaseModel):
|
|
|
550
550
|
"""
|
|
551
551
|
|
|
552
552
|
is_score_valid: bool = True
|
|
553
|
-
score: float = Field(...,
|
|
553
|
+
score: float = Field(..., description="The score for this metric.")
|
|
554
554
|
reason: str
|
|
555
555
|
data: Dict[str, Any] = Field(default_factory=dict, description="Optional extra metric data for debugging.")
|
|
556
556
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: eval-protocol
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.96
|
|
4
4
|
Summary: The official Python SDK for Eval Protocol (EP.) EP is an open protocol that standardizes how developers author evals for large language model (LLM) applications.
|
|
5
5
|
Author-email: Fireworks AI <info@fireworks.ai>
|
|
6
6
|
License-Expression: MIT
|
|
@@ -34,7 +34,7 @@ Requires-Dist: toml>=0.10.0
|
|
|
34
34
|
Requires-Dist: loguru>=0.6.0
|
|
35
35
|
Requires-Dist: docstring-parser>=0.15
|
|
36
36
|
Requires-Dist: rich>=12.0.0
|
|
37
|
-
Requires-Dist: psutil>=
|
|
37
|
+
Requires-Dist: psutil>=6.0.0
|
|
38
38
|
Requires-Dist: addict>=2.4.0
|
|
39
39
|
Requires-Dist: deepdiff>=6.0.0
|
|
40
40
|
Requires-Dist: websockets>=15.0.1
|
|
@@ -326,6 +326,7 @@ tests/test_lean_prover.py
|
|
|
326
326
|
tests/test_lean_prover_runner.py
|
|
327
327
|
tests/test_length.py
|
|
328
328
|
tests/test_list_comparison_math_reward.py
|
|
329
|
+
tests/test_litellm_policy_provider_fields.py
|
|
329
330
|
tests/test_logs_server.py
|
|
330
331
|
tests/test_logs_server_simple.py
|
|
331
332
|
tests/test_math.py
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import types
|
|
2
|
+
|
|
3
|
+
import pytest
|
|
4
|
+
|
|
5
|
+
import eval_protocol.mcp.execution.policy as policy_mod
|
|
6
|
+
from eval_protocol.mcp.execution.policy import LiteLLMPolicy
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
@pytest.mark.asyncio
|
|
10
|
+
async def test_litellm_policy_surfaces_provider_specific_reasoning_details(monkeypatch):
|
|
11
|
+
"""
|
|
12
|
+
Ensure that provider_specific_fields from the LiteLLM message object are
|
|
13
|
+
preserved on the returned message dict from LiteLLMPolicy._make_llm_call.
|
|
14
|
+
"""
|
|
15
|
+
|
|
16
|
+
# Define a fake ModelResponse base class and patch the module's ModelResponse
|
|
17
|
+
class FakeModelResponseBase: ...
|
|
18
|
+
|
|
19
|
+
policy_mod.ModelResponse = FakeModelResponseBase
|
|
20
|
+
|
|
21
|
+
async def fake_acompletion(*args, **kwargs):
|
|
22
|
+
# This mimics the LiteLLM Message object shape we rely on in policy._make_llm_call
|
|
23
|
+
message_obj = types.SimpleNamespace(
|
|
24
|
+
role="assistant",
|
|
25
|
+
content="",
|
|
26
|
+
tool_calls=[
|
|
27
|
+
types.SimpleNamespace(
|
|
28
|
+
id="tool_get_reservation_details_123",
|
|
29
|
+
type="function",
|
|
30
|
+
function=types.SimpleNamespace(
|
|
31
|
+
name="get_reservation_details",
|
|
32
|
+
arguments='{"reservation_id":"EHGLP3"}',
|
|
33
|
+
),
|
|
34
|
+
)
|
|
35
|
+
],
|
|
36
|
+
provider_specific_fields={
|
|
37
|
+
"reasoning_details": [{"id": "tool_get_reservation_details_123", "type": "reasoning.encrypted"}],
|
|
38
|
+
"custom_field": "keep_me",
|
|
39
|
+
},
|
|
40
|
+
)
|
|
41
|
+
|
|
42
|
+
class FakeModelResponse(FakeModelResponseBase):
|
|
43
|
+
def __init__(self) -> None:
|
|
44
|
+
self.choices = [
|
|
45
|
+
types.SimpleNamespace(
|
|
46
|
+
finish_reason="tool_calls",
|
|
47
|
+
index=0,
|
|
48
|
+
message=message_obj,
|
|
49
|
+
)
|
|
50
|
+
]
|
|
51
|
+
self.usage = types.SimpleNamespace(
|
|
52
|
+
prompt_tokens=10,
|
|
53
|
+
completion_tokens=5,
|
|
54
|
+
total_tokens=15,
|
|
55
|
+
)
|
|
56
|
+
|
|
57
|
+
return FakeModelResponse()
|
|
58
|
+
|
|
59
|
+
# Patch acompletion so we don't hit the network
|
|
60
|
+
monkeypatch.setattr(policy_mod, "acompletion", fake_acompletion)
|
|
61
|
+
|
|
62
|
+
# Use a concrete policy instance; base_url/model_id values don't matter for this unit test
|
|
63
|
+
policy = LiteLLMPolicy(model_id="openrouter/google/gemini-3-pro-preview", use_caching=False)
|
|
64
|
+
|
|
65
|
+
messages = [
|
|
66
|
+
{
|
|
67
|
+
"role": "assistant",
|
|
68
|
+
"content": "",
|
|
69
|
+
"tool_calls": [
|
|
70
|
+
{
|
|
71
|
+
"id": "tool_get_reservation_details_123",
|
|
72
|
+
"type": "function",
|
|
73
|
+
"function": {"name": "get_reservation_details", "arguments": '{"reservation_id":"EHGLP3"}'},
|
|
74
|
+
}
|
|
75
|
+
],
|
|
76
|
+
}
|
|
77
|
+
]
|
|
78
|
+
|
|
79
|
+
# No tools are needed for this test – we only care about the returned message shape
|
|
80
|
+
result = await policy._make_llm_call(messages, tools=[])
|
|
81
|
+
|
|
82
|
+
assert "choices" in result
|
|
83
|
+
assert len(result["choices"]) == 1
|
|
84
|
+
msg = result["choices"][0]["message"]
|
|
85
|
+
|
|
86
|
+
# Core fields should be present
|
|
87
|
+
assert msg["role"] == "assistant"
|
|
88
|
+
assert isinstance(msg.get("tool_calls"), list)
|
|
89
|
+
|
|
90
|
+
# provider_specific_fields should be preserved on the message
|
|
91
|
+
ps = msg.get("provider_specific_fields")
|
|
92
|
+
assert isinstance(ps, dict)
|
|
93
|
+
assert ps["reasoning_details"] == [{"id": "tool_get_reservation_details_123", "type": "reasoning.encrypted"}]
|
|
94
|
+
# Non-core provider_specific_fields should also be preserved
|
|
95
|
+
assert ps.get("custom_field") == "keep_me"
|
|
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
|
{eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/adapters/fireworks_tracing.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/adapters/openai_responses.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
|
{eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/agent/resources/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/agent/resources/docker_resource.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/agent/resources/sql_resource.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
|
{eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/benchmarks/test_frozen_lake.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/benchmarks/test_tau_bench_retail.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/cli_commands/agent_eval_cmd.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/cli_commands/run_eval_cmd.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/data_loader/dynamic_data_loader.py
RENAMED
|
File without changes
|
{eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/data_loader/factory_data_loader.py
RENAMED
|
File without changes
|
{eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/data_loader/inline_data_loader.py
RENAMED
|
File without changes
|
{eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/data_loader/jsonl_data_loader.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/dataset_logger/dataset_logger.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
|
{eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/event_bus/sqlite_event_bus.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
|
{eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/integrations/tinker_cookbook.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/log_utils/elasticsearch_client.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/log_utils/rollout_context.py
RENAMED
|
File without changes
|
{eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/log_utils/rollout_id_filter.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
|
{eval_protocol-0.2.95.dev1 → eval_protocol-0.2.96}/eval_protocol/mcp/execution/vllm_policy.py
RENAMED
|
File without changes
|
|
File without changes
|