summaryrefslogtreecommitdiff
path: root/llm/evaluator.go
diff options
context:
space:
mode:
authorJonas Knobloch <jonas.knobloch@t-online.de>2025-11-18 02:04:41 +0100
committerJonas Knobloch <jonas.knobloch@t-online.de>2025-11-18 02:09:09 +0100
commit321802e7b1f77f684a720d1052befd6d36280875 (patch)
tree7312584cc5db9b30acef5151dff242dbbd7a7379 /llm/evaluator.go
parent7073b124c5eb31169442ef18d1627b7ed7401280 (diff)
Add perplexity evaluation
Diffstat (limited to 'llm/evaluator.go')
-rw-r--r--llm/evaluator.go26
1 files changed, 26 insertions, 0 deletions
diff --git a/llm/evaluator.go b/llm/evaluator.go
new file mode 100644
index 0000000..ccc554e
--- /dev/null
+++ b/llm/evaluator.go
@@ -0,0 +1,26 @@
+package llm
+
+import "sync"
+
+type Evaluator struct {
+ mutex sync.RWMutex
+ models []Causal
+ tokenizer Tokenizer
+ results []float64
+ jobs int
+}
+
+func NewEvaluator() *Evaluator {
+ return &Evaluator{
+ models: make([]Causal, 0),
+ results: make([]float64, 0),
+ }
+}
+
+func (e *Evaluator) AddModel(model Causal) {
+ e.models = append(e.models, model)
+}
+
+func (e *Evaluator) SetTokenizer(tokenizer Tokenizer) {
+ e.tokenizer = tokenizer
+}