zhiminy/EvalEng huggingface dataset:
Repository: modelscope/evalscope
Issue: 请问一下评估reranker模型为什么打分这么低，甚至还有的是0
Root cause: Documentation Deficiency

<img width="1784" alt="截屏2024-12-19 17 10 35" src="https://github.com/user-attachments/assets/ef98a9cb-3ac5-4c10-97ef-6fd08cf1b57f" />
reranker模型应该怎样评估质量呢？怎样建立benchmark？


麻烦贴下你执行的命令

评估reranker需要两阶段评测 [参考](https://evalscope.readthedocs.io/zh-cn/latest/user_guides/backend/rageval_backend/mteb.html#id6)

one_stage_task_cfg = {  # noqa
        'eval_backend': 'RAGEval',
        'eval_config': {
            'tool': 'MTEB',
            'model': [
                {
                    'model_name_or_path': '/home/xiezizhe/.jupyter/bge/bge-reranker-v2-m3',
                    'pooling_mode': 'cls',  # if not set, load from model config; use `cls` for bge series model
                    'max_seq_length': 512,
                    'prompt': '为这个句子生成表示以用于检索相关文章：',
                    'encode_kwargs': {
                        'batch_size': 512,
                    },
                }
            ],
            'eval': {
                'tasks': [
                    'TNews',
                    'CLSClusteringS2S',
                    'T2Reranking',
                    'ATEC',
                    'T2Retrieval',
                    'MMarcoRetrieval',
                    'DuRetrieval',
                    'CovidRetrieval',
                    'CmedqaRetrieval',
                    'EcomRetrieval',
                    'MedicalRetrieval',
                    'VideoRetrieval'
                ],
                'verbosity': 2,
                'output_folder': 'outputs',
                'overwrite_results': True,
                'top_k': 10,
                'limits': 1000,  # don't limit for retrieval task
            },
        },
    }
    原来需要两阶段测评嘛？
    还有一个问题就是，现在reranker模型就只有那几个，用embedding模型来做rerank是可行的吗？

> 麻烦贴下你执行的命令
> 
> 评估reranker需要两阶段评测 [参考](https://evalscope.readthedocs.io/zh-cn/latest/user_guides/backend/rageval_backend/mteb.html#id6)

根据上面的one_stage_task_cfg 直接执行example_eval_mteb.py文件，CUDA_VISIBLE_DEVICES=6 python example_eval_mteb.py 

直接用embedding模型的话 [参考](https://evalscope.readthedocs.io/zh-cn/latest/user_guides/backend/rageval_backend/mteb.html#id5)；评测reranker需要用retrieval数据集，先用embedding模型检索topk，再进行排序

> 直接用embedding模型的话 [参考](https://evalscope.readthedocs.io/zh-cn/latest/user_guides/backend/rageval_backend/mteb.html#id5)；评测reranker需要用retrieval数据集，先用embedding模型检索topk，再进行排序

还有一个问题就是，现在reranker模型就只有那几个，如果说用embedding模型来做rerank是可行的吗？

> 还有一个问题就是，现在reranker模型就只有那几个，如果说用embedding模型来做rerank是可行的吗？

可以用embedding模型来做rerank，但效果可能不如专门训练过的reranker

<img width="1147" alt="截屏2024-12-19 18 31 49" src="https://github.com/user-attachments/assets/21c71bdd-fda6-4df8-a58e-4620d5c2731d" />
您好，还想请教一下二阶段评估reranker我用的bge-reranker-v2-m3，得出的指标如上图，带有nauc前缀的指标较高，没带的就很低，实际我们在使用的时候主要看重哪些指标来评估这个reranker模型效果好不好呀？

评估时不要添加limit；主要评估指标有map, mrr, ndcg这些，[参考](https://github.com/FlagOpen/FlagEmbedding/blob/master/Tutorials/2_Metrics/2.2_Eval_Metrics.ipynb)

If you find EvalScope helpful, please feel free to STAR our project. Thank YOU!
如果EvalScope对您有帮助，请给我们加个STAR鼓励，谢谢！
Repository: modelscope/evalscope
Issue: 二阶段评估reranker模型 重新排序类型的数据集报错（T2Reranking、CMedQAv1等）

您好想问一下为什么二阶段评估reranker模型 重新排序类型的数据集报错（T2Reranking、CMedQAv1等）？
**配置：**
  ```
two_stage_task_cfg = {
        'eval_backend': 'RAGEval',
        'eval_config': {
            'tool': 'MTEB',
            'model': [
                {
                    'model_name_or_path': '/home/xiezizhe/.jupyter/bge/bge-m3',
                    'is_cross_encoder': False,
                    'max_seq_length': 512,
                    'prompt': '',
                    'model_kwargs': {'torch_dtype': 'auto'},
                    'encode_kwargs': {
                        'batch_size': 64,
                    },
                },
                {
                    'model_name_or_path': '/home/xiezizhe/.jupyter/bge/bge-reranker-v2-m3',
                    'is_cross_encoder': True,
                    'max_seq_length': 512,
                    'prompt': '为这个问题生成一个检索用的表示',
                    'model_kwargs': {'torch_dtype': 'auto'},
                    'encode_kwargs': {
                        'batch_size': 32,
                    },
                },
            ],
            'eval': {
                'tasks': ['›'],
#                 "dataset_path": "/home/xiezizhe/.jupyter/zhaofengshun/evalscope/custom_eval/text/retrieval",
                'verbosity': 2,
                'output_folder': 'outputs',
                'overwrite_results': True,
#                 'limits': 100,
            },
```


两阶段评测请使用检索数据集，例如 T2Retrieval

If you find EvalScope helpful, please feel free to STAR our project. Thank YOU!
如果EvalScope对您有帮助，请给我们加个STAR鼓励，谢谢！
Repository: modelscope/evalscope
Issue: cmmlu评测文件缺失DATASET_ID和SUBJECT_MAPPING等
Root cause: Validation Gap

File "eval-scope/package/llmuses/benchmarks/cmmlu/__init__.py", line 3, in <module>
    from llmuses.benchmarks.cmmlu.cmmlu_adapter import DATASET_ID, SUBJECT_MAPPING, SUBSET_LIST, CMMLUAdapter
ImportError: cannot import name 'DATASET_ID' from 'llmuses.benchmarks.cmmlu.cmmlu_adapter' (eval-scope/package/llmuses/benchmarks/cmmlu/cmmlu_adapter.py)
看了下mmlu是有这些import项目的，但cmmlu没有，所以加载时缺失报错

目前可使用release 0.2分支或master分支来使用cmmlu：

git clone -b release/0.2 https://github.com/modelscope/eval-scope.git

cd eval-scope
pip3 install -e .

收到，前几天看到有fix cmmlu的commit就测试了，可以正常跑cmmlu测试，感谢回复！
Repository: modelscope/evalscope
Issue: 想请问一下在评估reranker模型想要加入难负例数据，格式也是corpus、query、qerls吗？

tsv文件是以下这种格式吗？
`
query-id	corpus-id	score
query1	neg1	0
 `

目前支持的只有`query-id`, `corpus-id`, `score` 三个字段，表示query和corpus相关score

> 由于长时间未收到活动，我们将关闭此问题。如果您有任何疑问，请随时重新打开它。如果EvalScope对您有所帮助，欢迎给我们点个STAR以示支持，谢谢！
Repository: modelscope/evalscope
Issue: 请问测评自定义模型时是否可以指定model_name
Root cause: Documentation Deficiency

测评代码如下：
CUDA_VISIBLE_DEVICES=5 \
python evalscope/run.py \
 --model /fs/archive/share/ckp/llama3/llama3-8b-instruct-5epoch/checkpoint-340 \
 --template-type llama3 \
 --datasets hellaswag arc truthful_qa
report table中model中显示的是一串符号，易读性不是很强，请问支不支持更改名称呢？
<img width="869" alt="image" src="https://github.com/user-attachments/assets/bc2adf68-b347-40b8-8728-199d51c866a5" />


使用evalscope v0.8.2版本，可以指定`--model-id`参数来更改名称

我已经升级至了指定版本
<img width="686" alt="image" src="https://github.com/user-attachments/assets/7bd51ad9-53fa-4a65-8c5b-aeae3a242594" />


我记错了:( 
这块功能还没合入，但现在默认名称是 model 的最后一部分

EvalScope v0.9.0 已发布，可以使用该参数了

似乎还是不行
<img width="625" alt="image" src="https://github.com/user-attachments/assets/603307aa-7a46-46c3-b743-b9ec4428cfd3" />


问题已修复，请使用main分支代码

If you find EvalScope helpful, please feel free to STAR our project. Thank YOU!
如果EvalScope对您有帮助，请给我们加个STAR鼓励，谢谢！
Repository: modelscope/evalscope
Issue: MMLU 测评结果与官方差距较大
Root cause: Algorithmic Error

<img width="864" alt="image" src="https://github.com/user-attachments/assets/ee6884f7-b2f7-4942-b0ff-f66459deec3c" />
如您官网所示，llama2-7b的mmlu分数与官方差了快5个点，我测评llama3-8b-instruct也只有0.6396，感觉相差很多，请问是什么原因呢？

一般来讲，各个评测框架，如OpenCompass、harness等，或者官方的评测逻辑，因为在prompt构造（包括如果有few-shot的话，采样逻辑和各模型对few-shot的following能力）、模型推理参数、结果解析逻辑都有一些差异，最终就会导致评测结果有差异； 通常建议尽量采用一个框架来横向评测各个模型。

我看了您们项目mmlu测评的源代码，逻辑是取logits可能性最大的值，与原测评做法一致。这个应该与采样无关
<img width="598" alt="image" src="https://github.com/user-attachments/assets/0756239c-e45c-496d-8860-89ea848f4428" />
prompt似乎也是和官方一致的：
<img width="901" alt="image" src="https://github.com/user-attachments/assets/4b549d28-d3ab-4237-ad5f-59703d2ec305" />
![image](https://github.com/user-attachments/assets/407a296f-ffda-4569-a49b-16097c6f756d)


是不是有可能官方测评是用的micro_avg？
`    weighted_acc = np.mean(np.concatenate(all_cors))
`
您最后的输出为WeightedAverageAccuracy，有可能是这方面的原因。请问后续是否是支持指定测评metric为macro，micro，weighted呢？谢谢！

我们最终也是类似micro avg的计算方式，后续会支持更多评测指标

> 我们最终也是类似micro avg的计算方式，后续会支持更多评测指标

报告显示最后是weighted_acc
<img width="635" alt="image" src="https://github.com/user-attachments/assets/bd8a8978-5c59-442a-bad6-9c5d932cdb7a" />


> 感谢你的反馈！我们将关闭此问题。如果您有任何疑问，请随时重新打开它。如果EvalScope对您有所帮助，欢迎给我们点个STAR以示支持，谢谢！
Repository: modelscope/evalscope
Issue: opencompass 支持的数据集比较多，但evalscope使用opencompass作为后端，有些数据集却不支持
Root cause: Configuration Error

## 问题描述 / Issue Description

请简要描述您遇到的问题。 / Please briefly describe the issue you encountered.

## 使用的工具 / Tools Used
- [ ] Native / 原生框架
- [yes ] Opencompass backend
- [ ] VLMEvalKit backend
- [ ] RAGEval backend
- [ ] Perf / 模型推理压测工具
- [ ] Arena  /竞技场模式


 Opencompass官方支持一些长文本的数据集，例如LEval、LongBench，但evalscope却不支持。是否我把数据集下载放到data目录下，就可以直接使用？ opencompass都支持了，你们是做了另外的适配么？


## 其他信息 / Additional Information

如果有其他相关信息，请在此处提供。 / If there is any other relevant information, please provide it here.


原因是早期接入OC的版本，是统一通过openai api接口的方式（所以目前才可以通过大部分的推理框架，如vllm、lmdeploy等启拉起推理服务然后评测），而当时接入时候支持的benchmark有限，且相对于local infer的方式还需要做验证是否能够对齐。我们计划基于OC目前重构后的版本（已经对openai api支持较为成熟），尝试接入全量的数据集。

现在如何支持呢，然后也添加了一些适配code，但是也不行。
在eval_dataset.py中添加了
from opencompass.configs.datasets.longbench.longbench import longbench_datasets
from opencompass.configs.datasets.leval.leval import leval_datasets

通过OpenCompassBackendManager.list_datasets() 打印出来是有longbench，但执行run不行，报错如下：

  File "/usr/local/python3/lib/python3.10/site-packages/opencompass/datasets/longbench/longbench_hotpot_qa.py", line 17, in load
    dataset = load_dataset(**kwargs)
  File "/usr/local/python3/lib/python3.10/site-packages/datasets/load.py", line 2074, in load_dataset
    builder_instance = load_dataset_builder(
  File "/usr/local/python3/lib/python3.10/site-packages/datasets/load.py", line 1795, in load_dataset_builder
    dataset_module = dataset_module_factory(
  File "/usr/local/python3/lib/python3.10/site-packages/datasets/load.py", line 1671, in dataset_module_factory
    raise e1 from None
  File "/usr/local/python3/lib/python3.10/site-packages/datasets/load.py", line 1591, in dataset_module_factory
    raise ConnectionError(f"Couldn't reach '{path}' on the Hub ({e.__class__.__name__})") from e
ConnectionError: Couldn't reach 'THUDM/LongBench' on the Hub (ConnectionError)
Repository: modelscope/evalscope
Issue: 如何进行图像-文本通过CLIP嵌入在同一Embedding空间进行测试？
Root cause: Unimplemented Feature Gap

## 功能描述 / Feature Description

您好，现在我在评测多模态RAG的检索和生成时遇见了问题：
我们的数据集模态多样，既有文本(text)，也有图像(image)，现在想构建image_queries.jsonl的时候发现，该queires构建只能为：
纯文本：queries.jsonl
纯图像：image_queries.jsonl
但是对于图像、文本混合的并没有涉及到检索方式。（事实上这很容易，因为CLIP能够实现图像、文本嵌入到同一空间）

## 需求背景 / Background

我们新的工作引用到了您的评测工具和方法，但是无法在关键实现：混合数据下的RAG。因此希望您能更新方法，或者提供混合检索评测的queries.jsonl构建

## 预期行为 / Expected Behavior

这个功能可以混合图像、文本，比如：
{"_id": "doc4", "text": "随着技术的进步，风能和太阳能等可再生能源变得越来越普及。"}
{"image_path": "custom_eval/multimodal/images/AMNH.jpg", "query": ["building"]}
然后可以自动进行评测

## 其他信息 / Additional Information

还有其他相关信息吗？ / Any other relevant information?


你是希望可以评测CLIP模型的文本、图像混合检索能力吗

是的是的没错，就是图像和文本通过CLIP嵌入到一个库中评测

好的，我们会尽快补充这部分功能

好的感谢，期待您和团队的更新
Repository: modelscope/evalscope
Issue: Meta-Llama-3.1-8B模型mmlu和ceval测试集评分为0
Root cause: Interface Contract Mismatch

## 问题描述 / Issue Description

请简要描述您遇到的问题。 / Please briefly describe the issue you encountered.

## 使用的工具 / Tools Used
1.Opencompass backend
2.VLLM推理服务启动Meta-Llama-3.1-8B模型
3.使用贵司官方python脚本进行评分

- 操作系统 / Operating System:
Ubuntu

- Python版本 / Python Version:3.10

结果：
评分基本为0，使用数据集问题单独进行request请求返回结果和评测一致基本为空，是测试集不适用该模型吗
<img width="364" alt="1735896087267" src="https://github.com/user-attachments/assets/23b91944-4504-4f19-b31e-5146fcba8827" />
Repository: modelscope/evalscope
Issue: mmlu使用本地数据集路径测试测的是dev集
Root cause: Configuration Error

按照文档离线环境配置下载data.zip
evalscope eval \
 --model /home/base_models/llama2-7b \
 --datasets mmlu hellaswag arc truthful_qa \
 --generation-config temperature=0 \
 --dataset-args '{"mmlu": {"local_path": "/home/evalscope/data/mmlu"},"hellaswag": {"local_path": "/home/evalscope/data/hellaswag"},"arc":{"local_path": "/home/evalscope/data/arc"},"truthful_qa":{"local_path": "/home/evalscope/data/truthful_qa"}}' 

结果异常高，达到了0.8，查看outputs目录发现每个学科只有5条输出，疑是dev测试结果
<img width="995" alt="image" src="https://github.com/user-attachments/assets/daaca5cf-a32b-4d30-a995-8edc22c830cd" />
但是查看mmlu配置“eval_split”设置为test
<img width="333" alt="image" src="https://github.com/user-attachments/assets/7477ab86-9bcb-40fa-90f2-0c96e50bcb6f" />
请问zhe shi这是什么原因呢
 

问题已修复，可以拉取main分支代码来使用

If you find EvalScope helpful, please feel free to STAR our project. Thank YOU!
如果EvalScope对您有帮助，请给我们加个STAR鼓励，谢谢！
Repository: modelscope/evalscope
Issue: 能否对模型评估后的结果进行可视化操作？
Root cause: Unimplemented Feature Gap

## 功能描述
   我想在对大模型评估之后将评估结果进行可视化分析

请简要描述您希望添加的功能。 
  存储评估结果，将结果以可视化图表的形式呈现，图标至少要包含评估的基准、使用的数据集、评估的结果（大模型的表现）
## 需求背景 / Background

为什么需要这个功能？ / Why is this feature needed?

## 预期行为 / Expected Behavior

这个功能应该如何工作？ / How should this feature work?

## 其他信息 / Additional Information

还有其他相关信息吗？ / Any other relevant information?


可视化的feature已经在开发中了，近期会发布上去。

预计下周末（1.17）之前有一个初版

evalscope v0.10.0 已发布，支持评估结果进行可视化，注意：请使用最新版本的库进行模型评测后再进行可视化。详情参考 https://evalscope.readthedocs.io/zh-cn/latest/get_started/visualization.html

> 由于长时间未收到活动，我们将关闭此问题。如果您有任何疑问，请随时重新打开它。如果EvalScope对您有所帮助，欢迎给我们点个STAR以示支持，谢谢！
Repository: modelscope/evalscope
Issue: accelerate调用
Root cause: Documentation Deficiency

日志显示
2025-01-11 19:19:19,729 - accelerate.utils.modeling - INFO - We will use 90% of the memory on device 0 for storing the model, and 10% for the buffer to avoid OOM. You can set `max_memory` in to a higher value to use more memory (at your own risk).

但在模型加载和推理文件中没有找到accelerate的相关调用，请问是怎么使用accelerate加速的呢，谢谢！


这应该是transformers自动调用了accelerate做了显存划分，推理时没有加速

If you find EvalScope helpful, please feel free to STAR our project. Thank YOU!
如果EvalScope对您有帮助，请给我们加个STAR鼓励，谢谢！
Repository: modelscope/evalscope
Issue:  数据混合评测 不支持自定义的数据集吗
Root cause: Documentation Deficiency

试了下自定义的数据集吗，目前提示不支持

请贴一下运行的命令，是怎么传入的自定义数据集呢

![image](https://github.com/user-attachments/assets/8bb339ca-6e89-4965-827a-6f7234bbc5f4)

Exception: Unknown benchmark: custom_general_qa. Available tasks: dict_keys(['hellaswag', 'ceval', 'general_qa', 'race', 'truthful_qa', 'mmlu_pro', 'competition_math', 'humaneval', 'trivia_qa', 'gsm8k', 'bbh', 'cmmlu', 'arc', 'mmlu'])
![image](https://github.com/user-attachments/assets/a4a366b4-d881-448e-b983-41707daa30a3)


按照自定义数据集的文档建的用例集，单独执行是可以的

`DatasetInfo`中的`name`得使用`general_qa`和`ceval`目前还不能自定义名称，然后在args里传入`local_path`例如：
```python
DatasetInfo(name='general_qa', weight=1, args={'local_path': '/path/to/local'})
```

ceval 的数据集找不到，按照自定义数据集文档生成的，ceval的数据在csv文件里，是不是只能是jsonl格式的数据？

 File "/home/alg/qdl/test.py", line 13, in <module>
    mixed_data = sampler.sample()
  File "/data/anaconda3/envs/evalscope/lib/python3.10/site-packages/evalscope/collections/sampler.py", line 64, in sample
    all_data = self._collect_dataset_data(dataset_info_list)
  File "/data/anaconda3/envs/evalscope/lib/python3.10/site-packages/evalscope/collections/sampler.py", line 35, in _collect_dataset_data
    data_dict = dataset.get_data()
  File "/data/anaconda3/envs/evalscope/lib/python3.10/site-packages/evalscope/collections/schema.py", line 21, in get_data
    data_dict = data_adapter.load(
  File "/data/anaconda3/envs/evalscope/lib/python3.10/site-packages/evalscope/benchmarks/data_adapter.py", line 71, in load
    raise ValueError(f'Local dataset is empty: {dataset_name_or_path}')
ValueError: Local dataset is empty: /home/alg/qdl/data/custom/custom_ceval


  File "/data/anaconda3/envs/evalscope/lib/python3.10/site-packages/evalscope/collections/evaluator.py", line 159, in get_pred_score
    return float(review_d[AnswerKeys.CHOICES][0][ReviewKeys.REVIEW][ReviewKeys.RESULT])
TypeError: float() argument must be a string or a real number, not 'dict'

![image](https://github.com/user-attachments/assets/197bcd33-76ae-4452-a4d7-ab05d7e8bca7)


general_qa 取结果不对

这块有bug，逻辑我们再修改一下

If you find EvalScope helpful, please feel free to STAR our project. Thank YOU!
如果EvalScope对您有帮助，请给我们加个STAR鼓励，谢谢！
Repository: modelscope/evalscope
Issue: truthful_qa及ContinuationLogitsModelAdapter使用疑问
Root cause: Documentation Deficiency

hi，关于测评代码，我有一些问题：
1.hellaswag测评和truthful_qa都使用了ContinuationLogitsModelAdapter，但是hellaswag在最后对completion的length做了归一化，truthful_qa没有做。
2. ContinuationLogitsModelAdapter测评逻辑，相当于是把选项放进来评判可能性吗，那为什么同样作为选择题的mmlu不采用这个逻辑呢，划分task测评不同modeladapter的逻辑是？
3. 我想构造一些few-shot样例给llm，truthful_qa和hellaswag该如何构造prompt让他们与测评逻辑保持一致呢

谢谢您的解答！

1. 这两个数据集格式不太一样，后处理逻辑也不一样，但两者最后是都做了归一化（truthful_qa的mc2是多选题处理逻辑，hellaswag是单选）
2. 多项选择题确实都可以用logits来评测，或者使用模型生成+后处理来评测，后面这一部分会做成选项，让用户自行选择
3. truthful_qa和hellaswag不支持few-shot，如果想要添加的话，需要自己修改`gen_prompt`的逻辑，给`context`添加few-shot的上文

就是我不是很理解为啥都是选择题，hellaswag的回答要按长度归一化，truthful_qa的没有做。
3.我的意思是指我想构造一些few-shot作为下游任务的样例，最后测评还是hellaswag 0-shot，但是由于测评不是query,response的格式，我担心会有偏

2. 这个可能是代码上的不一致，logits按长度归一化理论上可以让不同长度的回答具有可比性，这块的逻辑需要再调研一下其他框架，看看是怎么处理的
3. 我没有太理解这个问题，下游任务指的是什么，模型评测应该就是最后的任务了呀

> 感谢你的反馈！我们将关闭此问题。如果您有任何疑问，请随时重新打开它。如果EvalScope对您有所帮助，欢迎给我们点个STAR以示支持，谢谢！
Repository: modelscope/evalscope
Issue: 接入openai server评测时，system input 该如何自定义修改？
Root cause: Documentation Deficiency

请教一下，在接入openai server评测时，system input 该如何自定义修改呢？

我在 evalscope.models.server_adapter中的make_request_content中 看到支持修改system_input，但在参数配置文档和上层接口中没找到该如何设置

目前这一字段还未支持自定义，目前可以先修改`gen_prompt`函数的返回字典，添加上`'system_prompt'`，
例如：
```python
{'data': [query], 'system_prompt': prompt_template}
```

evalscope v0.10.0 已发布，通过在`--dataset-args`指定`system_prompt`参数可以指定

> 由于长时间未收到活动，我们将关闭此问题。如果您有任何疑问，请随时重新打开它。如果EvalScope对您有所帮助，欢迎给我们点个STAR以示支持，谢谢！
Repository: modelscope/evalscope
Issue: 数据混合评测 csv格式的数据集不支持吗
Root cause: Documentation Deficiency

按照文档生成的ceval自定义数据集，在数据混合评测 时报本地数据集为空

![Image](https://github.com/user-attachments/assets/cf349171-247d-492b-834f-3970ff27722e)

![Image](https://github.com/user-attachments/assets/d6307fc5-bfde-4308-a07a-ccdf97d31237)

需要在args里指定：
```python
'subset_list': [
'default'  # 评测数据集名称，上述 *_dev.csv 中的 *
]
```

以解决

If you find EvalScope helpful, please feel free to STAR our project. Thank YOU!
如果EvalScope对您有帮助，请给我们加个STAR鼓励，谢谢！
Repository: modelscope/evalscope
Issue: main分支Arena Mode代码运行报错
Root cause: Architectural Constraint

## 问题描述 / Issue Description
使用竞技场模式的时候，运行报错，貌似是re模块循环调用，切换为0.8.2版本没有该错误

## 使用的工具 / Tools Used
- Arena  /竞技场模式


## 执行的代码或指令 / Code or Commands Executed
```bash
python evalscope/run_arena.py --c registry/config/cfg_single.yaml
```

## 错误日志 / Error Log
Traceback (most recent call last):
  File "/home/xxx/work/xxx/evalscope/evalscope/run_arena.py", line 4, in <module>
    import argparse
  File "/home/xxx/miniconda3/envs/evalscope/lib/python3.10/argparse.py", line 89, in <module>
    import re as _re
  File "/home/xxx/miniconda3/envs/evalscope/lib/python3.10/re.py", line 127, in <module>
    import functools
  File "/home/xxx/miniconda3/envs/evalscope/lib/python3.10/functools.py", line 18, in <module>
    from collections import namedtuple
  File "/home/xxx/work/xxx/evalscope/evalscope/collections/__init__.py", line 1, in <module>
    from evalscope.collections.evaluator import EvaluatorCollection
  File "/home/xxx/miniconda3/envs/evalscope/lib/python3.10/site-packages/evalscope/__init__.py", line 3, in <module>
    from evalscope.config import TaskConfig
  File "/home/xxx/miniconda3/envs/evalscope/lib/python3.10/site-packages/evalscope/config.py", line 4, in <module>
    import json
  File "/home/xxx/miniconda3/envs/evalscope/lib/python3.10/json/__init__.py", line 106, in <module>
    from .decoder import JSONDecoder, JSONDecodeError
  File "/home/xxx/miniconda3/envs/evalscope/lib/python3.10/json/decoder.py", line 5, in <module>
    from json import scanner
  File "/home/xxx/miniconda3/envs/evalscope/lib/python3.10/json/scanner.py", line 11, in <module>
    NUMBER_RE = re.compile(
AttributeError: partially initialized module 're' has no attribute 'compile' (most likely due to a circular import)
```

## 运行环境 / Runtime Environment

- 操作系统 / Operating System:
  - linux-x86

- Python版本 / Python Version:
  - 3.10


## 其他信息 / Additional Information

如果有其他相关信息，请在此处提供。 / If there is any other relevant information, please provide it here.


Arena Mode 有较长时间没有更新了，可能有部分代码不兼容，可以尝试使用v0.7.0版本

> Arena Mode 有较长时间没有更新了，可能有部分代码不兼容，可以尝试使用v0.7.0版本

欧克欧克

遇到了同样的问题，请问您解决了吗

竞技场模式使用方法已更新，请参考：https://evalscope.readthedocs.io/zh-cn/latest/user_guides/arena.html

> 感谢你的反馈！我们将关闭此问题。如果您有任何疑问，请随时重新打开它。如果EvalScope对您有所帮助，欢迎给我们点个STAR以示支持，谢谢！
Repository: modelscope/evalscope
Issue: 数据混合测评 -没有按设置的权重采集数据
Root cause: Algorithmic Error

![Image](https://github.com/user-attachments/assets/d3afc0e1-7261-44b3-b76f-221d9935c692)

两个数据集权重都是1，总共2个用例，结果采集的都是问答题数据集

![Image](https://github.com/user-attachments/assets/fda5cdbe-2a9c-4048-a029-9467bf956e7c)

这个是已知的问题，将在新版本中修复

evalscope v0.10.0 已发布，该问题已修复，注意使用方式有点变化：
```python
sampler = WeightedSampler(schema)
mixed_data = sampler.sample(100) # 指定采样数量
```

general_qa 的分数是怎么算的？ 应该不是1 满分吧

执行结果如下

![Image](https://github.com/user-attachments/assets/f8602942-bf00-4c2f-aa45-7deb46f5590e)  

review 结果：

![Image](https://github.com/user-attachments/assets/790b7da5-4aaa-4143-aa3f-503c88a11450)

review 结果里有2个 rouge-1-x

这是`rouge-1`和`rouge-l`，genera_qa的使用的指标可以参考：https://medium.com/@sthanikamsanthosh1994/understanding-bleu-and-rouge-score-for-nlp-evaluation-1ab334ecadcb

> 由于长时间未收到活动，我们将关闭此问题。如果您有任何疑问，请随时重新打开它。如果EvalScope对您有所帮助，欢迎给我们点个STAR以示支持，谢谢！
Repository: modelscope/evalscope
Issue: 可视化 为什么只能选择一个测试报告
Root cause: Validation Gap

同一份测试数据 执行了多次测试， weighted_mixed_data.jsonl 是数据集，结果如下

![Image](https://github.com/user-attachments/assets/422bb6b8-b3bd-4209-a890-cfe8ea50e6e0)

用可视化的时候只能选择 最新的一次结果

![Image](https://github.com/user-attachments/assets/93879fb5-62e7-4db5-be0d-0dc9ae662a85)

能可视化的报告需要是evalscope>=0.10.0 评测的结果，之前版本的输出报告格式不一致

确实如此
Repository: modelscope/evalscope
Issue: 自定义数据集评测失败：Exception: Unknown benchmark: general_mcq
Root cause: Environment Incompatibility

evalscope==v0.10.1

自定义数据集评测，选择题评测的时候，报这个错
Traceback (most recent call last):
  File "/home/majing8/evalscope-pro/custom_dataset.py", line 17, in <module>
    run_task(task_cfg=task_cfg)
  File "/home/majing8/anaconda3/envs/evalscope/lib/python3.10/site-packages/evalscope/run.py", line 31, in run_task
    return run_single_task(task_cfg, run_time)
  File "/home/majing8/anaconda3/envs/evalscope/lib/python3.10/site-packages/evalscope/run.py", line 44, in run_single_task
    return evaluate_model(task_cfg, outputs)
  File "/home/majing8/anaconda3/envs/evalscope/lib/python3.10/site-packages/evalscope/run.py", line 107, in evaluate_model
    evaluator = create_evaluator(task_cfg, dataset_name, outputs, base_model)
  File "/home/majing8/anaconda3/envs/evalscope/lib/python3.10/site-packages/evalscope/run.py", line 132, in create_evaluator
    benchmark: BenchmarkMeta = Benchmark.get(dataset_name)
  File "/home/majing8/anaconda3/envs/evalscope/lib/python3.10/site-packages/evalscope/benchmarks/benchmark.py", line 62, in get
    raise Exception(f'Unknown benchmark: {name}. Available tasks: {BENCHMARK_MAPPINGS.keys()}')
Exception: Unknown benchmark: general_mcq. Available tasks: dict_keys(['arc', 'competition_math', 'race', 'cmmlu', 'iquiz', 'ifeval', 'hellaswag', 'gsm8k', 'bbh', 'trivia_qa', 'truthful_qa', 'mmlu_pro', 'mmlu', 'general_qa', 'ceval', 'gpqa', 'humaneval'])


执行的代码：
from evalscope.config import TaskConfig

from evalscope.run import run_task

task_cfg = TaskConfig(
    model='Qwen/Qwen2-0.5B-Instruct',
    datasets=['general_mcq'],  # 数据格式，选择题格式固定为 'general_mcq'
    dataset_args={
        'general_mcq': {
            "local_path": "custom_eval/text/mcq",  # 自定义数据集路径
            "subset_list": [
                "example"  # 评测数据集名称，上述subset_name
            ]
        }
    },
)
run_task(task_cfg=task_cfg)


看了一下代码，是benchmarks目录下没有general_mcq这个目录，从master分支把这个目录下载下来，放到虚环境中的evalscope中就可以了

请先使用main分支代码，这部分功能还未发布到新版本

安装main分支版本：
```base
pip install git+https://github.com/modelscope/evalscope.git@main
```

v0.11.0已发布，可以使用这个功能了

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