summaryrefslogtreecommitdiff
path: root/llm/cmd/eval/ppl.go
diff options
context:
space:
mode:
authorJonas Knobloch <jonas.knobloch@t-online.de>2026-04-07 00:01:23 +0200
committerJonas Knobloch <jonas.knobloch@t-online.de>2026-04-07 00:01:23 +0200
commitb81fa93e098ca689cb6f73627968fe0b4d49decb (patch)
treebb852b92c2761a0924a5cefcc3bce6d10b480822 /llm/cmd/eval/ppl.go
parentb9faf92148c7e6432ff0411783f444b7779fa36a (diff)
Run evaluator with score
Diffstat (limited to 'llm/cmd/eval/ppl.go')
-rw-r--r--llm/cmd/eval/ppl.go14
1 files changed, 11 insertions, 3 deletions
diff --git a/llm/cmd/eval/ppl.go b/llm/cmd/eval/ppl.go
index 261114e..8838f86 100644
--- a/llm/cmd/eval/ppl.go
+++ b/llm/cmd/eval/ppl.go
@@ -21,11 +21,19 @@ func perplexity() {
m := model()
t := tokenizer()
- e := llm.NewEvaluator(m, t, func(job llm.Job, logits [][]float32, tokens []int) pplResult {
- p, n := llm.NegLogLikelihood(logits, tokens)
+ e := llm.NewEvaluator(m, t, func(job llm.Job, logProbs []float32, tokens []int) pplResult {
+ total := float64(0)
+
+ n := 0
+
+ for _, p := range logProbs {
+ total -= float64(p)
+
+ n++
+ }
return pplResult{
- v: p,
+ v: total,
n: n,
}
})