From 305943cc94a982d346de13d7c80de5ad0cac5b45 Mon Sep 17 00:00:00 2001 From: optimass Date: Wed, 22 Jan 2025 18:38:50 +0000 Subject: [PATCH] fix --- .../src/browsergym/experiments/benchmark/base.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/browsergym/experiments/src/browsergym/experiments/benchmark/base.py b/browsergym/experiments/src/browsergym/experiments/benchmark/base.py index d20ac370..df4d20eb 100644 --- a/browsergym/experiments/src/browsergym/experiments/benchmark/base.py +++ b/browsergym/experiments/src/browsergym/experiments/benchmark/base.py @@ -137,9 +137,12 @@ def subset_from_list( if not task_list: raise ValueError("Task list cannot be empty") + # Convert task_list to set for more efficient lookups + task_set = set(task_list) + # Validate that all requested tasks exist in the original benchmark existing_tasks = {env_args.task_name for env_args in self.env_args_list} - invalid_tasks = set(task_list) - existing_tasks + invalid_tasks = task_set - existing_tasks if invalid_tasks: raise ValueError(f"The following tasks do not exist in the benchmark: {invalid_tasks}") @@ -154,7 +157,7 @@ def subset_from_list( supports_parallel_seeds=self.supports_parallel_seeds, backends=self.backends, env_args_list=[ - env_args for env_args in self.env_args_list if env_args.task_name in task_list + env_args for env_args in self.env_args_list if env_args.task_name in task_set ], task_metadata=self.task_metadata, )