From a53c085de9f3e27dadf1f3f3025708d5c7542f92 Mon Sep 17 00:00:00 2001 From: Jonas Knobloch Date: Wed, 25 Mar 2026 21:23:41 +0100 Subject: Refactor evaluator initialization --- llm/evaluator.go | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) (limited to 'llm/evaluator.go') diff --git a/llm/evaluator.go b/llm/evaluator.go index 24fe2d4..0eb5418 100644 --- a/llm/evaluator.go +++ b/llm/evaluator.go @@ -20,28 +20,18 @@ type Evaluator[R any] struct { callback func(job Job, logits [][]float32, tokens []int) R } -func NewEvaluator[R any]() *Evaluator[R] { +func NewEvaluator[R any](model Causal, tokenizer Tokenizer, callback func(job Job, logits [][]float32, tokens []int) R) *Evaluator[R] { return &Evaluator[R]{ - models: make([]Causal, 0), + models: []Causal{model}, // TODO multiple devices + tokenizer: tokenizer, batchSize: 1, // TODO arg numWorkers: 4, // TODO arg jobs: make(chan batch, 1024), results: make(chan R, 1024), + callback: callback, } } -func (e *Evaluator[R]) AddModel(model Causal) { - e.models = append(e.models, model) -} - -func (e *Evaluator[R]) SetTokenizer(tokenizer Tokenizer) { - e.tokenizer = tokenizer -} - -func (e *Evaluator[R]) SetCallback(callback func(job Job, logits [][]float32, tokens []int) R) { - e.callback = callback -} - func (e *Evaluator[R]) Results() chan R { return e.results } -- cgit v1.3.1