This is an ultra-fast, lightweight and clean code implementation of the Byte Pair Encoding (BPE) algorithm.
Project description
🚀tinybpe
👋 TinyBPE is a fast, lightweight, and clean language model tokenizer and basic BPE model trainer, implemented as a CPython extension.
📦 Setup
pip install tinybpe
🌟 Features
- The core is meticulously designed and implemented in C , using an AVL-Tree as the index for fast and efficient performance.
- Used as a Python module with a simple and elegant
API. - Supports training BPE models and continuing training on imported models to expand the vocabulary.
- Implements a general byte-level tokenizer, supporting fast encoding and decoding,as well asstreaming decoding.
- Supports regular expression pre-tokenization and adding special Tokens.
- Supports converting model parameters from tiktoken.
- Highly customizable, easy to integrate and extend, and the core is zero dependencies.
⚡️ Getting Started
📍1. Basic Usage
Convert the model parameters of tiktoken, create a tinybpe tokenizer, and compare it with tiktoken.
import tiktoken
from tinybpe import Tokenizer, get_from_tiktoken
tik_tokenizer = tiktoken.get_encoding("cl100k_base")
model_param = get_from_tiktoken(tik_tokenizer._mergeable_ranks) # Convert model parameters
tiny_tokenizer = Tokenizer(model_param) # Create a TinyBPE tokenizer
text = "👋 Hello, this is an example. 你好,这是一个例子。😁"
tik_ids = tik_tokenizer.encode(text)
tiny_ids = tiny_tokenizer.encode(text)
assert tik_ids == tiny_ids
print("tiktoken: ", tik_ids)
print("tinybpe: ", tiny_ids)
tik_text = tik_tokenizer.decode(tiny_ids)
tiny_text = tiny_tokenizer.decode(tik_ids)
assert tik_text == tiny_text
print("tiktoken: ", tik_text)
print("tinybpe: ", tiny_text)
# output:
# tiktoken: [9468, 239, 233, 22691, 11, 420, 374, 459, 3187, 13, 220, 57668, 53901, 3922, 44388, 21043, 48044, 27452, 45829, 1811, 76460, 223]
# tinybpe: [9468, 239, 233, 22691, 11, 420, 374, 459, 3187, 13, 220, 57668, 53901, 3922, 44388, 21043, 48044, 27452, 45829, 1811, 76460, 223]
# tiktoken: 👋 Hello, this is an example. 你好,这是一个例子。😁
# tinybpe: 👋 Hello, this is an example. 你好,这是一个例子。😁
📍 2. Training a BPE Model
The following code trains a simple BPE model. It imports text data from the<your-text-file>file, performs no preprocessing on the data, and directly hands it over to SimpleTrainer. It then executes the step() method 744 times to train a tokenizer with a vocabulary size of 1000.
from tinybpe import SimpleTrainer
text = open("<your-text-file>", "r", encoding="utf-8").read() # Import text file
trainer = SimpleTrainer(text) # Create a trainer
vocab_size = 1000 # Vocabulary size
merges_size = vocab_size - 256 # Model parameter size
for _ in range(merges_size):
pair, rank, freq = trainer.step() # Train
print(f"{pair} -> {rank} ({freq})") # Print training logs
print(trainer.merges) # Model parameters
print(trainer.merges_size) # Model parameter size, which is 744 (1000 - 256)
trainer.save("simple") # Save the model file as simple.tinymodel
Notes:
- The model's vocabulary size = 256 + the model's parameter size (
merges_size). - No preprocessing is done on the data. For example, if you directly train on the text string "...hello world..." without preprocessing, there is a chance that the model's vocabulary will contain tokens like "lo w". Therefore, it is recommended to preprocess the text file. You can refer to examples/regex_trainer.py .
- After loading the model parameters, you can continue training on the data to expand the vocabulary. You can refer to examples/simple_continue_training.py .
For more complex BPE models, you can design your own data preprocessing functions or inherit from the parent class bpe.Trainer of SimpleTrainer to implement your own trainer. bpe.Trainer is a high-performance, highly customizable base trainer implemented in C. You can also load an existing tinybpe model and continue training on text data to expand your vocabulary.
📍3. Loading a Model and Creating a Tokenizer
Use load_bpe_model to import the model file as tokenizer parameters, and then create a Tokenizer instance from the model parameters.
from tinybpe import Tokenizer, load_bpe_model
model = load_bpe_model("simple.tinymodel") # Import the model file
tokenizer = Tokenizer(model) # Create a tokenizer instance
s1 = "hello world, old man !"
ids = tokenizer.encode(s1) # Encode
print(ids)
s2 = tokenizer.decode(ids) # Decode
print(s2)
print(tokenizer.n_vocab) # Output the vocabulary size
tokenizer.save_vocab("simple") # Export the vocabulary file as simple.vocab
The Tokenizer has three parameters. The other two parameters are pat_str and special_tokens , which serve the same purpose as in tiktoken. pat_str is a regular expression string that preprocesses the text string for the tokenizer, and special_tokens is a dictionary of special Tokens. For more details, you can refer to examples/regex_tokenizer.py and examples/cl100k_tokenizer.py.
📍4. Streaming Decoding
Streaming decoding means decoding a string one Token ID at a time. If there are insufficient bytes to decode using unicode,the program will internally cache these bytes until they can be properly decoded.
from tinybpe import Tokenizer, load_bpe_model
model = load_bpe_model("simple.tinymodel")
tokenizer = Tokenizer(model)
s = "hello world 你好世界 😁"
ids = tokenizer.encode(s)
# String processing function
def cb_print(text):
print(text, end="")
decode = tokenizer.stream_decode(cb_print) # Generate a streaming decoding function
for i in ids:
decode(i) # Decode one Token ID at a time
📍5. Converting a Tiktoken Model
Convert the model parameters of tiktoken, specifically the mergeable_ranks , into a model file that can be loaded by tinybpe.
import tiktoken
from tinybpe import save_from_tiktoken
enc = tiktoken.get_encoding("cl100k_base")
save_from_tiktoken("cl100k_base", enc._mergeable_ranks) # Save the tiktoken model parameters as a TinyBPE model file
After running the above code, a file named cl100k_base.tinymodel will appear in the directory. You can load this model as shown in step 3 and use it normally, for example: examples/cl100k_tokenizer.py.
Note: In commercial scenarios, converting models from other tokenizers may involve copyright issues. Therefore, it is recommended to train your own tokenizer model. 😛
🔧 Contributing
Welcome contributions! If you find any bugs or have suggestions and ideas for improvement, feel free to open an issue to discuss them. If you want to add your creative ideas to the code or fix a bug, feel free to submit a pull request.
🤝 Acknowledgments
-
Very grateful to minbpe for its detailed explanation of the BPE algorithm and the corresponding code implementation.
-
Very grateful to tiktoken for providing tokenizer models for validation.
⌛Unit Testing
pip install -r requirements_dev.txt
python build_setup.py build_ext
python -m pytest
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tinybpe-0.1.1-cp313-cp313t-win_amd64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp313-cp313t-win_amd64.whl
- Upload date:
- Size: 24.6 kB
- Tags: CPython 3.13t, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a02ae9e145fce61b6156a6029a0b3fe0b86e8a1e66e5080d2783b059b4dd48cb
|
|
| MD5 |
9030c9041057806e0ca9e492e88549eb
|
|
| BLAKE2b-256 |
751b5936ce6c3e968ded9eee4fcaa9f1e70905474458c986e3316ce7c107d607
|
File details
Details for the file tinybpe-0.1.1-cp313-cp313t-win32.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp313-cp313t-win32.whl
- Upload date:
- Size: 23.0 kB
- Tags: CPython 3.13t, Windows x86
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
172c2a9a79f24cbb2c32aac52f4f64a97070259d2dbebd35a56ab1d5e7d172d8
|
|
| MD5 |
f6a097c46a6353be51954a4745431d4b
|
|
| BLAKE2b-256 |
7a4b124d942cd5eea2523c142ab8896561545561f11422acb75322f4fc391790
|
File details
Details for the file tinybpe-0.1.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 65.1 kB
- Tags: CPython 3.13t, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e12e51c8fe7e221496de3c18cd502908311b15e9225357e1a345c0b8bffaf7a1
|
|
| MD5 |
00ecfd83cf22c6d80c49be5db0491eff
|
|
| BLAKE2b-256 |
3d08dad3810ccb468bf9522b07661ec91ba62ab47ebb6862651ce3162f065b82
|
File details
Details for the file tinybpe-0.1.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 66.0 kB
- Tags: CPython 3.13t, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2a3dd3323f889e6fa292f24a8f5e5a0a99f25b20c8489006fbd4d9d60a589b6e
|
|
| MD5 |
7ff481d1ac5f99b077afe869493b339f
|
|
| BLAKE2b-256 |
ce051704bdbfec2650ef75f73624346201a6c60bdb0be142755934f3f37ca12e
|
File details
Details for the file tinybpe-0.1.1-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
- Upload date:
- Size: 61.5 kB
- Tags: CPython 3.13t, manylinux: glibc 2.17+ i686, manylinux: glibc 2.5+ i686
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5dfcc44fc12c26ef6d346989d981fbd48d6e87ced032504dfd0508e96ecd3cbd
|
|
| MD5 |
d6e998f964c81b7c9a3f5849ae75853b
|
|
| BLAKE2b-256 |
f282f8455062cade671cdb3268a15cfd89cc57398ad3d619bd184cd1773b5be0
|
File details
Details for the file tinybpe-0.1.1-cp313-cp313t-macosx_11_0_x86_64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp313-cp313t-macosx_11_0_x86_64.whl
- Upload date:
- Size: 22.4 kB
- Tags: CPython 3.13t, macOS 11.0+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ebc97845cb1823dfe7152dadaab7e914df91f6013ef0f7a8b8db891b494c7881
|
|
| MD5 |
4119155f843f176c957438270075fecb
|
|
| BLAKE2b-256 |
9b602183aacffcda6c89c93c496b6ceda8d9f50e22ff34f6837cd9986800b588
|
File details
Details for the file tinybpe-0.1.1-cp313-cp313t-macosx_11_0_arm64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp313-cp313t-macosx_11_0_arm64.whl
- Upload date:
- Size: 22.4 kB
- Tags: CPython 3.13t, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
25c0d96817af3a0e0e2580b818f11a360493f886f73b5c5c7fe4e4df95548676
|
|
| MD5 |
207eb2e26931bd66da20b476723fffea
|
|
| BLAKE2b-256 |
039882d8ff8fb2e09ea3bb0d5833c7de0ae108a927bea31bd73a06ba46c7284c
|
File details
Details for the file tinybpe-0.1.1-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 24.0 kB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ef2d1ea0c85a4a6b7c587279df3009ca59e454b2beb3cb0a33ef2b11eb905d7a
|
|
| MD5 |
4c051fb920fef2025b121e25c30a0af6
|
|
| BLAKE2b-256 |
ee934fba3468ca3bf6fcaf673edc92546abf3c42a09272655692816963b741b2
|
File details
Details for the file tinybpe-0.1.1-cp313-cp313-win32.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp313-cp313-win32.whl
- Upload date:
- Size: 22.6 kB
- Tags: CPython 3.13, Windows x86
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a8900798eae26e1046836baf4954e48ac09b6facddf3bab97ca1403a982bd6de
|
|
| MD5 |
98dbf39b708e46ff3ca560cb179b40bc
|
|
| BLAKE2b-256 |
3235b1a3c9dc6a3e9e018cb91e090c9906e221e38bbbe0519560adae7e2ec828
|
File details
Details for the file tinybpe-0.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 60.1 kB
- Tags: CPython 3.13, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3b60fd992e59cc103d389a20af454adcc9632277bf7a8688cd22b3edf5e645a3
|
|
| MD5 |
bd249edf917733afa2ab57845d9cb3a5
|
|
| BLAKE2b-256 |
a8e6d8ca22913e59c1b44c4418a6c35149b48b49c61a7a1c96fdee0bc6a69169
|
File details
Details for the file tinybpe-0.1.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 60.2 kB
- Tags: CPython 3.13, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
08d399d27579681abd22fa156b6db406585000ab6f2eed0cad610fe520324216
|
|
| MD5 |
0527f7fba2fcebb8a6dd19150e2083bc
|
|
| BLAKE2b-256 |
27b0650dcfdaa258a5f7fec9759dce32604036ebe6212d713f1e2edb3ab68e4c
|
File details
Details for the file tinybpe-0.1.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
- Upload date:
- Size: 55.9 kB
- Tags: CPython 3.13, manylinux: glibc 2.17+ i686, manylinux: glibc 2.5+ i686
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d834f9cd0fd19e8a955be99bbbea212c004b778a07fa0307f170ff8c70c7abc8
|
|
| MD5 |
10bf0d50abf14efb725f50bf0db70cf8
|
|
| BLAKE2b-256 |
3dac9b8133e65922b0e35d5f18ced9b4c6f35e9abd7cc3504e612e7cbcd50a1c
|
File details
Details for the file tinybpe-0.1.1-cp313-cp313-macosx_11_0_x86_64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp313-cp313-macosx_11_0_x86_64.whl
- Upload date:
- Size: 22.0 kB
- Tags: CPython 3.13, macOS 11.0+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d1d424e60c2fad96a621ca7307f34eff78112728132340e6404147a2bb2539c3
|
|
| MD5 |
aaf08cf42bab3bec5deb8cd9ffc51034
|
|
| BLAKE2b-256 |
50d5159fa1de535772cde39f954f62a662f0f88464cb427caa893804c771e027
|
File details
Details for the file tinybpe-0.1.1-cp313-cp313-macosx_11_0_arm64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp313-cp313-macosx_11_0_arm64.whl
- Upload date:
- Size: 22.0 kB
- Tags: CPython 3.13, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c57b113d5f8f3f9383eb2bcb0f11e8a291ee82cea1f54f7e725b27ab2a0139ca
|
|
| MD5 |
073b90f9347576d478fbd53d5ea352aa
|
|
| BLAKE2b-256 |
5f4bb129f9a48f7f02654dd57175f3538b527160f8f343165cd46c849d74b713
|
File details
Details for the file tinybpe-0.1.1-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 24.0 kB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
02d6528b102c87f2ff88d654075cafb52a153a38d38cf4a042963d7481adbccc
|
|
| MD5 |
ca64554a0329046f0e86b49698b76c7c
|
|
| BLAKE2b-256 |
053248c5f90c3009a308b2a5a72374aeb997d095032f2ca88f97ab79e1ffed19
|
File details
Details for the file tinybpe-0.1.1-cp312-cp312-win32.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp312-cp312-win32.whl
- Upload date:
- Size: 22.6 kB
- Tags: CPython 3.12, Windows x86
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c9f7499258fc62577ccf23d447295a94055146620a72e03685a914e8a17cb98f
|
|
| MD5 |
e65241ed901033eea047e342e164cf6b
|
|
| BLAKE2b-256 |
f71cb59bcb750686653fbc129f33b68302e1bbdc77f082fb687305f930243964
|
File details
Details for the file tinybpe-0.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 60.3 kB
- Tags: CPython 3.12, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1622315ccd9132dfe20ff953a2e3e101c0c507bb58bf5a3264fdffa7f4057330
|
|
| MD5 |
1f7e5bbdf526ec4bb28a93c8c2fb0423
|
|
| BLAKE2b-256 |
405bcb77048c738d3c7dc54dbf4efb453bf020f52eb42b4b600cac6fbbcf8252
|
File details
Details for the file tinybpe-0.1.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 60.3 kB
- Tags: CPython 3.12, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
56e497c77813ba3933f3baa7580b57f4a9b8f30bfa68ad93e26177b41bae7abf
|
|
| MD5 |
1e60eaf375924cda6176ec3882113948
|
|
| BLAKE2b-256 |
9cb5ec2e336084d2e0db75b823ff6f4cd3463d0bc54ce0788a3d1aa7aed02759
|
File details
Details for the file tinybpe-0.1.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
- Upload date:
- Size: 56.4 kB
- Tags: CPython 3.12, manylinux: glibc 2.17+ i686, manylinux: glibc 2.5+ i686
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fcee1e7c86d05cf1eea3976688a2d13420403036b93ad94fa2d8e241e949185e
|
|
| MD5 |
d2ec42dd7aab88af8d23e07e07b449aa
|
|
| BLAKE2b-256 |
daf1d0e8f17fe0e8912e6a898ac694b3d5d8e9c8c69cd30de7ed45bc7d64ea78
|
File details
Details for the file tinybpe-0.1.1-cp312-cp312-macosx_11_0_x86_64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp312-cp312-macosx_11_0_x86_64.whl
- Upload date:
- Size: 21.9 kB
- Tags: CPython 3.12, macOS 11.0+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ac7a4cde1167107d94dbe2c7e4b7042361992f41d8079ed4d2229db43ea8609e
|
|
| MD5 |
484ab9a57939514954cf4c4a57e3b1ba
|
|
| BLAKE2b-256 |
c383173efef7f5d016673a1f0bccefc8ac685deda74f1e8bc9dc278ac7149dcb
|
File details
Details for the file tinybpe-0.1.1-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 22.0 kB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2cb982e07ecd2ce440f55ec1803dc714ba3fdd3e32835fa59144f82b2d49eeac
|
|
| MD5 |
ca5419a591d4f5e93322be3a67acd789
|
|
| BLAKE2b-256 |
80324351211e0a19b159555025f7fab7a80abbf4a03cda083d462fbf65256887
|
File details
Details for the file tinybpe-0.1.1-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 24.0 kB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
897b0da08323de179111b1dd2c94df0a45e2ca88cc0a9dfb45d5c862f429ada2
|
|
| MD5 |
0a3fa1bda7620735bdc233263eff09af
|
|
| BLAKE2b-256 |
1b5520011ce444d4e96008db703c9db863d2f161e96b00308f2c4e53f50d42df
|
File details
Details for the file tinybpe-0.1.1-cp311-cp311-win32.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp311-cp311-win32.whl
- Upload date:
- Size: 22.5 kB
- Tags: CPython 3.11, Windows x86
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
29b14ad36a9a22e91d6f9e76f9fbe8d708ddec499aabdaaf012022a07d7708ad
|
|
| MD5 |
fef2a2afc5d114a8906d2a57cabfd5d3
|
|
| BLAKE2b-256 |
9dab30161b985036196f24d071e83965616a6baac795d1173c0e58c96ba0a3d7
|
File details
Details for the file tinybpe-0.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 59.3 kB
- Tags: CPython 3.11, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
51cfec4f9ab1ee701c62d954f8c0d56848f36a351678646437c8acff9eba27cc
|
|
| MD5 |
8b9b29694f2fa9be5a5f0883c18abe34
|
|
| BLAKE2b-256 |
bb6b0da4984f19a1b2ffe51ebbce20edcc7ba0c58158d5d9cbd5cd0ed56178bc
|
File details
Details for the file tinybpe-0.1.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 59.6 kB
- Tags: CPython 3.11, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
30a518d2fce3981e9763c3d211aec2aa70d027d1d8d2d11b66f1eed17c0cde67
|
|
| MD5 |
0e3fa83953771e902ffa25d4a4555fce
|
|
| BLAKE2b-256 |
6a78bcc429549f83b707459f2b2fd5aa72e3346a09b89f8b493c71ca94c97292
|
File details
Details for the file tinybpe-0.1.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
- Upload date:
- Size: 55.3 kB
- Tags: CPython 3.11, manylinux: glibc 2.17+ i686, manylinux: glibc 2.5+ i686
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
193d1ad006244863e454f1f2cc7b1b2fcc01fd08c06222e27fd8cf23542f7cd2
|
|
| MD5 |
38a70d0e89372914265cbdf60d1e7dc5
|
|
| BLAKE2b-256 |
f416d15647e8eaf376826c1d7b2f864a9072cbb222652a416018e7d034151d36
|
File details
Details for the file tinybpe-0.1.1-cp311-cp311-macosx_11_0_x86_64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp311-cp311-macosx_11_0_x86_64.whl
- Upload date:
- Size: 21.9 kB
- Tags: CPython 3.11, macOS 11.0+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
08c0aeebc80b75e784f129e6d1c98bd480b83ffc03c17ceccf760106fa7160a6
|
|
| MD5 |
173055738f222921cc8c6ff26762a5bd
|
|
| BLAKE2b-256 |
eb568b60e653c08dcfdb8963917d4721f41f82507b3e993714fe046ac5356466
|
File details
Details for the file tinybpe-0.1.1-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 22.0 kB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
be2dedea800a4ea2593a04c9c63bb2b4c645a827af8abaa4d2d0dd653561e9a5
|
|
| MD5 |
883222d2ab0ecbb3bfad867c45a02805
|
|
| BLAKE2b-256 |
3356ae0e21d39b300b5ba20558302a3aa999ddd3b4d723e28f4bd74cbbee5e0a
|
File details
Details for the file tinybpe-0.1.1-cp310-cp310-win_amd64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp310-cp310-win_amd64.whl
- Upload date:
- Size: 24.0 kB
- Tags: CPython 3.10, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
12bc612efcf6ffbe2535270dff5ed186c08fd7afaff42cfa63fab402d76d9d02
|
|
| MD5 |
56f1be2716ac101a51e2685dc220b1ca
|
|
| BLAKE2b-256 |
6ac8e34ec76e0c5540e305eca4bbd575fa94f639f7b21ac765fd78b8347388cc
|
File details
Details for the file tinybpe-0.1.1-cp310-cp310-win32.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp310-cp310-win32.whl
- Upload date:
- Size: 22.5 kB
- Tags: CPython 3.10, Windows x86
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2ec92e3994cc38ca4072392d25e46645dcec18c907997c3d6c0de0e3a64f1a2a
|
|
| MD5 |
7dc82bc7ab9f977382a9f074e2ad4e7e
|
|
| BLAKE2b-256 |
2044211a07f7a304add7d23715a9c476138ad83feb4522bedd2fdf8f3be1be3d
|
File details
Details for the file tinybpe-0.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 58.9 kB
- Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
527d82219c90ed7156a0bc2f2c3a26dd0b1c13cb0eabf5722a33904b54efb625
|
|
| MD5 |
df50aaf1e301c7db250ef1b50eddfa07
|
|
| BLAKE2b-256 |
0276b30dc575dc3464f203dd37cbb175e432cd01d0c4b246f686632dde899eaa
|
File details
Details for the file tinybpe-0.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 59.2 kB
- Tags: CPython 3.10, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f9f64262eb6af41d34f0492eef2c2af9db811e791784578150eb1d62b70bd245
|
|
| MD5 |
6bb23fe448458b6d5523e61cfa9b92ba
|
|
| BLAKE2b-256 |
8a9e76ee1448dfa7067e71bf9427d4a28350623e735f1d12250a6612d0681e76
|
File details
Details for the file tinybpe-0.1.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
- Upload date:
- Size: 55.0 kB
- Tags: CPython 3.10, manylinux: glibc 2.17+ i686, manylinux: glibc 2.5+ i686
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
25084307446fb2ff3d04f74b5b7e2274617791d81436c66792fef60434a7de0e
|
|
| MD5 |
fa7996e2ecd96c8ecccd86f97b4063af
|
|
| BLAKE2b-256 |
4f51d20def6b7cc2c79fab3a6c6948613313b874cb69a5e7e35401090112d46b
|
File details
Details for the file tinybpe-0.1.1-cp310-cp310-macosx_11_0_x86_64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp310-cp310-macosx_11_0_x86_64.whl
- Upload date:
- Size: 21.9 kB
- Tags: CPython 3.10, macOS 11.0+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
80f792d8505ee71e0c51c816b5ebd00b10e02af386c4da8fb11ef227df41e9ee
|
|
| MD5 |
c898c35676937ecc85d67306cde4e964
|
|
| BLAKE2b-256 |
b638df4d295d18034e9981a60bad81d365f731094c5c452efa93210bd1c45f0e
|
File details
Details for the file tinybpe-0.1.1-cp310-cp310-macosx_11_0_arm64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp310-cp310-macosx_11_0_arm64.whl
- Upload date:
- Size: 22.0 kB
- Tags: CPython 3.10, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bfd5b881a68fdc3b8ba293c3d67bed1668dc785ce2ea3e24795172b32a8efa7c
|
|
| MD5 |
802d151398a7c24e9eeb97ef5aaafd54
|
|
| BLAKE2b-256 |
cfcc17eacebb8f8d7f03bdee7247a8456ef00fefc6593372fb7d93f8ba6f310f
|
File details
Details for the file tinybpe-0.1.1-cp39-cp39-win_amd64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp39-cp39-win_amd64.whl
- Upload date:
- Size: 24.0 kB
- Tags: CPython 3.9, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2b832bff1f678f2e6db9fb21cc6a68cf0d389c7013631efa59a420593afb3715
|
|
| MD5 |
c691409a52c0d326c5829136c3bbcf1e
|
|
| BLAKE2b-256 |
cb516a0830259d953ad5dac05da64ca1a71eb44c8a4a3c2b146ae090d8cd45b4
|
File details
Details for the file tinybpe-0.1.1-cp39-cp39-win32.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp39-cp39-win32.whl
- Upload date:
- Size: 22.5 kB
- Tags: CPython 3.9, Windows x86
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a9465a9f50e2eb56a01a2701a7f04805511a68890834503e3ccecd5d1d1b28a2
|
|
| MD5 |
8d0a921445744e53018b149cbd163cc7
|
|
| BLAKE2b-256 |
71b3255521da7e21acf8a682090c5e8ff2fa2c2cb7aca175a706eb4fd9f10fd9
|
File details
Details for the file tinybpe-0.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 58.6 kB
- Tags: CPython 3.9, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2448192838068ade274b3a47d76e4807935ea7c55b6a57b2136e481c5a84629c
|
|
| MD5 |
55e2cd31635c0f747f192cf706eb03fd
|
|
| BLAKE2b-256 |
ebebdccccbc6c516289ec04177014b2691697d206955c2b466405dad92f2aa50
|
File details
Details for the file tinybpe-0.1.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 58.9 kB
- Tags: CPython 3.9, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e9bf1bf61597f43b19e7441e1f32c9f40aaea28f4e42a147c429b3990812250e
|
|
| MD5 |
a117d0614d3be675fec0fee435290e74
|
|
| BLAKE2b-256 |
df1789d4cfbbce08fd91f9f202589ef19a21e756e3a98a4b3e5645029ffc1d61
|
File details
Details for the file tinybpe-0.1.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
- Upload date:
- Size: 54.6 kB
- Tags: CPython 3.9, manylinux: glibc 2.17+ i686, manylinux: glibc 2.5+ i686
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7a4258406fe525d908fe36a3fbb657833f1706f5e34f7c56e5e6388d13da8e24
|
|
| MD5 |
01e7066f0b04721d684f9bfdf7186e4a
|
|
| BLAKE2b-256 |
567971678e9a8ed5a42d8da0aeeb82239e66eb3144473a88032ddaac52fd26b3
|
File details
Details for the file tinybpe-0.1.1-cp39-cp39-macosx_11_0_x86_64.whl.
File metadata
- Download URL: tinybpe-0.1.1-cp39-cp39-macosx_11_0_x86_64.whl
- Upload date:
- Size: 21.9 kB
- Tags: CPython 3.9, macOS 11.0+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b54a9a6999ec598a4d662d708c634bd082cd6411b1294d4760fab4afc941493c
|
|
| MD5 |
fe98eee44b4ce556237b6feebc4989ab
|
|
| BLAKE2b-256 |
cab13200c8ee8d3f8ed30ee5b9c026adc04aaa2ab31fc5d35ce4250cf3c67baa
|