summaryrefslogtreecommitdiff
path: root/tokenizer/bpe/utility.go
diff options
context:
space:
mode:
authorJonas Knobloch <jonas.knobloch@t-online.de>2026-03-24 13:02:49 +0100
committerJonas Knobloch <jonas.knobloch@t-online.de>2026-03-24 15:40:19 +0100
commitac670c698540488c818a17c3749abf3ed4cb764a (patch)
treebeaa4102bdbd24d2568431b0791dc6b780c1dd22 /tokenizer/bpe/utility.go
parentfc9be8f81f673c0b04a0381a544b78e5a2a0d0bb (diff)
Add tokenizer module
* Wrap MBPE tokenizer
Diffstat (limited to 'tokenizer/bpe/utility.go')
-rw-r--r--tokenizer/bpe/utility.go20
1 files changed, 20 insertions, 0 deletions
diff --git a/tokenizer/bpe/utility.go b/tokenizer/bpe/utility.go
new file mode 100644
index 0000000..8ad0ca2
--- /dev/null
+++ b/tokenizer/bpe/utility.go
@@ -0,0 +1,20 @@
+package bpe
+
+import "github.com/jonasknobloch/mbpe"
+
+func NewTokenizerFromFiles(vocab, merges string) (*Tokenizer, error) {
+ model := mbpe.NewMBPE()
+
+ if err := model.Load(vocab, merges); err != nil {
+ return nil, err
+ }
+
+ tokenizer := mbpe.NewTokenizer(model)
+
+ pre := mbpe.NewByteLevel(false)
+
+ tokenizer.SetPreTokenizer(pre)
+ tokenizer.SetDecoder(pre)
+
+ return NewTokenizer(tokenizer), nil
+}