zhiminy/EvalEng huggingface dataset:
Repository: mlfoundations/evalchemy
Issue: Debug mode fails for AIME24 and 5 other benchmarks
Root cause: Validation Gap

## Problem
When running benchmarks with `--debug` flag, the following benchmarks fail:
- AIME24
- AIME25 
- AIW (Alice in Wonderland)
- AMC23
- HMMT
- MATH500

## Reproduction Steps
```bash
python -m eval.eval \
  --model hf \
  --tasks AIME24 \
  --model_args "pretrained=microsoft/DialoGPT-medium" \
  --batch_size 1 \
  --output_path logs \
  --debug

**Expected**: Should run with limited samples for quick testing
**Actual**: Fails with AttributeError or runs full evaluation ignoring debug flag
## Root Cause
These benchmarks don't implement debug mode slicing like other benchmarks do. For example, MTBench properly handles debug with:
pythonif self.debug:
    examples = examples[:5]  # Limit to 5 examples
## Solution
Add consistent debug mode support across all benchmarks by implementing the same pattern used in working benchmarks.

## Impact

Enables faster development iteration
Consistent behavior across all benchmarks
Reduces compute costs during testing
Repository: mlfoundations/evalchemy
Issue: LiveCodeBench crashes on iteration due to dataset type inconsistency
Root cause: Validation Gap

## Problem
LiveCodeBench variants can crash during execution due to:
1. Dataset not being converted to list format
2. Missing type validation for examples

## Reproduction Steps
```python
# This can fail depending on dataset implementation
from eval.chat_benchmarks.LiveCodeBench.eval_instruct import LiveCodeBench
benchmark = LiveCodeBench()
# Iteration may fail or behave unexpectedly
```

## Root Cause Analysis
The current code loads examples but doesn't ensure they're in a consistent, iterable format
```python
examples_dataset = self.load_questions()
# examples_dataset might not be a proper list
for idx, example in enumerate(examples_dataset):
    # example might not be a dict - no validation
```
## Solution

1. **Explicit list conversion**: examples = list(examples_dataset)
2. **Type safety**: Add isinstance checks before processing
3. **Better error handling**: Log problematic entries instead of crashing

## Code Changes Preview
examples = list(examples_dataset)
```python
for idx, example in enumerate(examples):
    if not isinstance(example, dict):
        self.logger.error(f"Example {idx} is not dict: {type(example)}")
        continue
    # Process example...
```
## Impact

- Prevents runtime crashes

- Improves debugging experience
- Makes code more robust across different dataset implementations
Repository: mlfoundations/evalchemy
Issue: Difference between self.max_tokens self.max_new_tokens  in eval_instruct.py
Root cause: Architectural Constraint

For some tasks, for example, [LiveCodeBench](https://github.com/mlfoundations/evalchemy/blob/ce5cea94f9f0f61388d2234afb01d811ff4357f4/eval/chat_benchmarks/LiveCodeBench/eval_instruct.py#L69), it use self.max_new_tokens=max_tokens

For other tasks, for example, [HumanEval](https://github.com/mlfoundations/evalchemy/blob/ce5cea94f9f0f61388d2234afb01d811ff4357f4/eval/chat_benchmarks/HumanEval/eval_instruct.py#L48), it use self.max_token=max_tokens


Is there any special consideration on this? or we should unify them instead?
Repository: mlfoundations/evalchemy
Issue: LM Eval Tasks not found
Root cause: Configuration Error

Hi it seems that any of the tasks from the lm_eval benchmarks trigger "Task not found". I have attached the warning log and used the format from the README.md (I think we can ignore the fact I have no access to the underlying Mistral model as I have tired this with other models I can run and it warns me the same). I have been able to run other benchmarks such as GPQADiamond or MATH500, but anything from lm_eval seems to trigger this warning.

```
evalchemy                          0.1.0           /home/aahila/evalchemy
lm_eval                            0.4.7
vllm                               0.10.2
```

```
(myenv) aahila$ python -m eval.eval \
    --model hf \
    --tasks mmlu \
    --model_args "pretrained=mistralai/Mistral-7B-Instruct-v0.3" \
    --batch_size 2 \
    --output_path logs
