Repository: modelscope/evalscope
Issue: 使用RAGEval后端评测CodeRAGStackoverflowPosts任务报错
Root cause: External Dependency Breakage

## 自查清单

在提交 issue 之前，请确保您已完成以下步骤:
- [ √] 我已仔细阅读了[相关使用说明文档](https://evalscope.readthedocs.io/zh-cn/latest/get_started/parameters.html)
- [√ ] 我已查看了[常见问题解答](https://evalscope.readthedocs.io/zh-cn/latest/get_started/faq.html)
- [√ ] 我已搜索并查看了现有的 issues，确认这不是一个重复的问题

## 问题描述

要评估CodeRAGStackoverflowPosts等任务，需要升级到mteb新版本才能识别到这些任务，但也导致了新版本不兼容旧版本的一些问题，导致报错：
/miniconda3/envs/evalscope-coderag/lib/python3.10/site-packages/mteb/abstasks/AbsTask.py", line 81, in __init__
self.hf_subsets = list(self.metadata.hf_subsets_to_langscripts.keys())AttributeError: 'CustomRetrieval' object has no attribute 'metadata'

## EvalScope 版本（必填）
v0.16.0

mteb   v1.38.16

## 使用的工具
- [ ] Native / 原生框架
- [ ] Opencompass backend
- [ ] VLMEvalKit backend
- [ √] RAGEval backend
- [ ] Perf / 模型推理压测工具
- [ ] Arena / 竞技场模式

## 执行的代码或指令

```
from evalscope.run import run_task

one_stage_task_cfg = {
    "work_dir": "outputs",
    "eval_backend": "RAGEval",
    "eval_config": {
        "tool": "MTEB",
        "model": [
            {
                "model_name_or_path": "/data/models/gte_Qwen2-1___5B-instruct",
                "pooling_mode": "lasttoken",		# bge系列模型请设置为“cls”。
                "max_seq_length": 1024,
                "prompt": "",	# <instruct>Given a code contest problem description, retrieve relevant code that can help solve the problem.\n<query>
                "model_kwargs": {"torch_dtype": "auto"},
                "encode_kwargs": {
                    "batch_size": 128,
                },
            }
        ],
        "eval": {
            "tasks": [
                "CodeRAGStackoverflowPosts",
            ],
            "verbosity": 2,
            "overwrite_results": True,
            "top_k": 10,
#            "limits": 500,
            "hub": "modelscope"
        },
    },
}

# Run task
run_task(task_cfg=one_stage_task_cfg) 
```

## 错误日志

```
Traceback (most recent call last):
  File "/data/evalscope/run_code_coderag.py", line 34, in <module>
    run_task(task_cfg=one_stage_task_cfg)
  File "/data/miniconda3/envs/evalscope-coderag/lib/python3.10/site-packages/evalscope/run.py", line 31, in run_task
    return run_single_task(task_cfg, run_time)
  File "/data/miniconda3/envs/evalscope-coderag/lib/python3.10/site-packages/evalscope/run.py", line 42, in run_single_task
    result = run_non_native_backend(task_cfg, outputs)
  File "/data/miniconda3/envs/evalscope-coderag/lib/python3.10/site-packages/evalscope/run.py", line 89, in run_non_native_backend
    backend_manager.run()
  File "/data/miniconda3/envs/evalscope-coderag/lib/python3.10/site-packages/evalscope/b  File "/data/miniconda3/envs/evalscope-coderag/lib/python3.10/site-packages/evalscope/backend/rag_eval/backend_manager.py", line 46, in run_mteb
    one_stage_eval(model_args_list[0], eval_args)  File "/data/miniconda3/envs/evalscope-coderag/lib/python3.10/site-packages/evalscope/backend/rag_eval/cmteb/task_template.py", line 35, in one_stage_eval
    evaluation = mteb.MTEB(tasks=tasks)  File "/data/miniconda3/envs/evalscope-coderag/lib/python3.10/site-packages/mteb/evaluation/MTEB.py", line 93, in __init__
    self.select_tasks(**kwargs)  File "/data/miniconda3/envs/evalscope-coderag/lib/python3.10/site-packages/mteb/evaluation/MTEB.py", line 231, in select_tasks
    self.tasks_cls = [  File "/data/miniconda3/envs/evalscope-coderag/lib/python3.10/site-packages/mteb/evaluation/MTEB.py", line 232, in <listcomp>
    cls(hf_subsets=self._task_langs, **kwargs)  File "/data/miniconda3/envs/evalscope-coderag/lib/python3.10/site-packages/evalscope/backend/rag_eval/cmteb/tasks/CustomTask.py", line 12, in __init__
    super().__init__(**kwargs)  File "/data/miniconda3/envs/evalscope-coderag/lib/python3.10/site-packages/mteb/abstasks/AbsTaskRetrieval.py", line 275, in __init__
    super().__init__(**kwargs)  File "/data/miniconda3/envs/evalscope-coderag/lib/python3.10/site-packages/mteb/abstasks/AbsTask.py", line 81, in __init__
    self.hf_subsets = list(self.metadata.hf_subsets_to_langscripts.keys())AttributeError: 'CustomRetrieval' object has no attribute 'metadata'

```

## 运行环境

- 操作系统：CentOS Linux release 8.5.2111
- Python版本：3.10.0



后续将升级支持新版的mteb

请使用main分支代码再试一下

> 感谢你的反馈！我们将关闭此问题。如果您有任何疑问，请随时重新打开它。如果EvalScope对您有所帮助，欢迎给我们点个STAR以示支持，谢谢！