Arvioinnin luotettavuus: JSON-korjaukset, tilastonäyttö, diagnostiikka#4
Merged
Conversation
MySQL ei ole enää paikallinen Docker-kontti vaan etäpalvelin geopalvelin1 (Tailscale, korkea latenssi); yhteysasetukset .env:stä. Muistutus kirjoittaa DB-koodi etälatenssia varten (pooli, COUNT/aggregaatit). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Hiljainen `except Exception` nielaisi eräkohtaiset virheet, joten epäonnistuneiden arviointien syytä ei voinut diagnosoida. Kirjataan nyt aikaleima, poikkeustyyppi/-viesti ja erän kurssien KID:t loki.log:iin. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Arviointierät kaatuivat massoittain JSON-virheisiin. Kaksi syytä korjattu: - kutsu.py: provider.require_parameters=true → OpenRouter reitittää vain tarjoajille jotka kunnioittavat response_formatia (poistaa "OpenInference"- tyyliset 502-roskavastaukset ja tyhjät vastaukset). - llmarviointi.py: json.loads(strict=False) → raa'at ohjausmerkit (\n, \t) perusteluissa eivät enää hylkää muuten kelvollista JSONia. Katkeamiset (Unterminated string) hoituvat pienemmällä ARVIOINTI_ERAKOKO:lla. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Structured-output-oppaan kohta 6: aseta_vastaus on suora INSERT (KysID, KID), joten mallin hallusinoima id kirjoittaisi orpo-/väärän rivin. _siivoa_tulokset suodattaa tulokset vain erän kursseihin ja normalisoi id:t kokonaisluvuiksi. Lisäksi loki.log:iin kirjataan kun malli palauttaa vähemmän kursseja kuin pyydettiin (hiljainen osittaisvaje näkyviin). Loki-kirjoitus DRY:ttiin _kirjaa-apufunktioon. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Saatavuustarkistus varmisti vain että mallin id löytyy /models-listalta, ei sitä tukeeko malli response_formatia. OpenRouterin /models-vastauksessa on jo per-malli supported_parameters — luetaan se ilman lisäpyyntöä: - muoto_kentta() + uusi "muoto?"-sarake mallitaulukkoon (skeema/json/tools/—/?) - muototuki_varoitus() + "Tarkista saatavuus" varoittaa jos nykyinen malli ei ilmoita response_format-tukea (silloin require_parameters ei voi auttaa) Ei suodata malleja pois — vain näyttää tuen, jotta mallinvalinta on itsedokumentoiva sen sijaan että vika näkyy vasta loki.log:ssa. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Neljä parannusta arvioinnin ajonäkymään: 1. laske_tyomaara palauttaa (uudet, täydennettävät, muuttuneet) — pelkkä puuttuva vastaus ei enää valehtele "kehote muuttunut" -varoituksena; varoitetaan vain kun tiiviste oikeasti eroaa. 2. Näyttö tyhjennetään joka ruudulla (stdscr.erase) — ei vanhaa valikkotekstiä roikkumaan "Yhdistetään LLM:ään..." perään. 3. aja() luokittelee epäonnistuneet erät (max_tokens/502/tyhjä/muoto) ja pitää elävää tilastoa; näyttö listaa onnistuneet + epäonnistuneet syittäin. 4. keskeyta_cb + stdscr.nodelay: 'q' keskeyttää ajon erien välissä ilman Ctrl-C:tä. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…gienia Kaksi jälkikorjausta Teemun kielioppikorjaus-mergen päälle: 1. Rename _lue_jarjestelma_kehote → _lue_jarjestelmakehote (jarjestelma_kehote → jarjestelmakehote) yhdenmukaisesti 9 tiedostossa. 2. loki.log pois versionhallinnasta: ajonaikainen loki aiheutti merge- konflikteja koneiden välillä ja likaantui joka ajolla. Gitignoretaan + poistetaan seurannasta (paikallinen tiedosto säilyy). Autouse-fixture mockaa _kirjaa → yksikkötestit eivät enää luo loki.log:ia repo-juureen. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
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.
Kokoaa arviointiputken luotettavuus- ja diagnostiikkaparannukset. Alkoi CLAUDE.md-päivityksestä (geopalvelin1-migraatio) ja kasvoi kattamaan JSON-virheluokan juurisyyt jotka estivät arviointien läpimenon.
Muutokset
Diagnostiikka
loki.log:iin (aiemminexceptnielaisi virheet hiljaa)JSON-luotettavuus (juurisyyt lokista)
provider.require_parameters=true→ OpenRouter reitittää vain tarjoajille jotka kunnioittavatresponse_formatia (poistaa roskaa tuottavat tarjoajat)json.loads(strict=False)→ raa'at ohjausmerkit perusteluissa eivät hylkää muuten kelvollista JSONia_siivoa_tuloksettorjuu hallusinoidut/väärät kurssi-id:t ennen DB-INSERTiä + kirjaa puuttuvat tuloksetLLM-asetusvalikko
supported_parameters-kentästä — ei lisäpyyntöäresponse_formatiaArvioinnin ajonäkymä
laske_tyomaaraerottaa täydennyksen (puuttuva vastaus) oikeasta muutoksesta (kehote/kysymys muuttui) — ei enää väärää "kehote muuttunut" -hälytystäqkeskeyttää ajon ilman Ctrl-C:täKielioppi / hygienia
_lue_jarjestelma_kehote→_lue_jarjestelmakehoteloki.logpois versionhallinnasta (gitignore) — aiheutti merge-konflikteja koneiden välilläTestit
374/374 läpi. Uudet testit: virheluokittelu, tilasto, keskeytys, id-siivous, muototuki.
Huom
DB/SQL-riippuvaista koodia ei ole voitu ajaa geopalvelinta vasten sandboxista — verifiointi ihmisellä.
🤖 Generated with Claude Code