in src/lighteval/tasks/registry.py [0:0]
def create_task_config_dict(meta_table: list[LightevalTaskConfig] | None = None) -> dict[str, LightevalTaskConfig]:
"""
Create configuration tasks based on the provided meta_table.
Args:
meta_table: meta_table containing tasks
configurations. If not provided, it will be loaded from TABLE_PATH.
cache_dir: Directory to store cached data. If not
provided, the default cache directory will be used.
Returns:
Dict[str, LightevalTask]: A dictionary of task names mapped to their corresponding LightevalTask classes.
"""
if meta_table is None:
meta_table = [config for config in vars(default_tasks).values() if isinstance(config, LightevalTaskConfig)]
tasks_with_config: dict[str, LightevalTaskConfig] = {}
for config in meta_table:
if not any(suite in config.suite for suite in DEFAULT_SUITES):
logger.warning(
f"This evaluation is not in any known suite: {config.name} is in {config.suite}, not in {DEFAULT_SUITES}. Skipping."
)
continue
for suite in config.suite:
if suite in DEFAULT_SUITES:
tasks_with_config[f"{suite}|{config.name}"] = config
return tasks_with_config