INFO 09-18 21:50:10 [__init__.py:216] Automatically detected platform cuda.
WARNING: HF_HUB_CACHE environment variable is not set, using default cache directory ~/.cache/huggingface/hub for database utils
2025-09-18:21:50:12,384 WARNING  [task.py:155] OPENAI_API_KEY not set. Tasks requiring OpenAI will be skipped.
2025-09-18:21:50:20,720 INFO     [eval.py:381] Selected Tasks: ['mmlu']
2025-09-18:21:50:20,720 WARNING  [task.py:309] Task not found: mmlu
2025-09-18:21:50:20,974 INFO     [huggingface.py:133] Using device 'cuda'
2025-09-18:21:50:21,106 ERROR    [eval.py:404] Failed to initialize model: You are trying to access a gated repo.
Make sure to have access to it at https://huggingface.co/mistralai/Mistral-7B-Instruct-v0.3.
401 Client Error. (Request ID: Root=1-68cc7e9d-20e392fc208f834f5dd24e67;8fa548b6-be1c-486e-af1f-129a2fc3b1c1)

Cannot access gated repo for url https://huggingface.co/mistralai/Mistral-7B-Instruct-v0.3/resolve/main/config.json.
Access to model mistralai/Mistral-7B-Instruct-v0.3 is restricted. You must have access to it and be authenticated to access it. Please log in.
```
Repository: mlfoundations/evalchemy
Issue: [Bug] google/codegemma-7b-it Evaluation Results All Zero
Root cause: Validation Gap

Hi there,

I'm encountering an issue when evaluating the `google/codegemma-7b-it` model using `evalchemy`.

**Problem Description:**
When running evaluations for `google/codegemma-7b-it`, all the resulting metrics consistently show a value of 0.0, regardless of the dataset or evaluation setup. This suggests that the model might not be generating valid outputs or that there's an issue with how its outputs are being processed and scored by `evalchemy`.

**Steps to Reproduce:**

1.  Evaluation script
    ```bash
    CUDA_VISIBLE_DEVICES=0 python -m eval.eval \
      --model vllm \
      --tasks "LiveCodeBenchv5_official,HumanEval,HumanEvalPlus,MBPP,MBPPPlus,CruxEval,CodeElo,BigCodeBench" \
      --model_args "pretrained=/personal/opensource/models/codegemma-7b-it,tensor_parallel_size=1" \
      --batch_size 64 \
      --max_tokens 2048 \
      --apply_chat_template True \
      --output_path logs
    ```
2.  Observe the evaluation results. All metrics are reported as 0.0, except CruxEval.

<img width="736" height="1736" alt="Image" src="https://github.com/user-attachments/assets/2adaafa2-26f5-45e5-8442-8d4b5fc4458c" />

Any insights or guidance on resolving this would be greatly appreciated. Thank you!

Bests,
John
Repository: mlfoundations/evalchemy
Issue: [bug] LiveCodeBenchv5
Root cause: Algorithmic Error

https://github.com/mlfoundations/evalchemy/blob/main/eval/chat_benchmarks/LiveCodeBenchv5/livecodebench_utils.py#L176

here
this logic result in using single quote or missing space leading to fail
e.g.,
\_\_name\_\_ = '\_\_main\_\_'
Repository: mlfoundations/evalchemy
Issue: Benchmark tasks (AIME24 / MATH500 / GPQADiamond) not discovered due to task discovery mismatch
Root cause: Validation Gap

I’m trying to run Evalchemy with the documented tasks AIME24, MATH500, and GPQADiamond, but Evalchemy fails to discover these tasks at runtime, even though the benchmark modules are present and importable.

This appears to be a task discovery / import-path mismatch, not an authentication or model issue.

Environment

OS: Windows 11

Python: 3.10

Evalchemy: latest main branch

Install: pip install -e .

Invocation:

python -m eval.eval \
  --model curator \
  --tasks AIME24,MATH500,GPQADiamond \
  --model_name azure/gpt-4o \
  --model_args "azure_deployment=gpt-4o,tokenized_requests=False"


Error message
INFO 12-23 15:38:27 [__init__.py:216] Automatically detected platform cuda.
INFO 12-23 15:38:27 [__init__.py:216] Automatically detected platform cuda.
WARNING: HF_HUB_CACHE environment variable is not set, using default cache directory ~/.cache/huggingface/hub for database utils
2025-12-23:15:38:31,543 WARNING  [task.py:195] No BaseBenchmark subclass found in AIME24
WARNING: HF_HUB_CACHE environment variable is not set, using default cache directory ~/.cache/huggingface/hub for GPQADiamond benchmark
2025-12-23:15:38:31,551 WARNING  [task.py:195] No BaseBenchmark subclass found in GPQADiamond
2025-12-23:15:38:31,554 WARNING  [task.py:195] No BaseBenchmark subclass found in MATH500
2025-12-23:15:39:00,711 INFO     [eval.py:381] Selected Tasks: ['AIME24', 'MATH500', 'GPQADiamond']
2025-12-23:15:39:00,711 WARNING  [task.py:309] Task not found: AIME24
2025-12-23:15:39:00,711 WARNING  [task.py:309] Task not found: MATH500
2025-12-23:15:39:00,711 WARNING  [task.py:309] Task not found: GPQADiamond
Traceback (most recent call last):
    raise ValueError(
ValueError: The following tasks could not be found: ['AIME24', 'MATH500', 'GPQADiamond']
Repository: mlfoundations/evalchemy
Issue: vLLM backend crashes with "please provide at least one prompt" when max_gen_toks exceeds model context window
Root cause: Validation Gap

## Problem

When running benchmarks with vLLM backend, evaluation crashes with the following error if `max_gen_toks` exceeds the model's maximum sequence length:

```
ValueError: please provide at least one prompt
ERROR: Engine core proc EngineCore_0 died unexpectedly, shutting down client.
```

This does not occur with the HuggingFace (`hf`) backend.

## Root Cause Analysis

The vLLM integration in lm-evaluation-harness calculates available prompt space as:

```python
available_prompt_space = max_model_len - max_gen_toks
```

When `max_gen_toks >= max_model_len`, this results in `available_prompt_space <= 0`, causing the prompt to be truncated to empty. vLLM then raises a `ValueError` because there's no prompt to generate from.

## Environment

- evalchemy
- vLLM: 0.10.1.1

## Reproduction Steps

```bash
# Using ali-elganzory/1.7b-MixtureVitae-300BT-v1-DPO-Tulu3 (4096 context window)
# with MATH500 benchmark (32768 default max_tokens)

