Skip to main content

BPE Tokenizer Editor

PyPI version Python versions License: MIT

A high-performance Python library for editing HuggingFace BPE tokenizer.json files with consistency guarantees. Built with Rust for maximum performance.

Features

  • Validate merges - Check that all merge results exist in vocabulary
  • Add tokens - Add new tokens with automatic merge chain creation
  • Remove tokens - Remove tokens with cascade deletion of dependent merges
  • Shrink vocab - Remove N longest tokens to reduce vocabulary size
  • Sync single-chars - Copy all single-character tokens from source tokenizer
  • Keep vocab size fixed - Add tokens while automatically removing others to maintain size
  • Reindex vocab - Make vocabulary IDs sequential by removing gaps
  • 🚀 Rust-powered - Native performance with Python convenience

Installation

pip install bpe-tokenizer-editor

Requirements

  • Python 3.8+
  • No additional dependencies required (Rust code is compiled into the wheel)

Quick Start

from bpe_tokenizer_editor import BPETokenizerEditor

# Load a tokenizer
editor = BPETokenizerEditor("tokenizer.json")

# Check stats
print(f"Vocabulary size: {editor.vocab_size}")
print(f"Number of merges: {editor.merges_count}")

# Validate merges
validation = editor.validate_merges()
print(f"Valid merges: {validation.valid_count}")
print(f"Invalid merges: {validation.invalid_count}")

# Add a new token
result = editor.add_token("merhaba")
print(f"Added: {result.added}, Method: {result.method}")

# Save the modified tokenizer
editor.save("tokenizer_modified.json")

API Reference

Loading and Saving

# Load from file
editor = BPETokenizerEditor("tokenizer.json")

# Load from JSON string
editor = BPETokenizerEditor.from_json(json_string)

# Save to file
editor.save("output.json")

# Export to JSON string
json_str = editor.to_json()

Properties

editor.vocab_size    # Current vocabulary size
editor.merges_count  # Current number of merge rules

Token Operations

# Check if token exists
editor.has_token("hello")  # Returns bool

# Get token ID
editor.get_token_id("hello")  # Returns int or None

# Get token by ID
editor.get_token_by_id(1000)  # Returns str or None

# Get all tokens as dict
vocab = editor.get_vocab()  # Returns Dict[str, int]

# Get all merges
merges = editor.get_merges()  # Returns List[Tuple[str, str]]

# Get single-character tokens
single_chars = editor.get_single_char_tokens()  # Returns List[Tuple[str, int]]

Statistics

stats = editor.get_stats()
print(f"Vocab size: {stats.vocab_size}")
print(f"Merges: {stats.merges_count}")
print(f"Single chars: {stats.single_char_count}")
print(f"Special tokens: {stats.special_token_count}")
print(f"ID range: {stats.min_token_id} - {stats.max_token_id}")
print(f"Length distribution: {stats.length_distribution}")

Validation

# Validate merges (check if merge results exist in vocab)
result = editor.validate_merges()
print(f"Valid: {result.valid_count}, Invalid: {result.invalid_count}")

for idx, token_a, token_b in result.invalid_merges:
    print(f"  Invalid merge at {idx}: '{token_a}' + '{token_b}'")

# Fix invalid merges (remove them)
removed_count = editor.remove_invalid_merges()
print(f"Removed {removed_count} invalid merges")

Adding Tokens

# Add a single token with automatic merge chain creation
result = editor.add_token("newtoken")
print(f"Added: {result.added}")
print(f"Method: {result.method}")  # 'single_char', 'longest_prefix', or 'char_chain'
print(f"Added merges: {result.added_merges}")

# Add multiple tokens
results = editor.add_tokens(["token1", "token2", "token3"])

# Add special token without merge chain
editor.add_token_atomic("<special>")

# Add tokens while keeping vocabulary size fixed
result = editor.add_tokens_keep_size(
    tokens=["new1", "new2", "new3"],
    whitelist=["protected_token"]  # Optional: tokens that should never be removed
)
print(f"Added: {result['tokens_added']}, Removed: {result['tokens_removed']}")

Removing Tokens

# Remove a token and all its dependencies (cascade removal)
result = editor.remove_token("unwanted")
print(f"Root token: {result.root_token}")
print(f"Removed tokens: {result.removed_tokens}")
print(f"Removed merges: {result.removed_merges}")

# Remove multiple tokens
results = editor.remove_tokens(["token1", "token2"])

