feat(bench): walidator loaderów MCQ (gold mapping + struktura + mojibake) - #88
Open
natiixnt wants to merge 1 commit into
Open
feat(bench): walidator loaderów MCQ (gold mapping + struktura + mojibake)#88natiixnt wants to merge 1 commit into
natiixnt wants to merge 1 commit into
Conversation
…ibake) Smoke-test wszystkich zarejestrowanych loaderów MCQ z bench_mcq: ładuje próbkę i sprawdza strukturę (niepuste pytanie, >=2 niepuste opcje, gold int w zakresie [0,len(opcji))), plus heurystyka mojibake dla zbiorów PL. Łapie gołą postać klasy błędów gold-mapping (gold poza zakresem) i uszkodzone kodowanie (mojibake). Docstring jasno mówi, czego NIE łapie (mapowanie "w zakresie" zamaskowane filtrem loadera, jak historyczny INCLUDE-44). bench/check_mcq_loaders.py - narzędzie on-demand (loadery pobierają z HF). bench/test_check_mcq_loaders.py - samowystarczalny test offline (16 asercji, bez sieci) nadający się do CI.
|
@natiixnt is attempting to deploy a commit to the kwikiel's projects Team on Vercel. A member of the Team first needs to authorize it. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Smoke-test/bramka jakości dla loaderów MCQ - waliduje, że to, co idzie do pomiaru, jest strukturalnie poprawne. Refs #3.
Po co
Pomiar jest tyle wart, ile loader. Realnie psuły go: złe mapowanie gold (INCLUDE-44: accuracy poniżej losowego) i uszkodzone kodowanie tekstu PL (mojibake). Ten walidator daje tani, powtarzalny check zanim odpalimy benchmark.
Co
bench/check_mcq_loaders.py- ładuje próbkę KAŻDEGO zarejestrowanego benchmarku (BENCHES) i sprawdza: niepuste pytanie, >=2 niepuste opcje, gold typu int (nie bool) w zakresie [0, len(opcji)). Dla zbiorów PL dodatkowo heurystyka mojibake (warning). Exit 1 na błędach strukturalnych / nieładowaniu.bench/test_check_mcq_loaders.py- samowystarczalny test offline (16 asercji, bez sieci/HF), nadaje się do CI.Uczciwie - czego NIE łapie
Mapowania gold, które jest "w zakresie" ale semantycznie złe (gold wskazuje złą opcję). Tak wyglądał historyczny INCLUDE-44: loader miał własny filtr
0<=gold<4, więc przesunięte/odrzucone goldy zostawały w zakresie. Realny sygnał tej klasy to wysoki odsetek odrzuconych wierszy lub accuracy poniżej losowego (domena bench_mcq). Walidator łapie gołą postać klasy (gold poza zakresem) i mojibake.Uruchomienie
Pełny przebieg pobiera zbiory z HF (on-demand). Do CI nadaje się sam
test_check_mcq_loaders.py(offline, deterministyczny).Kontekst
Pierwotnie pod #3 szukaliśmy nowego zbioru PL MCQ, ale czyste niepokryte zbiory są niedostępne (okapi/MMMLU/Global-MMLU-Lite bez PL), a EXAMS-PL jest zmojibakowany (zweryfikowane na danych). Zamiast wnosić brudny zbiór - wnosimy bramkę jakości, która taki zbiór by wychwyciła.