Skip to main content

Fast BPE tokenizer for LLMs — a faster, drop-in compatible reimplementation of tiktoken

Project description

riptoken

A fast BPE tokenizer for LLMs. Drop-in compatible with OpenAI's tiktoken, 2.4×–6.2× faster single-threaded and up to ~4× faster in parallel batch mode.

PyPI Crates.io License: MIT Python versions

riptoken is a Rust-core BPE tokenizer that reads tiktoken-format vocabularies and produces byte-identical output to tiktoken. It is written from scratch in Rust, with a thin PyO3 layer, and is designed to be the fastest open-source tokenizer you can drop into an existing tiktoken pipeline.


Why

If you are running an LLM service and tokenizing millions of requests per hour, every microsecond of tokenizer overhead shows up on your invoice. tiktoken is great but leaves performance on the table — in its own source code the authors comment "I tried using rayon. It wasn't really faster." riptoken is a ground-up re-implementation that takes a different set of trade-offs and comes out ahead on every corpus tested.

Benchmarks

Apple Silicon (M-series), Python 3.13, o200k_base vocab, release builds of both libraries, outputs verified byte-identical. Median of 3 runs.

Single-threaded

Corpus Tokens riptoken (tok/s) tiktoken (tok/s) Speedup
English prose 40,001 15,660,106 3,111,537 5.03×
Python source code 72,501 16,373,214 2,669,412 6.13×
Rust source code 88,001 18,028,338 3,066,479 5.88×
Multilingual + emoji 85,600 8,866,190 3,590,639 2.47×
Random-ish bytes 120,000 18,028,338 4,328,077 4.17×

Parallel batch (256 docs, rayon + GIL release)

Corpus Tokens riptoken (tok/s) tiktoken (tok/s) Speedup
English prose 10,240,256 33,966,313 13,783,321 2.51×
Python source code 18,560,256 43,965,336 11,430,058 3.86×
Rust source code 22,528,256 48,320,152 13,880,179 3.60×
Multilingual + emoji 21,913,600 31,110,914 15,041,445 2.03×
Random-ish bytes 30,720,000 46,700,000 18,188,264 2.56×

Parallel batch scaling improves further on wider machines: on a 32-core Sapphire Rapids box, o200k_base throughput hits ~290 M tok/s (19× the single-threaded baseline).

Reproduce with:

python scripts/bench.py

Install

Python

pip install riptoken

Pre-built wheels are published for CPython 3.9–3.13 on Linux (x86_64, aarch64), macOS (x86_64, arm64), and Windows (x86_64).

Rust

cargo add riptoken

The python Cargo feature is for the PyO3 bindings — you do not need it unless you are building the Python extension yourself.

Quick start

Python

import riptoken

# One-liner: load any tiktoken encoding by name or model.
enc = riptoken.get_encoding("o200k_base")
# or: enc = riptoken.encoding_for_model("gpt-4o")

tokens = enc.encode_ordinary("Hello, world!")
assert enc.decode_bytes(tokens) == b"Hello, world!"

# With allowed special tokens
tokens = enc.encode("Hi <|endoftext|>", allowed_special={"<|endoftext|>"})

