diff options
| author | Jonas Knobloch <jonas.knobloch@t-online.de> | 2026-06-27 19:08:39 +0200 |
|---|---|---|
| committer | Jonas Knobloch <jonas.knobloch@t-online.de> | 2026-06-27 19:08:39 +0200 |
| commit | e1e4eab2e1a682d633125f3c71cc09c3e95b30d3 (patch) | |
| tree | 92f107c4907f09b0f898351830286e981db87893 /llm/tokenbuffer.go | |
| parent | 416fa02619a2111ab3184f083f513bd263fc7cf2 (diff) | |
Add token buffer config
Diffstat (limited to 'llm/tokenbuffer.go')
| -rw-r--r-- | llm/tokenbuffer.go | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/llm/tokenbuffer.go b/llm/tokenbuffer.go index d19de4a..e2d8a91 100644 --- a/llm/tokenbuffer.go +++ b/llm/tokenbuffer.go @@ -12,22 +12,27 @@ type TokenBuffer struct { includeTail bool } +type TokenBufferConfig struct { + Window int + Stride int +} + type TokenWindow struct { Document int Tokens []int64 Seen int } -func NewTokenBuffer(tokenizer Tokenizer, window, stride int) *TokenBuffer { - if stride > window { +func NewTokenBuffer(tokenizer Tokenizer, cfg TokenBufferConfig) *TokenBuffer { + if cfg.Stride > cfg.Window { panic("stride exceeds window") } return &TokenBuffer{ tokenizer: tokenizer, - window: window, - stride: stride, - buffer: make([]int64, 0, 2*window), + window: cfg.Window, + stride: cfg.Stride, + buffer: make([]int64, 0, 2*cfg.Window), document: -1, position: 0, includeTail: true, |