Shrinking Vocabulary

# Preview what would be removed
tokens_to_remove = editor.find_tokens_to_shrink(count=1000, min_id=50000)
for token, id, length in tokens_to_remove[:10]:
    print(f"  {token} (ID: {id}, length: {length})")

# Actually shrink the vocabulary
result = editor.shrink(count=1000, min_id=50000)
print(f"Initial size: {result.initial_vocab_size}")
print(f"Final size: {result.final_vocab_size}")
print(f"Tokens removed: {result.total_tokens_removed}")
print(f"Merges removed: {result.total_merges_removed}")

Syncing with Another Tokenizer

# Sync single-character tokens from source tokenizer
# (useful for preserving Unicode coverage)
result = editor.sync_single_chars(
    source_path="original_tokenizer.json",
    min_id=50000  # Only remove tokens with ID >= 50000
)
print(f"Chars added: {result['chars_added_count']}")
print(f"Tokens removed: {result['total_tokens_removed']}")

Reindexing Vocabulary

After sync operations or modifications, vocabulary IDs may have gaps (e.g., IDs jump from 73000 to 74000). This creates a sparse vocabulary. Use reindex to make all IDs sequential:

# Check for gaps in vocabulary IDs
has_gaps, total_gaps, min_id, max_id = editor.check_vocab_gaps()
if has_gaps:
    print(f"Found {total_gaps} gaps in ID space (range: {min_id}-{max_id})")

# Reindex to make IDs sequential
result = editor.reindex_vocab()
print(f"Remapped {result.ids_remapped} IDs")
print(f"Removed {result.gaps_removed} gaps")
print(f"New ID range: {result.new_min_id} - {result.new_max_id}")

Note: The sync_single_chars method automatically calls reindex_vocab after completing, so you typically don't need to call it manually after syncing.


## Examples

### Training a Domain-Specific Tokenizer