# This crashes with vLLM:
python -m eval.eval --model vllm \
  --tasks MATH500 \
  --model_args "trust_remote_code=True,pretrained=ali-elganzory/1.7b-MixtureVitae-300BT-v1-DPO-Tulu3"

# This works with HuggingFace:
python -m eval.eval --model hf \
  --tasks MATH500 \
  --model_args "trust_remote_code=True,pretrained=ali-elganzory/1.7b-MixtureVitae-300BT-v1-DPO-Tulu3"
```

## Affected Benchmarks

The issue occurs when a benchmark's default `max_tokens` exceeds the model's context window. Some benchmarks I tested and confirmed fail with their default settings:

- AIME24
- AIME25
- AMC23
- MATH500
- LiveCodeBench
- GPQADiamond
- JEEBench

This is not an exhaustive list. Any benchmark can be affected if `max_tokens` (default or via `--max_tokens` argument) exceeds the model's context window.

## Expected Behavior

The evaluation should gracefully cap `max_gen_toks` to fit within the available context window instead of crashing.

## Proposed Solution

Dynamically cap `max_gen_toks` per-prompt based on actual prompt length in `_normalize_model_args`:

```python
max_allowed = max_model_len - prompt_length - 16  # 16 token safety buffer
capped_max_new_tokens = min(max_new_tokens, max(1, max_allowed))
```
Repository: mlfoundations/evalchemy
Issue: Wild Bench is extremely slow due to judge
Root cause: Architectural Constraint

-> Currently wildbench seems to take a long time for evaluation, can we add a variable to add num_workers for openai calls?

Also need some caching on results, so that I can run different evaluators/multiple rounds of it.

@neginraoof @RyanMarten this seems like the perfect use case for curator: https://github.com/bespokelabsai/curator

@EtashGuha too
Repository: mlfoundations/evalchemy
Issue: Integrate Berkeley Function Calling Leaderboard into Evalchemy
Root cause: Unimplemented Feature Gap

Source: 
https://gorilla.cs.berkeley.edu/leaderboard.html
https://github.com/ShishirPatil/gorilla/tree/main/berkeley-function-call-leaderboard

I'll lay down the TODOs here, I'll be main point of contact for the integration.

For visibility @HuanzhiMao @Fanjia-Yan @ShishirPatil


FYI, evalchemy use github subtree for updating external codebase https://github.com/mlfoundations/evalchemy?tab=readme-ov-file#adding-external-evaluation-repositories, so our changes in BFCL codebase can be actively reflected in evalchemy.
Repository: mlfoundations/evalchemy
Issue: Race condition when running alpaca eval?
Root cause: Resource Mishandling

Alpaca eval seems to save annotations under `json` files in `eval/chat_benchmarks/alpaca_eval/src/alpaca_eval/evaluators_configs` - this leads to a race condition if multiple processes try to use the same annotator at once.

This issue can be circumvented by serializing evaluation, but posting this here in case there is a better way.
Repository: mlfoundations/evalchemy
Issue: Pip install is unable to install evalchemy
Root cause: Environment Incompatibility

Following the instructions on the readme I run into
```
ERROR: Cannot install evalchemy because these package versions have conflicting dependencies.

