Instructions to use tobiges/behavior_fast with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use tobiges/behavior_fast with Transformers:
# Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("tobiges/behavior_fast", device_map="auto") - Notebooks
- Google Colab
- Kaggle
Upload processor
Browse files- processing_action_tokenizer.py +5 -4
- processor_config.json +1 -1
- tokenizer.json +0 -0
processing_action_tokenizer.py
CHANGED
|
@@ -2,8 +2,7 @@ import logging
|
|
| 2 |
from typing import ClassVar
|
| 3 |
|
| 4 |
import numpy as np
|
| 5 |
-
from scipy.fft import dct
|
| 6 |
-
from scipy.fft import idct
|
| 7 |
from tokenizers import ByteLevelBPETokenizer
|
| 8 |
from tokenizers.trainers import BpeTrainer
|
| 9 |
from transformers import PreTrainedTokenizerFast
|
|
@@ -112,6 +111,7 @@ class UniversalActionProcessor(ProcessorMixin):
|
|
| 112 |
max_token = int(np.around(np.concatenate(dct_tokens) * scale).max())
|
| 113 |
min_token = int(np.around(np.concatenate(dct_tokens) * scale).min())
|
| 114 |
min_vocab_size = max_token - min_token
|
|
|
|
| 115 |
|
| 116 |
assert (
|
| 117 |
min_vocab_size <= vocab_size
|
|
@@ -137,11 +137,12 @@ class UniversalActionProcessor(ProcessorMixin):
|
|
| 137 |
alphabet = [chr(i) for i in range(max_token - min_token + 1)]
|
| 138 |
trainer = BpeTrainer(
|
| 139 |
vocab_size=vocab_size,
|
| 140 |
-
min_frequency=
|
| 141 |
show_progress=True,
|
| 142 |
special_tokens=[],
|
| 143 |
initial_alphabet=alphabet,
|
| 144 |
-
max_token_length=10000,
|
|
|
|
| 145 |
)
|
| 146 |
|
| 147 |
# Train the inner tokenizer (don't use ByteLevelBPETokenizer.train_from_iterator()
|
|
|
|
| 2 |
from typing import ClassVar
|
| 3 |
|
| 4 |
import numpy as np
|
| 5 |
+
from scipy.fft import dct, idct
|
|
|
|
| 6 |
from tokenizers import ByteLevelBPETokenizer
|
| 7 |
from tokenizers.trainers import BpeTrainer
|
| 8 |
from transformers import PreTrainedTokenizerFast
|
|
|
|
| 111 |
max_token = int(np.around(np.concatenate(dct_tokens) * scale).max())
|
| 112 |
min_token = int(np.around(np.concatenate(dct_tokens) * scale).min())
|
| 113 |
min_vocab_size = max_token - min_token
|
| 114 |
+
print(f"Min token: {min_token}, Max token: {max_token}, Min vocab size: {min_vocab_size}")
|
| 115 |
|
| 116 |
assert (
|
| 117 |
min_vocab_size <= vocab_size
|
|
|
|
| 137 |
alphabet = [chr(i) for i in range(max_token - min_token + 1)]
|
| 138 |
trainer = BpeTrainer(
|
| 139 |
vocab_size=vocab_size,
|
| 140 |
+
min_frequency=8,
|
| 141 |
show_progress=True,
|
| 142 |
special_tokens=[],
|
| 143 |
initial_alphabet=alphabet,
|
| 144 |
+
# max_token_length=10000,
|
| 145 |
+
max_token_length=100,
|
| 146 |
)
|
| 147 |
|
| 148 |
# Train the inner tokenizer (don't use ByteLevelBPETokenizer.train_from_iterator()
|
processor_config.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
| 3 |
"auto_map": {
|
| 4 |
"AutoProcessor": "processing_action_tokenizer.UniversalActionProcessor"
|
| 5 |
},
|
| 6 |
-
"min_token": -
|
| 7 |
"processor_class": "UniversalActionProcessor",
|
| 8 |
"scale": 10,
|
| 9 |
"time_horizon": null,
|
|
|
|
| 3 |
"auto_map": {
|
| 4 |
"AutoProcessor": "processing_action_tokenizer.UniversalActionProcessor"
|
| 5 |
},
|
| 6 |
+
"min_token": -501,
|
| 7 |
"processor_class": "UniversalActionProcessor",
|
| 8 |
"scale": 10,
|
| 9 |
"time_horizon": null,
|
tokenizer.json
CHANGED
|
The diff for this file is too large to render.
See raw diff
|
|
|