```python
from bpe_tokenizer_editor import BPETokenizerEditor

# After training your custom tokenizer, validate and fix it
editor = BPETokenizerEditor("my_custom_tokenizer.json")

# Check for problems
validation = editor.validate_merges()
if validation.invalid_count > 0:
    print(f"Found {validation.invalid_count} invalid merges, fixing...")
    editor.remove_invalid_merges()

# Sync Unicode characters from original tokenizer
result = editor.sync_single_chars(
    source_path="original_tokenizer.json",
    min_id=50000
)
print(f"Added {result['chars_added_count']} missing characters")

# Add domain-specific tokens
domain_tokens = ["merhaba", "dünya", "Türkiye"]
for token in domain_tokens:
    result = editor.add_token(token)
    if result.added:
        print(f"Added '{token}' using {result.method} method")

# Save the result
editor.save("my_final_tokenizer.json")

Reducing Vocabulary Size

from bpe_tokenizer_editor import BPETokenizerEditor

editor = BPETokenizerEditor("large_tokenizer.json")
print(f"Original size: {editor.vocab_size}")

# Preview what will be removed
preview = editor.find_tokens_to_shrink(count=10000, min_id=50000)
print(f"Will remove {len(preview)} tokens")
print("First 5 tokens to be removed:")
for token, id, length in preview[:5]:
    print(f"  '{token}' (length={length}, id={id})")

# Perform the shrink
result = editor.shrink(count=10000, min_id=50000)
print(f"New size: {editor.vocab_size}")
print(f"Total tokens removed (including cascade): {result.total_tokens_removed}")

editor.save("smaller_tokenizer.json")

Adding Tokens with Fixed Vocabulary Size

from bpe_tokenizer_editor import BPETokenizerEditor

editor = BPETokenizerEditor("tokenizer.json")
original_size = editor.vocab_size

# Add new tokens while keeping the same vocabulary size
result = editor.add_tokens_keep_size(
    tokens=["custom1", "custom2", "custom3"],
    whitelist=["<pad>", "<eos>", "<bos>"]  # Never remove these
)

print(f"Tokens added: {result['tokens_added']}")
print(f"Tokens removed to maintain size: {result['tokens_removed']}")
print(f"Final vocab size: {editor.vocab_size}")  # Should equal original_size

editor.save("tokenizer_with_custom_tokens.json")

Performance

The library is written in Rust and compiled to native code, providing excellent performance:

Operation Time (256K vocab)
Load tokenizer ~50ms
Validate merges ~100ms
Get stats ~50ms
Shrink 1000 tokens 2-5s
Sync 18K chars 30-60s

Building from Source

If you want to build the package from source:

# Install maturin
pip install maturin

# Build and install in development mode
maturin develop --features python

# Build wheel for distribution
maturin build --release --features python

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

MIT License - see LICENSE file for details.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bpe_tokenizer_editor-0.1.1.tar.gz (40.3 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

bpe_tokenizer_editor-0.1.1-cp38-abi3-win_arm64.whl (328.7 kB view details)

Uploaded CPython 3.8+Windows ARM64

bpe_tokenizer_editor-0.1.1-cp38-abi3-win_amd64.whl (352.9 kB view details)

Uploaded CPython 3.8+Windows x86-64

bpe_tokenizer_editor-0.1.1-cp38-abi3-win32.whl (325.1 kB view details)

Uploaded CPython 3.8+Windows x86

bpe_tokenizer_editor-0.1.1-cp38-abi3-musllinux_1_2_x86_64.whl (650.6 kB view details)

Uploaded CPython 3.8+musllinux: musl 1.2+ x86-64

bpe_tokenizer_editor-0.1.1-cp38-abi3-musllinux_1_2_i686.whl (681.4 kB view details)

Uploaded CPython 3.8+musllinux: musl 1.2+ i686

bpe_tokenizer_editor-0.1.1-cp38-abi3-musllinux_1_2_armv7l.whl (693.3 kB view details)

Uploaded CPython 3.8+musllinux: musl 1.2+ ARMv7l

bpe_tokenizer_editor-0.1.1-cp38-abi3-musllinux_1_2_aarch64.whl (589.5 kB view details)

Uploaded CPython 3.8+musllinux: musl 1.2+ ARM64

bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (452.4 kB view details)

Uploaded CPython 3.8+manylinux: glibc 2.17+ x86-64

bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl (479.2 kB view details)

Uploaded CPython 3.8+manylinux: glibc 2.17+ s390x

bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (549.8 kB view details)

Uploaded CPython 3.8+manylinux: glibc 2.17+ ppc64le

bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_i686.manylinux2014_i686.whl (475.7 kB view details)

Uploaded CPython 3.8+manylinux: glibc 2.17+ i686

bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (416.2 kB view details)

Uploaded CPython 3.8+manylinux: glibc 2.17+ ARMv7l

bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (411.5 kB view details)

Uploaded CPython 3.8+manylinux: glibc 2.17+ ARM64

bpe_tokenizer_editor-0.1.1-cp38-abi3-macosx_11_0_arm64.whl (389.0 kB view details)

Uploaded CPython 3.8+macOS 11.0+ ARM64

bpe_tokenizer_editor-0.1.1-cp38-abi3-macosx_10_12_x86_64.whl (411.1 kB view details)

Uploaded CPython 3.8+macOS 10.12+ x86-64

File details

Details for the file bpe_tokenizer_editor-0.1.1.tar.gz.

File metadata

  • Download URL: bpe_tokenizer_editor-0.1.1.tar.gz
  • Upload date:
  • Size: 40.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for bpe_tokenizer_editor-0.1.1.tar.gz
Algorithm Hash digest
SHA256 807454af24f9510dd9fb57c1ee9a6e1b2d20bffe8ff2d3ae7115856f12953a59
MD5 52f9b9b99079421b9b25c5f2271be739
BLAKE2b-256 0ad9f861e867159514a111511956f558f4d8b58e4e6ffd1734c077d118c3e938

See more details on using hashes here.

File details

Details for the file bpe_tokenizer_editor-0.1.1-cp38-abi3-win_arm64.whl.

File metadata

  • Download URL: bpe_tokenizer_editor-0.1.1-cp38-abi3-win_arm64.whl
  • Upload date:
  • Size: 328.7 kB
  • Tags: CPython 3.8+, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for bpe_tokenizer_editor-0.1.1-cp38-abi3-win_arm64.whl
Algorithm Hash digest
SHA256 9f33d2511e68f6a20d65621998a29f208f5f06cf82c6d8c9ffc535edcc7c396c
MD5 8cb42e378813d75357b8a55d5db650fa
BLAKE2b-256 7f6e4a48c74d6067f1d9d09366b15eb6311a00d418ccf06c46d13567950f5611

See more details on using hashes here.

File details

Details for the file bpe_tokenizer_editor-0.1.1-cp38-abi3-win_amd64.whl.

File metadata

  • Download URL: bpe_tokenizer_editor-0.1.1-cp38-abi3-win_amd64.whl
  • Upload date:
  • Size: 352.9 kB
  • Tags: CPython 3.8+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for bpe_tokenizer_editor-0.1.1-cp38-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 68b462a6e878b8f70114b5818435560ff7aa9f3e43193a1cd7cb1cf400ce0b90
MD5 2629b1d586306ec587534b5cff51fa96
BLAKE2b-256 0c4aff25fe1d90afe21387948d712270142b8558a57ff498b18bfb10fa6b9228

See more details on using hashes here.

File details

Details for the file bpe_tokenizer_editor-0.1.1-cp38-abi3-win32.whl.

File metadata

  • Download URL: bpe_tokenizer_editor-0.1.1-cp38-abi3-win32.whl
  • Upload date:
  • Size: 325.1 kB
  • Tags: CPython 3.8+, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for bpe_tokenizer_editor-0.1.1-cp38-abi3-win32.whl
Algorithm Hash digest
SHA256 854f23e490fb8044caeaa448c65f41de3b9d7f2944a2556769f629101d3839ab
MD5 f62d15ed2b56b034828b28e4508a6228
BLAKE2b-256 b90f64b0e75d28e5abfc5dbdec007530469f61b7330cca63abc3ffe447a9713e

See more details on using hashes here.

File details

Details for the file bpe_tokenizer_editor-0.1.1-cp38-abi3-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: bpe_tokenizer_editor-0.1.1-cp38-abi3-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 650.6 kB
  • Tags: CPython 3.8+, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for bpe_tokenizer_editor-0.1.1-cp38-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 e1301eae460c6bbb6353c57b55cec9e016f10b6d98dd938eed124864335904fd
MD5 98665bcd767f2abe54df902418c635a3
BLAKE2b-256 08570fcb6b5b9295373b0465008c17d2545dd0840bf43bf203f73a2a6b0414f8

See more details on using hashes here.

File details

Details for the file bpe_tokenizer_editor-0.1.1-cp38-abi3-musllinux_1_2_i686.whl.

File metadata

  • Download URL: bpe_tokenizer_editor-0.1.1-cp38-abi3-musllinux_1_2_i686.whl
  • Upload date:
  • Size: 681.4 kB
  • Tags: CPython 3.8+, musllinux: musl 1.2+ i686
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for bpe_tokenizer_editor-0.1.1-cp38-abi3-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 519c2122994e7d982b48d670b06607cd050737bdc3f1b162aa672d858e730fa4
MD5 a7fbcdfe6e7f467819361a2c7393e215
BLAKE2b-256 b71185432dd1d4dc0775d893973cf015048835ac12762060e4fa7b7952798d03

See more details on using hashes here.

File details

Details for the file bpe_tokenizer_editor-0.1.1-cp38-abi3-musllinux_1_2_armv7l.whl.

File metadata

  • Download URL: bpe_tokenizer_editor-0.1.1-cp38-abi3-musllinux_1_2_armv7l.whl
  • Upload date:
  • Size: 693.3 kB
  • Tags: CPython 3.8+, musllinux: musl 1.2+ ARMv7l
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for bpe_tokenizer_editor-0.1.1-cp38-abi3-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 2f2a1e135ff12ec7115d56b8d87302f851fbb7272d53750d12b3760291ac47cb
MD5 79d7924f4e701cd44b2fb5c827e44aa8
BLAKE2b-256 a04cadd653705435b026950bdc3e5bae4a1591d1ba1d4dc8342865ac1e14d1e2

See more details on using hashes here.

File details

Details for the file bpe_tokenizer_editor-0.1.1-cp38-abi3-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: bpe_tokenizer_editor-0.1.1-cp38-abi3-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 589.5 kB
  • Tags: CPython 3.8+, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for bpe_tokenizer_editor-0.1.1-cp38-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 bcc57c5f9c790d1fc5e52ec3ffe1658fcd47752adcaa35bf7f366e08cd804530
MD5 13c5e8d293a51e9242c7e4a13a9a81bd
BLAKE2b-256 792bebdae2fc65c492b47822f9c2ba2eec927ca18de3151712286be6728e231f

See more details on using hashes here.

File details

Details for the file bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 452.4 kB
  • Tags: CPython 3.8+, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fdf461447abac960c74a1eaecb8b7368a17316ac8a28a9959d2651aac241a1ca
MD5 83d97bca3ea5252256eb5cef414de79e
BLAKE2b-256 f2fcf35adaa2dd4e32d9890da868e362e5b5f023d32c1b102c75c483aca91541

See more details on using hashes here.

File details

Details for the file bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

  • Download URL: bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
  • Upload date:
  • Size: 479.2 kB
  • Tags: CPython 3.8+, manylinux: glibc 2.17+ s390x
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 919d6d21c4ff6753c1dd45731628d89197f8567aa490a052aa6c75be63532bfd
MD5 03b8663d8c7dcab7f80b7db01e064ad4
BLAKE2b-256 9f85e32706577f10c68ddf8298630e47fc663cc998885f6fc7f5cf1254b3c609

See more details on using hashes here.

File details

Details for the file bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

  • Download URL: bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
  • Upload date:
  • Size: 549.8 kB
  • Tags: CPython 3.8+, manylinux: glibc 2.17+ ppc64le
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 0e48ec32a9813088ed79e10458a231989925774eee38f67558052b07dc3d9103
MD5 918a06a3afcdba9eae51cadd9a49cfc4
BLAKE2b-256 1195d5dcc688740919ef70f41dd5c4fd4cd9402b36ef73c67055d65081f3b5da

See more details on using hashes here.

File details

Details for the file bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

  • Download URL: bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
  • Upload date:
  • Size: 475.7 kB
  • Tags: CPython 3.8+, manylinux: glibc 2.17+ i686
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 6bb948f7aa0278f4a54cc236e3f4955882b51aa559eeb1b4eae6f1b5cbb9ffb5
MD5 463099d00700de4c9676e1d8f414a0fa
BLAKE2b-256 5b47c40b1a9c348d5fac798c900ec5b1b73edc9854d2d929643a89563ee09523

See more details on using hashes here.

File details

Details for the file bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

  • Download URL: bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
  • Upload date:
  • Size: 416.2 kB
  • Tags: CPython 3.8+, manylinux: glibc 2.17+ ARMv7l
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 e716c5313b161082d3c65f96cb07bca495e463b682474d19ac0868f8ca3508bc
MD5 373f9126accc4ee33b782cfd8d9fc631
BLAKE2b-256 ed2943c11df5b8c32407503b3a302c09a36b00b0eb3916641d2ae94228edea9c

See more details on using hashes here.

File details

Details for the file bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

  • Download URL: bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
  • Upload date:
  • Size: 411.5 kB
  • Tags: CPython 3.8+, manylinux: glibc 2.17+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for bpe_tokenizer_editor-0.1.1-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 445e40b066b90974d300fc767611110c9a43ea5c07f632e83647cf0f98a3c706
MD5 a61b391cd2d9a97cf06ec5af1dfb2635
BLAKE2b-256 adeb8430b9108cd2a6c346009484c6126089760211296b9b72889bb4646ac0ed

See more details on using hashes here.

File details

Details for the file bpe_tokenizer_editor-0.1.1-cp38-abi3-macosx_11_0_arm64.whl.

File metadata

  • Download URL: bpe_tokenizer_editor-0.1.1-cp38-abi3-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 389.0 kB
  • Tags: CPython 3.8+, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for bpe_tokenizer_editor-0.1.1-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 25a58b7d613db1ed0a0b7fe4cb32397b8530c466c6507b89c3bf3ff9b1800e25
MD5 2bc89441fe366828441dc42a8ec9ddf0
BLAKE2b-256 7b014393032a783951110a7778ebf4bb546840aab2b7b172818949483e2a3995

See more details on using hashes here.

File details

Details for the file bpe_tokenizer_editor-0.1.1-cp38-abi3-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: bpe_tokenizer_editor-0.1.1-cp38-abi3-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 411.1 kB
  • Tags: CPython 3.8+, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for bpe_tokenizer_editor-0.1.1-cp38-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 70bd6a22cd50d6be4b4140cd2c16bcf58d5d60c5df0b08895608bf5f4fdfa251
MD5 823219ca73df22e3e58b2d4783407bd1
BLAKE2b-256 03e128e2530456a4a7cf62715d283d8b7165f1e38c7b9d60e6c40533e8e5066a

See more details on using hashes here.

Release history Release notifications | RSS feed

0.2.0

16 files

This release

0.1.1 This release

16 files

0.1.0

16 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page