riptoken.get_encoding and riptoken.encoding_for_model are drop-in equivalents of the tiktoken helpers of the same name. They soft-depend on tiktoken to supply vocabulary files, regex patterns, and special-token maps (using tiktoken's on-disk cache at ~/.cache/tiktoken/), then wrap them in riptoken's faster Rust core. Byte-identical output, single import change.

If you'd rather skip the tiktoken dependency and load a .tiktoken file yourself:

import riptoken

ranks = riptoken.load_tiktoken_bpe("o200k_base.tiktoken")
special_tokens = {"<|endoftext|>": 199999, "<|endofprompt|>": 200018}
pat = (
    r"""[^\r\n\p{L}\p{N}]?[\p{Lu}\p{Lt}\p{Lm}\p{Lo}\p{M}]*[\p{Ll}\p{Lm}\p{Lo}\p{M}]+(?i:'s|'t|'re|'ve|'m|'ll|'d)?|"""
    r"""[^\r\n\p{L}\p{N}]?[\p{Lu}\p{Lt}\p{Lm}\p{Lo}\p{M}]+[\p{Ll}\p{Lm}\p{Lo}\p{M}]*(?i:'s|'t|'re|'ve|'m|'ll|'d)?|"""
    r"""\p{N}{1,3}| ?[^\s\p{L}\p{N}]+[\r\n/]*|\s*[\r\n]+|\s+(?!\S)|\s+"""
)
enc = riptoken.CoreBPE(ranks, special_tokens, pat)

Rust

use riptoken::CoreBPE;
use rustc_hash::FxHashMap;

// Populate `encoder` from your vocabulary file (see `load_tiktoken_bpe` in
// the Python package for the format).
let encoder: FxHashMap<Vec<u8>, u32> = load_ranks("o200k_base.tiktoken");
let specials: FxHashMap<String, u32> = FxHashMap::default();
let pat = r"\w+|\s+";

let bpe = CoreBPE::new(encoder, specials, pat)?;
let tokens = bpe.encode_ordinary("Hello, world!");
let bytes = bpe.decode_bytes(&tokens);
assert_eq!(bytes, b"Hello, world!");

How it works

riptoken ports tiktoken's algorithm to Rust and applies a small set of targeted optimizations:

  1. Zero-allocation hash lookups. The BPE merge loop queries the vocabulary thousands of times per input. We store the vocab as FxHashMap<Vec<u8>, Rank> and look up with &[u8] directly via Vec<u8>: Borrow<[u8]> — no per-lookup Vec allocation.
  2. Inlined initial min-scan. The first pass that populates the parts vector also tracks the minimum rank, avoiding a redundant linear scan.
  3. Cache-aware merge update. When the linear-scan path merges two adjacent parts, we update parts[i-1] and parts[i] before calling Vec::remove(i+1). The remove shifts memory leftwards, evicting the cells we just read — doing the reads first keeps them hot.
  4. Heap path for long pieces. Pieces ≥ 500 bytes use an O(m log n) min-heap with lazy invalidation and an intrusive doubly-linked list inside a flat Vec<State>. This avoids the O(n²) cliff of repeated Vec::remove.
  5. Whole-piece fast path. Before running BPE on any regex-split piece, we check whether the piece is already a full vocabulary entry. For common English text, this hits over 99 % of the time and skips BPE entirely.
  6. SIMD regex fast path. Every stock tiktoken pattern (gpt2, r50k_base, p50k_base, cl100k_base, o200k_base) compiles on the regex crate's DFA/SIMD engine after a small peephole rewrite that peels off the one lookaround feature they use (\s+(?!\S)) and reproduces its semantics in Rust. Patterns we can't rewrite fall back to fancy-regex.
  7. Thread-local regex clones. Both the fast and fancy engines hold per-thread clones. fancy-regex keeps mutable scratch state inside each Regex, and the regex crate uses an internal Pool<Cache> guarded by a mutex — under high thread counts that pool becomes a contention point. Per-thread clones get out of its way: on 32-core Sapphire Rapids, parallel o200k_base batch encoding scales from 6.2× to 19× vs single-threaded.
  8. Parallel batch API. encode_ordinary_batch / encode_batch fan out to rayon's global thread pool, so a batch of independent documents encodes in parallel. The Python bindings release the GIL for the full batch.
  9. GIL release. Every Python-facing encode/decode call is wrapped in py.detach(|| ...) so Python threads can make real forward progress.

API

Python (riptoken.CoreBPE)

Method Returns
encode_ordinary(text) list[int]
encode(text, allowed_special) list[int]
encode_single_token(piece: bytes) int
decode_bytes(tokens) bytes
decode_single_token_bytes(token) bytes
n_vocab() int
token_byte_values() list[bytes]

Rust (riptoken::CoreBPE)

See docs.rs/riptoken for full Rust API documentation. The same methods are available, returning Vec<Rank>, Vec<u8>, etc.

Compatibility

riptoken reads the same .tiktoken vocabulary files as tiktoken and produces identical token sequences. We run a CI parity check against tiktoken on every commit across multiple corpora (English, code, multilingual, emoji, random bytes).

If you find a string where riptoken produces different output from tiktoken, that is a bug — please open an issue with the input and both outputs.

Development

# Rust tests
cargo test

# Rust linting
cargo clippy --all-targets -- -D warnings

# Python extension + test suite
python -m venv .venv && source .venv/bin/activate
pip install -e .[test]
maturin develop --features python --release
pytest

# Benchmark
python scripts/bench.py

The Python test suite and benchmark use riptoken.get_encoding("o200k_base") under the hood, which reads the vocabulary through tiktoken and its on-disk cache at ~/.cache/tiktoken/. No local .tiktoken file is required — the first run downloads it automatically.

Contributing

Issues and PRs welcome. Please include a benchmark or test case demonstrating any performance or behavior change.

License

MIT — see LICENSE.

Credits

riptoken is a re-implementation of the ideas in OpenAI's tiktoken. The core BPE algorithm is due to them; riptoken reuses vocabulary files in the .tiktoken format.

Project details


Download files

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

Source Distribution

riptoken-0.2.0.tar.gz (35.2 kB view details)

Uploaded Source

Built Distributions

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

riptoken-0.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

riptoken-0.2.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (939.8 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

riptoken-0.2.0-cp313-cp313-macosx_11_0_arm64.whl (883.5 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

riptoken-0.2.0-cp313-cp313-macosx_10_12_x86_64.whl (945.6 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

riptoken-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

riptoken-0.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (939.7 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

riptoken-0.2.0-cp312-cp312-macosx_11_0_arm64.whl (883.5 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

riptoken-0.2.0-cp312-cp312-macosx_10_12_x86_64.whl (945.6 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

riptoken-0.2.0-cp311-cp311-win_amd64.whl (927.8 kB view details)

Uploaded CPython 3.11Windows x86-64

riptoken-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

riptoken-0.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (940.0 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

riptoken-0.2.0-cp311-cp311-macosx_11_0_arm64.whl (882.7 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

riptoken-0.2.0-cp311-cp311-macosx_10_12_x86_64.whl (945.4 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

riptoken-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

riptoken-0.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (940.2 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

riptoken-0.2.0-cp310-cp310-macosx_11_0_arm64.whl (882.9 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

riptoken-0.2.0-cp310-cp310-macosx_10_12_x86_64.whl (945.5 kB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

riptoken-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

riptoken-0.2.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (942.8 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

riptoken-0.2.0-cp39-cp39-macosx_11_0_arm64.whl (886.1 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

riptoken-0.2.0-cp39-cp39-macosx_10_12_x86_64.whl (947.7 kB view details)

Uploaded CPython 3.9macOS 10.12+ x86-64

File details

Details for the file riptoken-0.2.0.tar.gz.

File metadata

  • Download URL: riptoken-0.2.0.tar.gz
  • Upload date:
  • Size: 35.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: maturin/1.13.1

File hashes

Hashes for riptoken-0.2.0.tar.gz
Algorithm Hash digest
SHA256 942cbb2684212e6f232902a4fdcc3e8864e881cc7163270f49eb0a7748e83b78
MD5 b5889431c066a0b083ab25dca923aa15
BLAKE2b-256 d093e580424573864f382ece73cd4119c915add6df338344854a58fb9c679fd1

See more details on using hashes here.

File details

Details for the file riptoken-0.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for riptoken-0.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 df65da88e2f8a2a023e4b790f5ed28bde56bf64ea2500683b1e9cbd969a61080
MD5 c00a6dbb3a6b922904922263b0344f05
BLAKE2b-256 07f54e54a58785ceb13abb3936ee0c25f9849acfe21eca46019aaa193804e74f

See more details on using hashes here.

File details

Details for the file riptoken-0.2.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for riptoken-0.2.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 1c54ea16cd58de5570a5fbd8bad71f227b2361e6d7f345733b8c3cb058b47ab5
MD5 eed15e37f8aa047592218b9c5696e2a3
BLAKE2b-256 eee8fec7330b8686804f376f828d8cdb8c85fed9e1e26dba9a765bdcef868e5f

See more details on using hashes here.

File details

Details for the file riptoken-0.2.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for riptoken-0.2.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c22a61d844bec1b16cfdf1d5785a1c8872df0e81fb1297e99ebeb15261b20342
MD5 1fddaad68c769465024e7ac7abdb589d
BLAKE2b-256 9926276f17c9d2df8a7fae1f6bb5df3da28bd879e6a659589f43315636f2105a

See more details on using hashes here.

File details

Details for the file riptoken-0.2.0-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for riptoken-0.2.0-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 cbbacc31d00881520bd07400477926323b4b3ee973f82d5bc6623aaa9aaa708d
MD5 c5234c797260b506f52765603077907e
BLAKE2b-256 cbd276e1dc622de1adb66f24422db645b5537921cfdc32f051dba9fa3f3e6857

See more details on using hashes here.

File details

Details for the file riptoken-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for riptoken-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5cd021c880e3f3848468b228534d0ea4c4f016a2cbc3cd2da25813cda2d9c782
MD5 f411e124aa9380c53dc589aab3f5956d
BLAKE2b-256 e8c0e6c4ac1164fd582adcf5fd1e92a0e72bd7441eebad9aa8153aeea7c1080b

See more details on using hashes here.

File details

Details for the file riptoken-0.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for riptoken-0.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 baebbbdfc4b32576fc980d50134192c3921cff2b7ae75a6a1a7ad62727e43fde
MD5 71beea266ddab1b938da390126e6e36e
BLAKE2b-256 f4135fe6292a9152fa2b9f5c98e09252d59f1592935080b2246d51971ae54490

See more details on using hashes here.

File details

Details for the file riptoken-0.2.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for riptoken-0.2.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 cb6b9f5c7dee3b0b9f8b80564c1899114336972f69dbaf5f579c8f367976c428
MD5 5720ec0dd5ae9c348fb4785e36af3fed
BLAKE2b-256 b384f34f963af53bd2c8589b2d9e9ababa69a2f269b5d31df8989b7679e185e1

See more details on using hashes here.

File details

Details for the file riptoken-0.2.0-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for riptoken-0.2.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d8a5731bfb8bc8803719abdf01cd800faa56d64dc5663a9bf89cbfd7222a2ada
MD5 6f4001ae838731676c23b39d81b480ed
BLAKE2b-256 c6f6d6740a43b7d03fc4d5409101aaaf0f827c7c2d1f395fadadf6810d137302

See more details on using hashes here.

File details

Details for the file riptoken-0.2.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: riptoken-0.2.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 927.8 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: maturin/1.13.1

File hashes

Hashes for riptoken-0.2.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 c6fefc99f44d06295e6f7fe8f264d1f80c9c16ca1cbf05394bea039c0220cebf
MD5 413b3481eb2661c3e4cdd108ba68376a
BLAKE2b-256 17b8e397c4cc79c172bd12c988e3b38dd7e68568796a036a87a321a370807c8b

See more details on using hashes here.

File details

Details for the file riptoken-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for riptoken-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 efa39f0c323ae4ee78700cdb9ce82da42d942fba5510b1c240efe1ed8958c8e3
MD5 f1c5c0811bb28a6d39e6c4a946002c32
BLAKE2b-256 15f139d020351f0613777896f50b74ec7c209d6632f7d5c7759d0033f8b477ac

See more details on using hashes here.

File details

Details for the file riptoken-0.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for riptoken-0.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9b0b398c2180489b875544c3615c04d882e5f8f3eb1f46405633b70a360ab02a
MD5 509965377e0606b851bf1432edb409c6
BLAKE2b-256 0ceec2e246f5957ed16a1b1a9d2bed7d3f428d10996eee5d07bc954d797156e5

See more details on using hashes here.

File details

Details for the file riptoken-0.2.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for riptoken-0.2.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 26c4048d776588ccb8fdad58e9b5a04adaee5ed2a11363de0d5f644dbe0d0e00
MD5 1b35db66c8f9992c58143bd8aace73d0
BLAKE2b-256 68447b288dd808a31c32e60c3177467e47df86c0b0559eae24c4c923b6aaae79

See more details on using hashes here.

File details

Details for the file riptoken-0.2.0-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for riptoken-0.2.0-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 4623a8d14d677b791e69e3915957a20dbe3bfdde60d51facc179677108038d0a
MD5 40b162f95a730108482da5ba1e0a5579
BLAKE2b-256 b6009c2a4211a3ffe9a607c747d750e97d70a4abd6fb500afae5237696849b6b

See more details on using hashes here.

File details

Details for the file riptoken-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for riptoken-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a79d1cf7db5455be9ffc3ba435f7496ff89284c8ea481a8c9441d8927bb7dc0c
MD5 95bd2cdb80b0fe36b90291fa3d3a22d3
BLAKE2b-256 3c2f1929da0e884eb8df0f887410b24791446bf3cdba3fe11c6760b56cdccb75

See more details on using hashes here.

File details

Details for the file riptoken-0.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for riptoken-0.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 33f0bc3e38f8ba0efeafa69985c57e9c061e42e84dccfde548e7ae92adf6b690
MD5 6d5be49e414193e5062c682a4f2ec6ba
BLAKE2b-256 7f152c91928646aeb328acf30ebce2e4db1f0bd6f6f897bf885463b607f30db8

See more details on using hashes here.

File details

Details for the file riptoken-0.2.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for riptoken-0.2.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d57a56d2ac622bf19148ca44da5511f0f482d880964f7b08b0f0c56fd654969e
MD5 4e7f2cef2e0e2bf140862adcd720b431
BLAKE2b-256 63c8029e084efcf9537ffe04de6af31fe8b0d99504a05fb63fac853229f3f396

See more details on using hashes here.

File details

Details for the file riptoken-0.2.0-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for riptoken-0.2.0-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 911497b61541cdcd7e395850c6387d8a0c4a1d1601245dcd91730129a1e2e1a1
MD5 157a4d5daa04324ca8db1b822e023e1a
BLAKE2b-256 a967a93d94c7cc16449b89a1e37f58961c14ed4d7d1cb554d09daad0f02c2e67

See more details on using hashes here.

File details

Details for the file riptoken-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for riptoken-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ee7d907318e8509231f8546e9dfd4a89983c35bfb4b049b237a3c5a1a118c73c
MD5 fac789d7a3fd7909004c57e193438574
BLAKE2b-256 58d52f2f60f3290419dd0d5bac17184bba3fefc9ffc71c0e365e530b28ebac30

See more details on using hashes here.

File details

Details for the file riptoken-0.2.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for riptoken-0.2.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 1de131107abfa6c12f174da7e93f4553af05fb2ec2e287e8b021babb46f5cdd0
MD5 f673f696a94b29284822e641b8326a5c
BLAKE2b-256 61c872369141c50d048fb91f606b113de23d39713b75b97592b9e27c58c9701c

See more details on using hashes here.

File details

Details for the file riptoken-0.2.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for riptoken-0.2.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3c5fcd81636b5b7e1007e842be79d87f6e858a30b6c7c2424c39668d2ead0f00
MD5 2ab66142318b387ab22406dca6e2d7c7
BLAKE2b-256 3580fc2bd72aeb3a2f6ee20660b59320966bbd2c1dd227f0a378fd47159f2664

See more details on using hashes here.

File details

Details for the file riptoken-0.2.0-cp39-cp39-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for riptoken-0.2.0-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 9d9481a4051b3a31dee1f77a0053d6a3789ee77a61c78cce7460697585223e88
MD5 0e6fec5b12cd4ec2ebe4cee034c59571
BLAKE2b-256 d16d29abf23a5e3f23dc885d88a39d4d2cf47738581a2a327e25d23d2996733d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page