The conflict is caused by:
    liger-kernel 0.4.2 depends on triton>=2.3.1
    liger-kernel 0.4.1 depends on triton>=2.3.1
    liger-kernel 0.4.0 depends on triton>=2.3.1
    liger-kernel 0.3.1 depends on triton>=2.3.0
    liger-kernel 0.3.0 depends on triton>=2.3.0
    liger-kernel 0.2.1 depends on triton>=2.3.0
    liger-kernel 0.2.0 depends on triton>=2.3.0
    liger-kernel 0.1.1 depends on triton>=2.3.0
    liger-kernel 0.1.0 depends on triton>=2.3.0
    liger-kernel 0.0.1 depends on triton>=2.3.0
    liger-kernel 0.0.0 depends on triton>=2.3.0
```

Thanks for posting this. liger-kernel dependency has been removed. Can you Try again @RyanMarten ?

This fixed the liger issue! 

Tried again:
Looks like I am running into a `python 3.12` issue, since I'm attempting to install without conda. 
```
ERROR: Ignored the following versions that require a different python version: 4.0.0 Requires-Python >=3.7,<3.11
ERROR: Could not find a version that satisfies the requirement ray[default] (from evalchemy) (from versions: none)
ERROR: No matching distribution found for ray[default]
```

I see in the install instruction it is suggested to use `python 3.10`

Downgrading python to 3.10
```
brew update
brew install pyenv
pyenv install --list
pyenv install 3.10
pyenv local 3.10
eval "$(pyenv init --path)"
python3 --version
```

Reinstall
```
python3 -m venv .venv --prompt evalchemy
source .venv/bin/activate
pip install --upgrade pip
pip install -e ".[eval]"
pip install -e eval/chat_benchmarks/alpaca_eval
```
This works for me!
Repository: mlfoundations/evalchemy
Issue: lm-evaluation-harness dependency conflicts
Root cause: External Dependency Breakage

After pip install using the current TOML, and running the following command --

```bash
python -m eval.eval \
            --model hf \
            --tasks "leaderboard" \
            --model_args \"pretrained=meta-llama/Llama-3.1-8B-Instruct,dtype=bfloat16\" \
            --batch_size auto \
            --output_path logs
