What are these evals anyway?
We discuss evals in general, evals in the MSAR paper and the OpenCompass evaluation platforms
Why should we care about evals?
Many pretraining papers, or more broadly papers that propose a new LLM training method, claim their method âoutperformsâ all the alternatives they compare against. The paper we are reading this week is no exception.
The evaluation process, although it might feel technical and dry at times, provides the central (and sometimes single) place to judge such claims about model performance. Verifying that the evaluation process does what it claims to do, is a central part of reading the paper.
This post briefly goes over the main things to look out for in model evaluation, in this paper and in general.
What are these Evals anyway?
Evaluations (or just evals) are ways to test a modelâs capabilities on particular tasks. A metric is the scoring rule, such as the percentage of questions answered correctly. A benchmark provides a standardized set of tasks or questions and a protocol for evaluating performance on them.
Modern LLMs are designed to be versatile. We expect Claude to help us debug our code, think of birthday gifts for grandma, select the best washing machine cycle, and know the capital city of Palau (itâs Ngerulmud, btw). Since we expect state-of-the-art models to be a kind of âeverything machineâ, benchmarking them on a wide range of tasks is inevitable. Itâs also what makes evaluation difficult.
Which model is in question?
One key distinction about evaluation should be- which type of models are we evaluating? pretrained models, such as the ones in this paper, may lack a wide range of capabilities that are introduced during post-training (either via SFT, RLHF or RLVR). We know for example, that conversationalist abilities, as well as mathematical and reasoning capabilities, are improved significantly during post-training (In fact, this accounts for some of the major improvements of LLMs in recent years).
Pretrained LLMs are still expected to have various capabilities - general knowledge, math solving and language understanding, for example.
Main evaluation approaches
We can broadly divide evals into two types - look directly at output probabilities (say, which answer the model scores highest), or we could let the model generate an answer (say, a sentence), and check what it said.
Likelihood-based evaluation is the first approach. We give the model a question and several optional answers with a score. Then we let the model predict the next token, and see how it rated each answer.
(From HuggingFaceâs Evaulation Guidebook.)
This is useful for base models, especially smaller models or early training checkpoints, where following the answer format can itself be a challenge.
We can, alternatively, measure perplexity on some held out test set. This is in a way the metric that fits best the original task the pretrained models trained for. It does not, however, test a SPECIFIC capability as we might want.
Generation-based evaluation justlets the model write an answer. Grading that answer is the difficult part. We then need a way to grade it. For some tasks, such as math or code, we can evaluate the answer directly (checking the final math answer against the reference, unit tests for a script etc). Other more open-ended tasks may require a human/llm as judges.
in generation-based eval we often use few-shot prompting to steer the model by showing it what we expect.
Evals used in this paper
We can split the benchmarks used in this paper into 3 categories, following the authorsâ grouping: general capabilities, code and math, and Chinese language understanding.
The type, scoring and shots refer to how they are used in this paper, according to Appendix A. year marks the paper publication year for a given benchmark.
General capabilities
This is where we test things like general knowledge, science questions and reasoning across different domains.
| Benchmark | Introduced | Type and metric | What is tested | Shots |
|---|---|---|---|---|
| MMLU | 2020 | Likelihood; accuracy | Knowledge and problem solving across 57 subjects | 5 |
| MMLU-Pro | 2024 | Generation; answer accuracy | More reasoning-focused questions, with up to 10 options | 5 |
| MMLU-Redux | 2024 | Likelihood; accuracy | A manually checked and corrected subset of MMLU | 5 |
| ARC-C | 2018 | Likelihood; accuracy | The challenging subset of grade-school science questions | 25 |
| BBH | 2022 | Generation; answer accuracy | A collection of 23 challenging reasoning tasks | 3 |
For the likelihood tasks, the selected answer is the one with the lowest conditional perplexity.
An actual ARC-C example (training set, ACTAAP_2009_7_4):
Which planet has the longest planetary year?
A. Earth
B. Venus
C. Jupiter
D. Neptune
The reference answer is D, Neptune. We score the candidates, select one, and check whether it matches the reference. There is no requirement that the correct answer receive more than 50% probability; it needs to rank highest under the scoring rule.
Code and math
Here we let the model produce a solution. For math we check its answer, and for code we can actually run what it wrote.
| Benchmark | Introduced | Type and metric | What is tested | Shots |
|---|---|---|---|---|
| HumanEval | 2021 | Generation; pass@1 | Writing Python functions from descriptions | 0 |
| LCBench | Not clearly identified | Generation; pass@1 | Code tasks; see the note below | 5 |
| GSM8K | 2021 | Generation; answer accuracy | Grade-school math word problems | 4 |
| MATH | 2021 | Generation; answer accuracy | Competition math problems | 4 |
For code, pass@1 measures how often a single sampled solution passes the tests. This is different from generating many solutions and accepting any one that works.
An actual GSM8K example (test set, question 306):
John arm wrestles 20 people. He beats 80%. How many people did he lose to?
The reference answer is 4: he beats 16 people and loses to the other 4. The model generates a solution, and the scorer checks its final answer. Getting the final number right doesnât guarantee that every step of the explanation was correct.
An actual HumanEval example (HumanEval/55, from the original dataset):
def fib(n: int):
"""Return n-th Fibonacci number.
>>> fib(10)
55
>>> fib(1)
1
>>> fib(8)
21
"""
This is the prompt, including the examples the model gets to see. The model needs to complete the function body. The evaluator then runs the completed function against the taskâs tests, including additional inputs that werenât in the prompt.
The paper lists âLCBenchâ without specifying its version or evaluation period.
Chinese language understanding
The first two benchmarks test knowledge and reasoning in Chinese. C3 adds reading comprehension: we give the model a passage and ask questions about it.
| Benchmark | Introduced | Type and metric | What is tested | Shots |
|---|---|---|---|---|
| CMMLU | 2023 | Likelihood; accuracy | Knowledge across subjects, including Chinese cultural contexts | 5 |
| C-Eval | 2023 | Likelihood; accuracy | Chinese exam questions across subjects and education levels | 5 |
| C3 | 2019 | Likelihood; accuracy | Chinese reading comprehension | 3 |
An actual C3 example (dialogue development set, 36-3):
ç·ïŒèŻ·éźèżéæçć„¶ć?
ć„łïŒæïŒćšæ°ŽææèŸčăç·çç°ćšćŻèœćšćȘćż?
ćź¶é / èœŠäž / ććșé
For those of us who donât read Chinese, here is an English translation:
Man: Excuse me, is there milk here?
Woman: Yes, next to the fruit.Where is the man most likely now?
At home / In a vehicle / In a shop
The reference answer is ććșé (in a shop). The dialogue doesnât explicitly say âwe are in a shopâ, so the model needs to infer the location from the conversation. The model receives the Chinese version; the translation here is just for us.
Why these evals specifically? (and whatâs missing)
The paper does not explain the reason for choosing these benchmarks. It does, however, select benchmark families that focus on key areas of interest in pretrained models - geneeral knowledge, math, lanugage understanding.
There is, notably, some overlap between benchmarks - three MMLU versions, plus CMMLU, and a clear focus on Chinese.
One key point is about evals NOT in the paper - since the new architecture in question is focused on improving the residual stream, we might expect to see better in-context information retrieval.
One benchmark that could test this is RULER, specifically its retrieval tasks. These ask the model to find information within an input containing irrelevant text, with different input lengths and numbers of facts to retrieve.
OpenCompass: what is that?
OpenCompass is an evaluation framework. The platform takes care of the plumbing needed for high-scale evaluation with multiple models and multiple benchamrks - it takes care of: loading questions, formatting prompts, running inference, extracting answers, grading them and collecting the results.
For example. for a GSM8K-style evaluation, the workflow should look like this:
- Choose the model, dataset split, prompt and generation settings.
- Build each prompt, including any solved examples.
- Let the model generate a response.
- Extract the final answer and compare it with the reference answer.
- Aggregate the question scores into a benchmark score.
The configuration controls these choices, so the same dataset can have several evaluation setups.
The authors use a lightweight suite based on OpenCompass. The steps above describe the general workflow; Appendix A documents their task-level choices, including 4-shot generation for GSM8K.
What these scores leave out
There are a few things missing here:
-
These scores donât isolate the improvement in in-context retrieval we might expect.
-
Benchmarks like MMLU can suffer from saturation and contamination. Saturation is when scores get so similar, often near the ceiling, that the test stops telling models apart. A test thatâs too easy for frontier models can still be useful for the base models here. Contamination is when test material ends up in training data, so the model may already know the exam. This is a documented concern for MMLU, and the paper doesnât report a contamination check.
-
Anthropic recommends reporting uncertainty, sampling multiple responses for stochastic generation, and comparing modelsâ results on the same questions using paired statistics. The paper reports scores without error bars and doesnât report those paired statistics or generation sample counts. We canât tell whether these practices were used, which makes the smaller score differences harder to judge.
Sources and further reading
Enjoy Reading This Article?
Here are some more articles you might like to read next:
