diff options
| author | Jonas Knobloch <jonas.knobloch@t-online.de> | 2026-04-03 19:20:57 +0200 |
|---|---|---|
| committer | Jonas Knobloch <jonas.knobloch@t-online.de> | 2026-04-03 20:06:42 +0200 |
| commit | fda1267d7d6600c04a6cd7eb2a818ebefb8999e4 (patch) | |
| tree | cbfab8e35e396a8b5dc4e9d5ed765ad699dac1db /llm/run.go | |
| parent | c1644da32ecb9856f15e2c919a84d2666d5ef29c (diff) | |
Return document index in text iterator
Diffstat (limited to 'llm/run.go')
| -rw-r--r-- | llm/run.go | 23 |
1 files changed, 12 insertions, 11 deletions
@@ -52,9 +52,6 @@ func (e *Evaluator[R]) Run(title string, data dataset.Reader, window, stride int return int(e.completed.Load()) }) - n := 0 - m := 0 - defer pb.Close() tb := NewTokenBuffer(e.tokenizer, window, stride) @@ -63,20 +60,28 @@ func (e *Evaluator[R]) Run(title string, data dataset.Reader, window, stride int b := newBatch(e.batchSize) - for d := range data.Texts() { + doc := 0 + pos := 0 + + for n, d := range data.Texts() { + if n != doc { + pos = 0 + doc = n + } + for w, s := range tb.Push(n, d) { if s == 0 { s = 1 // first token as context } b.AddJob(Job{ - Document: n, - Position: m, + Document: doc, + Position: pos, Tokens: w, Seen: s, }) - m++ + pos++ if b.Size() == e.batchSize { e.jobs <- *b @@ -88,10 +93,6 @@ func (e *Evaluator[R]) Run(title string, data dataset.Reader, window, stride int pb.SetTotal(int(e.scheduled.Load())) } } - - n++ - - m = 0 } if s := b.Size(); s > 0 { |
