Skip to content

Commit ff50987

Browse files
committed
List modifications of the fork
1 parent e7c54be commit ff50987

1 file changed

Lines changed: 69 additions & 0 deletions

File tree

‎README.md‎

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,8 @@ sample-by-sample results* to debug and see how your models stack-up.
3636

3737
*Customization at your fingertips*: letting you either browse all our existing tasks and [metrics](https://huggingface.co/docs/lighteval/metric-list) or effortlessly create your own [custom task](https://huggingface.co/docs/lighteval/adding-a-custom-task) and [custom metric](https://huggingface.co/docs/lighteval/adding-a-new-metric), tailored to your needs.
3838

39+
> **🇫🇷 OpenLLM-France fork.** This is the OpenLLM-France fork of lighteval, maintained by the OpenLLM-France consortium, on top of upstream [huggingface/lighteval](https://github.com/huggingface/lighteval). It adds a suite of French and multilingual benchmarks, safety and red-teaming evaluations, translation metrics (COMET, MetricX), long-context (RULER) and reasoning-model (thinking-budget) support, an offline-capable LLM-as-judge, and many bug fixes and backend-robustness improvements. See [OpenLLM-France fork additions](#openllm-france-fork-additions) for the full list.
40+
3941

4042
## Available Tasks
4143

@@ -162,6 +164,73 @@ pipeline.show_results()
162164
results = pipeline.get_results()
163165
```
164166

167+
## OpenLLM-France fork additions
168+
169+
This fork is maintained by the [OpenLLM-France](https://github.com/OpenLLM-France) consortium on top of upstream [huggingface/lighteval](https://github.com/huggingface/lighteval). Below is a summary of what it adds, grouped by category.
170+
171+
### Added benchmarks and tasks
172+
173+
**French & multilingual**
174+
- **BBH** (BIG-Bench-Hard) and **BBH-fr** (French), with chain-of-thought
175+
- **EIFFEL** — French idiomatic-expression MCQ
176+
- **CARTE** — French regional/cultural knowledge (with abstention-aware metrics)
177+
- **INCLUDE** — multilingual regional-knowledge exams
178+
- **Multilingual PIQA** — physical commonsense
179+
- **Multilingual AIME 2025** (French, German, …)
180+
- **BLEnD** — multilingual everyday cultural commonsense
181+
- **MGSM-rev2** — corrected MGSM, with proper chain-of-thought few-shot
182+
- **MathAlea** — French math MCQ (+ a generative variant)
183+
- **Exo7** — French math multi-label evaluation
184+
- **MMLU-Pro** generative variant (for instruct/thinking models), with CoT few-shot
185+
- **GPQA-fr** turned into a generative benchmark
186+
- **luciole_rag** — citation-aware grounded QA / RAG benchmark
187+
- **FLORES-200 instruction variant** (`flores200_instruct`) — chat/instruction-style translation with answer extraction
188+
- Additional settings for Arabic benchmarks
189+
190+
**Safety & red-teaming**
191+
- Safety benchmarks in French and other languages
192+
- **WildJailBreak**, **AyaRedTeaming**, **HarmBench**, **Hex-PHI**, and an AdvBench-based red-teaming benchmark
193+
- **FalseQA**, **PCBench**, **SCoolKID** (false-premise detection)
194+
- LLM-as-judge refusal metrics
195+
196+
**Long context**
197+
- **RULER** (metric + prompts)
198+
199+
### Reasoning ("thinking") model support
200+
- Two-phase generation with a separate **thinking budget** (default 5k) so the reasoning trace does not eat into the answer budget
201+
- `enable_thinking` option
202+
- Automatic detection of thinking models and their reasoning tags — `<think>…</think>` and Mistral `[THINK]…[/THINK]`
203+
- Robust stripping of reasoning traces (including models that prime the opening tag in the generation prompt)
204+
205+
### LLM-as-judge improvements
206+
- **Run the judge fully offline as a local (vLLM) model** — any Hugging Face model can be the judge, removing the hard dependency on an OpenAI/API judge. This is what makes it possible to use local safety judges such as Llama Guard 4, wildguard or Qwen in the safety benchmarks.
207+
- vLLM-judge enabling fixes: render chat messages to strings instead of token ids; free the evaluated model's GPU memory before loading the judge; environment variables to tune the judge's memory usage and to force eager mode.
208+
- More robust and reproducible judging: deterministic results; don't drop samples when the judge response can't be parsed; keep non-numeric (textual) judge outputs in the details; optional variant where the judge does not see the question.
209+
- LLM-as-judge **refusal metrics** (for safety / red-teaming).
210+
211+
### Translation metrics
212+
- **COMET** and **MetricX** metrics, wired into the FLORES benchmarks (device/batch options, GPU execution, offline-safe)
213+
- FLORES made to work with the parquet version of the dataset
214+
215+
### Backend, performance & robustness
216+
- Auto-detect the **Mistral/tekken tokenizer** (no more `LIGHTEVAL_TOKENIZER_MODE`)
217+
- Context-parallelism support (vLLM ≥ 0.15); fixes for mixing data/pipeline parallelism
218+
- Compatibility with recent vLLM versions (engine-arg filtering with warnings, logprob/prefix-caching fixes)
219+
- Memory controls (free the model before the judge, litellm logprob RAM fix, KV-cache length limits)
220+
- Caching fixes: `LIGHTEVAL_DISABLE_CACHE`, address-independent cache keys, unique `doc.id` across splits
221+
- Honour `HF_HOME`; offline-safe dataset/tokenizer loading; env vars for eager mode and VLM/Mistral loading
222+
- Option to set up a run **without actually running the evaluation** (dry run, e.g. to validate task/model loading)
223+
- **Robust result saving**: write the results JSON *before* building the details, so results survive even when details serialization fails (e.g. the Arrow 2 GB overflow on `live_code_bench`); such a failure is still surfaced as a non-zero exit
224+
225+
### Bug fixes
226+
- **Multiple-choice (MCQ) scoring on the Accelerate/Transformers backend**: fixed an incorrect 2-D slicing of the gathered continuation logits (and stray `-1` padding left in the continuations) that corrupted the log-likelihood comparison across choices.
227+
- Log-probability computation with recent vLLM (≥ 0.12), broken by prefix caching.
228+
- Many other corner-case fixes: IFBench / IFEval-fr, MGSM / MMLU-Pro few-shot CoT, GPQA-fr dataset, stop-sequences, `squad_v2` unanswerable rows, nltk / transformers version robustness, offline judge, and more
229+
230+
### Packaging
231+
- Community-task JSON stored as regular files (not Git LFS)
232+
- Fork-specific install / doc-build adjustments; built-in French/English system prompts; per-doc system-role support via `Doc.specific`
233+
165234
## 🙏 Acknowledgements
166235

167236
Lighteval took inspiration from the following *amazing* frameworks: Eleuther's [AI Harness](https://github.com/EleutherAI/lm-evaluation-harness) and Stanford's

0 commit comments

Comments
 (0)