```

The run fails (after successfully completing all evaluation datapoints) because of a dependency conflict in the LaTeX parser.

```bash
2024-12-21:00:47:07,159 ERROR    [utils.py:180] LaTeX parsing requires the antlr4 Python package, provided by pip (antlr4-python3-runtime) or conda (antlr-python-runtime), version 4.11
2024-12-21:00:47:07,160 ERROR    [eval.py:213] Error in pretrain evaluation: LaTeX parsing requires the antlr4 Python package, provided by pip (antlr4-python3-runtime) or conda (antlr-python-runtime), version 4.11
```

Upgrading 'antlr4-python3-runtime' introduces a new dependency conflict --

```bash
omegaconf 2.2.3 requires antlr4-python3-runtime==4.9.*, but you have antlr4-python3-runtime 4.11.0 which is incompatible.
```

Upon upgrading omegaconf, another new dependency conflict appears --

```bash
sagemaker 2.237.1 requires omegaconf<2.3,>=2.2, but you have omegaconf 2.3.0 which is incompatible.
```

SUGGESTION: make Cloud & Storage dependencies optional.
Repository: mlfoundations/evalchemy
Issue: Support multi-node evaluation with vLLM
Root cause: Unimplemented Feature Gap

**Problem description:**
- Currently evalchemy supports only multi-gpu (and not multi-node): data-parallel, based on accelerate and tensor-parallel, based on HF transformers evaluation. These 2 options are mutually exclusive. There's already a [PR](https://github.com/mlfoundations/evalchemy/pull/29) that expands on the accelerate approach to support multi-node setup. This approach seems to work fine with small models.
- However, for larger models the approach that uses accelerate is not feasible.

**Proposed solution:**
- Support [vLLM](https://github.com/vllm-project/vllm) backend (based on Ray) like [lm-eval-harness](https://github.com/EleutherAI/lm-evaluation-harness/tree/59f9ad4b600861782773ad07272e7b4658f221b0?tab=readme-ov-file#tensor--data-parallel-and-optimized-inference-with-vllm).
- vLLM supports [highly optimized](https://blog.vllm.ai/2023/06/20/vllm.html) multi-node inference and both data- and  tensor-parallelism.
- In principle, vLLM should give 2 advantages: 1) faster evaluations than HF, especially with batched inference and 2) support for bigger models that do not fit on one GPU.
Repository: mlfoundations/evalchemy
Issue: For evals that don't require a judge, don't require `OPENAI_API_KEY`
Root cause: Validation Gap

Example:
`python -m eval.eval --model hf --tasks AMC23 --model_args "pretrained=Qwen/Qwen2.5-Math-1.5B-Instruct" --batch_size 32 --output_path logs`

Gives 
```
  File "/home/ubuntu/evalchemy/eval/eval.py", line 292, in cli_evaluate
    raise ValueError("Please set OPENAI_API_KEY")
ValueError: Please set OPENAI_API_KEY
```
Repository: mlfoundations/evalchemy
Issue: Does this project support integration with Weights & Biases (wandb)?

Thank you for your wonderful project. Does it support integration with Weights & Biases (wandb)?

Yes, we build on Eleuther's lm-eval-harness, which supports wandb.

You can use the `--wandb_args` flag. For specific details on how to use it, you can look at this section of the [eval harness README](https://github.com/EleutherAI/lm-evaluation-harness?tab=readme-ov-file#weights-and-biases).
Repository: mlfoundations/evalchemy
Issue: Is AIME25 not working?
Root cause: Environment Incompatibility

Hello,
I tried running the AIME25 task but it does not recognize it.
Is it fully integrated?
It would also be helpful if the list of tasks and how they are passed is provided.

Thanks.

Thanks for your suggestion, we should definitely add the list of tasks. 
AIME25 should work fine. Would you please give us more details about the error? This may be caused by another error in the stack trace.

Thanks for the prompt reply.

This is what I see in the logs:

```
raise ValueError(f"Tasks {unknown_tasks} are not recognized.")

ValueError: Tasks {'AIME25'} are not recognized.
```

Could you make sure the file `eval/chat_benchmarks/AIME25/eval_instruct.py` exists in your evalchemy sources? 
If not you might need to pull the latest changes from evalchemy. If it exist, I would recommend to uninstall lm_eval and re-install Evalchemy. This could be due to a missmatch of lm_eval version.

Yes, that was the case.
Thanks
Repository: mlfoundations/evalchemy
Issue: How to log model response?

Hello, 

For tasks outside of LM Eval Harness, how do I get the model's generated responses? 

This is currently a work in progress to log generated responses. cc @esfrankel 
Would you please let us know if you are asking about any specific benchmarks?

I'm primarily interested in coding and math tasks. 

I took a closer look and it seems like the convention is for the model outputs to be written to a temporary file which is then cleaned up once metrics are computed. For now, I copy over the output file before the cleanup is performed. 

Sounds good. For AIME, AMC, MATH500, LCB, and GPQADiamond, the output file is not temporary. We will send you an update once our unified logging is ready.

@TundeAtSN As part of #91 we made it easier to log the responses for the coding and math tasks. In this setup, responses are logged to a HF dataset locally (which can easily be upload to the HF hub).
Repository: mlfoundations/evalchemy
Issue: Log samples to huggingface
Root cause: Documentation Deficiency

https://github.com/EleutherAI/lm-evaluation-harness/tree/main?tab=readme-ov-file#saving--caching-results
--log_samples and --hf_hub_log_args hub_results_org= 

More about logging arguments here:
https://github.com/EleutherAI/lm-evaluation-harness/blob/main/docs/interface.md
Repository: mlfoundations/evalchemy
Issue: A suggestion for evalchemy about LiveCodeBench
Root cause: Unimplemented Feature Gap

Official repo of LiveCodeBench support different versions of data for evaluation, but in your repo there is only release_v2. It would be better to add some args for the user to choose.

@neginraoof we could treat them as separate tasks (e.g. LiveCodeBenchv1, LiveCodeBenchv2, LiveCodeBenchv3, LiveCodeBenchv4, LiveCodeBenchv5) 

https://huggingface.co/datasets/livecodebench/code_generation_lite#change-log

Or as @BeastyZ suggested, we can make it so you can pass arguments to the task itself.
Repository: mlfoundations/evalchemy
Issue: How to change model's temperature  ?
Root cause: Documentation Deficiency

Hello, I could not find an obvious way from the given examples on how one could change the model temparature (and number of runs, which defaults to 5) used for the generations?


For example, if i am running the script like this 
`python -m eval.eval\
   --model vllm \
    --tasks AIME24,AIME25,MATH500,GPQADiamond,AMC23 \
    --model_args "pretrained=deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B" \
    --batch_size 4 \
    --output_path logs
`

It looks like the temperature of 0.7 is used (but with `do_sample = False `for some reason) how can I change this? passing temperature to `model_args `doesn't recognize it

Thanks a lot! 

Have you used `--gen_kwargs`? e.g. 

```
 --gen_kwargs max_gen_toks=32768,do_sample=True,temperature=0.6,top_p=0.95 \
```

> Have you used `--gen_kwargs`? e.g.
> 
> ```
>  --gen_kwargs max_gen_toks=32768,do_sample=True,temperature=0.6,top_p=0.95 \
> ```

It doesn't work,`tee: unrecognized option '--gen_kwargs'`🥲
It seems that we can only revise these in (e.g.) eval\chat_benchmarks\AIME25\eval_instruct.py
Repository: modelscope/evalscope
Issue: alpaca_eval 评测
Root cause: Documentation Deficiency

alpaca_eval 评测数据集，魔塔上有很多个jsonl文件，我到底应该用那个jsonl文件呢？
 alpaca_eval 需要指定一个裁判模型（Judge Model）进行打分。默认使用 OpenAI API，如果未配置相关 Key 会导致连接失败。请通过 --judge-model-args 指定一个可用的裁判模型。 我想问下，这个judge模型如果想用本地路径，这个参数应该怎么设置呢？
这是我的评测脚本
from evalscope import TaskConfig, run_task
from evalscope.constants import EvalType

task_cfg = TaskConfig(
    model='./ckpts/fusion_code_math_1_4/checkpoint-19845',
    api_key='EMPTY',
    eval_type=EvalType.SERVICE,
    api_url='http://localhost:8801/v1/chat/completions',  # vLLM服务地址
    #eval_type='service',  # 指定服务模式
    datasets=[
        'alpaca_eval',
    ],
    dataset_args={
        'alpaca_eval': {
            "local_path": "/njfs/train-aitech/projects/yingwei5/evalscope/data/input_data.jsonl",
            'filters': {'remove_until': '</think>'} # 过滤掉思考的内容
        }
    },
    eval_batch_size=128,
    generation_config={
        'max_tokens': 32768,
        'temperature': 0.6,
        'top_p': 0.95,
        'top_k': -1,
        'n': 1,
    },
    timeout=60000,
    stream=True,
    limit=541,
)

run_task(task_cfg=task_cfg)
期待您的回复！非常感谢

1. 参考这里使用离线数据集的指南 https://evalscope.readthedocs.io/zh-cn/latest/get_started/basic_usage.html#id8 ，下载完整的数据仓库，路径指定到该目录即可，无需指定具体的jsonl
2. 使用judge模型的话，你需要用vllm等框架拉起一个模型服务再使用

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