Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Flashlight Text Python Bindings

Quickstart

The Flashlight Text Python package containing beam search decoder and Dictionary components is available on PyPI:

pip install flashlight-text

To enable optional KenLM support in Python with the decoder, KenLM must be installed via pip:

pip install git+https://github.com.kpu/kenlm.git

Contents

Installation

Dependencies

We require python >= 3.6 with the following packages installed:

  • cmake >= 3.16, and make (installable via pip install cmake)
  • KenLM (must be installed pip install git+https://github.com/kpu/kenlm.git)

Build Instructions

Once the dependencies are satisfied, from the project root, use:

pip install .

Using the environment variable USE_KENLM=0 removes the KenLM dependency but precludes using the decoder with a language model unless you write C++/pybind11 bindings for your own language model.

Install in editable mode for development:

pip install -e .

(pypi installation coming soon)

Note: if you encounter errors, you'll probably have to rm -rf build dist before retrying the install.

Python API Documentation

Beam Search Decoder

Bindings for the lexicon and lexicon-free beam search decoders are supported for CTC/ASG models only (no seq2seq model support). Out-of-the-box language model support includes KenLM; users can define custom a language model in Python and use it for decoding; see the documentation below.

To run decoder one first should define options:

    from flashlight.lib.text.decoder import LexiconDecoderOptions, LexiconFreeDecoderOptions

    # for lexicon-based decoder
    options = LexiconDecoderOptions(
        beam_size, # number of top hypothesis to preserve at each decoding step
        token_beam_size, # restrict number of tokens by top am scores (if you have a huge token set)
        beam_threshold, # preserve a hypothesis only if its score is not far away from the current best hypothesis score
        lm_weight, # language model weight for LM score
        word_score, # score for words appearance in the transcription
        unk_score, # score for unknown word appearance in the transcription
        sil_score, # score for silence appearance in the transcription
        log_add, # the way how to combine scores during hypotheses merging (log add operation, max)
        criterion_type # supports only CriterionType.ASG or CriterionType.CTC
    )
    # for lexicon free-based decoder
    options = LexiconFreeDecoderOptions(
        beam_size, # number of top hypothesis to preserve at each decoding step
        token_beam_size, # restrict number of tokens by top am scores (if you have a huge token set)
        beam_threshold, # preserve a hypothesis only if its score is not far away from the current best hypothesis score
        lm_weight, # language model weight for LM score
        sil_score, # score for silence appearance in the transcription
        log_add, # the way how to combine scores during hypotheses merging (log add operation, max)
        criterion_type # supports only CriterionType.ASG or CriterionType.CTC
    )

Now, prepare a tokens dictionary (tokens for which a model returns probability for each frame) and a lexicon (mapping between words and their spellings within a tokens set).

For further details on tokens and lexicon file formats, see the Data Preparation documentation in Flashlight.

from flashlight.lib.text.dictionary import Dictionary, load_words, create_word_dict

tokens_dict = Dictionary("path/tokens.txt")
# for ASG add used repetition symbols, for example
# token_dict.add_entry("1")
# token_dict.add_entry("2")

lexicon = load_words("path/lexicon.txt") # returns LexiconMap
word_dict = create_word_dict(lexicon) # returns Dictionary

To create a KenLM language model, use:

from flashlight.lib.text.decoder import KenLM
lm = KenLM("path/lm.arpa", word_dict) # or "path/lm.bin"

Get the unknown and silence token indices from the token and word dictionaries to pass to the decoder:

sil_idx = token_dict.get_index("|")
unk_idx = word_dict.get_index("<unk>")

Now, define the lexicon Trie to restrict the beam search decoder search:

from flashlight.lib.text.decoder import Trie, SmearingMode
from flashlight.lib.text.dictionary import pack_replabels

trie = Trie(token_dict.index_size(), sil_idx)
start_state = lm.start(False)

def tkn_to_idx(spelling: list, token_dict : Dictionary, maxReps : int = 0):
    result = []
    for token in spelling:
        result.append(token_dict.get_index(token))
    return pack_replabels(result, token_dict, maxReps)


for word, spellings in lexicon.items():
    usr_idx = word_dict.get_index(word)
    _, score = lm.score(start_state, usr_idx)
    for spelling in spellings:
        # convert spelling string into vector of indices
        spelling_idxs = tkn_to_idx(spelling, token_dict, 1)
        trie.insert(spelling_idxs, usr_idx, score)

    trie.smear(SmearingMode.MAX) # propagate word score to each spelling node to have some lm proxy score in each node.

Finally, we can run lexicon-based decoder:

import numpy
from flashlight.lib.text.decoder import LexiconDecoder


blank_idx = token_dict.get_index("#") # for CTC
transitions = numpy.zeros((token_dict.index_size(), token_dict.index_size()) # for ASG fill up with correct values
is_token_lm = False # we use word-level LM
decoder = LexiconDecoder(options, trie, lm, sil_idx, blank_idx, unk_idx, transitions, is_token_lm)
# emissions is numpy.array of emitting model predictions with shape [T, N], where T is time, N is number of tokens
results = decoder.decode(emissions.ctypes.data, T, N)
# results[i].tokens contains tokens sequence (with length T)
# results[i].score contains score of the hypothesis
# results is sorted array with the best hypothesis stored with index=0.

Decoding with your own language model

One can define custom language model in python and use it for beam search decoding.

To store language model state, derive from the LMState base class and define additional data corresponding to each state by creating dict(LMState, info) inside the language model class:

import numpy
from flashlight.lib.text.decoder import LM


class MyPyLM(LM):
    mapping_states = dict() # store simple additional int for each state

    def __init__(self):
        LM.__init__(self)

    def start(self, start_with_nothing):
        state = LMState()
        self.mapping_states[state] = 0
        return state

    def score(self, state : LMState, token_index : int):
        """
        Evaluate language model based on the current lm state and new word
        Parameters:
        -----------
        state: current lm state
        token_index: index of the word
                    (can be lexicon index then you should store inside LM the
                    mapping between indices of lexicon and lm, or lm index of a word)

        Returns:
        --------
        (LMState, float): pair of (new state, score for the current word)
        """
        outstate = state.child(token_index)
        if outstate not in self.mapping_states:
            self.mapping_states[outstate] = self.mapping_states[state] + 1
        return (outstate, -numpy.random.random())

    def finish(self, state: LMState):
        """
        Evaluate eos for language model based on the current lm state

        Returns:
        --------
        (LMState, float): pair of (new state, score for the current word)
        """
        outstate = state.child(-1)
        if outstate not in self.mapping_states:
            self.mapping_states[outstate] = self.mapping_states[state] + 1
        return (outstate, -1)

LMState is a C++ base class for language model state. Its compare method (for comparing one state with another) is used inside the beam search decoder. It also has a LMState child(int index) method which returns a state obtained by following the token with this index from current state.

All LM states are organized as a trie. We use the child method in python to properly create this trie (which will be used inside the decoder to compare states) and can store additional state data in mapping_states.

This language model can be used as follows. Here, we print the state and its additional stored info inside lm.mapping_states:

custom_lm = MyLM()

state = custom_lm.start(True)
print(state, custom_lm.mapping_states[state])

for i in range(5):
    state, score = custom_lm.score(state, i)
    print(state, custom_lm.mapping_states[state], score)

state, score = custom_lm.finish(state)
print(state, custom_lm.mapping_states[state], score)

and for the decoder:

decoder = LexiconDecoder(options, trie, custom_lm, sil_idx, blank_inx, unk_idx, transitions, False)

Tests and Examples

An integration test for Python decoder bindings can be found in bindings/python/test/test_decoder.py. To run, use:

cd bindings/python/test
python3 -m unittest discover -v .

Release files for flashlight-text 0.0.2.dev274

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for flashlight-text 0.0.2.dev274
File Size Uploaded
flashlight-text-0.0.2.dev274.tar.gz 65.8 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for flashlight-text 0.0.2.dev274
File
flashlight_text-0.0.2.dev274-pp39-pypy39_pp73-win_amd64.whl PyPy 3.9 PyPy 3.9 7.3 Windows x86-64 Details
flashlight_text-0.0.2.dev274-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl PyPy 3.9 PyPy 3.9 7.3 Linux glibc 2.17+ x86-64 Details
flashlight_text-0.0.2.dev274-pp39-pypy39_pp73-macosx_10_9_x86_64.whl PyPy 3.9 PyPy 3.9 7.3 macOS 10.9+ x86-64 Details
flashlight_text-0.0.2.dev274-pp38-pypy38_pp73-win_amd64.whl PyPy 3.8 PyPy 3.8 7.3 Windows x86-64 Details
flashlight_text-0.0.2.dev274-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl PyPy 3.8 PyPy 3.8 7.3 Linux glibc 2.17+ x86-64 Details
flashlight_text-0.0.2.dev274-pp38-pypy38_pp73-macosx_10_9_x86_64.whl PyPy 3.8 PyPy 3.8 7.3 macOS 10.9+ x86-64 Details
flashlight_text-0.0.2.dev274-pp37-pypy37_pp73-win_amd64.whl PyPy 3.7 PyPy 3.7 7.3 Windows x86-64 Details
flashlight_text-0.0.2.dev274-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl PyPy 3.7 PyPy 3.7 7.3 Linux glibc 2.17+ x86-64 Details
flashlight_text-0.0.2.dev274-pp37-pypy37_pp73-macosx_10_9_x86_64.whl PyPy 3.7 PyPy 3.7 7.3 macOS 10.9+ x86-64 Details
flashlight_text-0.0.2.dev274-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
flashlight_text-0.0.2.dev274-cp311-cp311-musllinux_1_1_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.1+ x86-64 Details
flashlight_text-0.0.2.dev274-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64 Details
flashlight_text-0.0.2.dev274-cp311-cp311-macosx_10_9_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.9+ x86-64 Details
flashlight_text-0.0.2.dev274-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
flashlight_text-0.0.2.dev274-cp310-cp310-musllinux_1_1_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.1+ x86-64 Details
flashlight_text-0.0.2.dev274-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64 Details
flashlight_text-0.0.2.dev274-cp310-cp310-macosx_10_9_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.9+ x86-64 Details
flashlight_text-0.0.2.dev274-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
flashlight_text-0.0.2.dev274-cp39-cp39-musllinux_1_1_x86_64.whl CPython 3.9 CPython 3.9 Linux musl 1.1+ x86-64 Details
flashlight_text-0.0.2.dev274-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-64 Details
flashlight_text-0.0.2.dev274-cp39-cp39-macosx_10_9_x86_64.whl CPython 3.9 CPython 3.9 macOS 10.9+ x86-64 Details
flashlight_text-0.0.2.dev274-cp38-cp38-win_amd64.whl CPython 3.8 CPython 3.8 Windows x86-64 Details
flashlight_text-0.0.2.dev274-cp38-cp38-musllinux_1_1_x86_64.whl CPython 3.8 CPython 3.8 Linux musl 1.1+ x86-64 Details
flashlight_text-0.0.2.dev274-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.8 CPython 3.8 Linux glibc 2.17+ x86-64 Details
flashlight_text-0.0.2.dev274-cp38-cp38-macosx_10_9_x86_64.whl CPython 3.8 CPython 3.8 macOS 10.9+ x86-64 Details
flashlight_text-0.0.2.dev274-cp37-cp37m-win_amd64.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-64 Details
flashlight_text-0.0.2.dev274-cp37-cp37m-musllinux_1_1_x86_64.whl CPython 3.7 CPython 3.7 pymalloc Linux musl 1.1+ x86-64 Details
flashlight_text-0.0.2.dev274-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ x86-64 Details
flashlight_text-0.0.2.dev274-cp37-cp37m-macosx_10_9_x86_64.whl CPython 3.7 CPython 3.7 pymalloc macOS 10.9+ x86-64 Details
flashlight_text-0.0.2.dev274-cp36-cp36m-win_amd64.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-64 Details
flashlight_text-0.0.2.dev274-cp36-cp36m-musllinux_1_1_x86_64.whl CPython 3.6 CPython 3.6 pymalloc Linux musl 1.1+ x86-64 Details
flashlight_text-0.0.2.dev274-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.17+ x86-64 Details
flashlight_text-0.0.2.dev274-cp36-cp36m-macosx_10_9_x86_64.whl CPython 3.6 CPython 3.6 pymalloc macOS 10.9+ x86-64 Details

Total release size: 36.1 MB

Release files / flashlight-text-0.0.2.dev274.tar.gz

Download URL flashlight-text-0.0.2.dev274.tar.gz
Size 65.8 kB
Tags Source
SHA-256 checksum
How to use checksums
f082984052287f8d535b95046c9579fb66b2c8764f60d13841509047992d153b
BLAKE2b-256 checksum
How to use checksums
b4e4b1bdeabb02450d285d8b54dd060188e4c55ae48bfc6ff478cde5132966c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-pp39-pypy39_pp73-win_amd64.whl

Download URL flashlight_text-0.0.2.dev274-pp39-pypy39_pp73-win_amd64.whl
Size 616.6 kB
Tags PyPy 3.9 PyPy 3.9 7.3 Windows x86-64
SHA-256 checksum
How to use checksums
1b3df4056bcc8675a6cd2380417a1510152669c8e1b468dfd01b858a9807ffd4
BLAKE2b-256 checksum
How to use checksums
36398299ddf0989de8a35a717632695eb336dd50dfd276758741e9a7bcf6c073
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 1.3 MB
Tags Linux glibc 2.17+ x86-64 PyPy 3.9 PyPy 3.9 7.3
SHA-256 checksum
How to use checksums
b6fa03f4107eca5aabbdf2170c4b7cc62063731bff6e5831612f18260b6225ae
BLAKE2b-256 checksum
How to use checksums
fee1a90d1a95e80a52bef76916113bfb2ec4d7efdebc05ece0c8eeef52edad19
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-pp39-pypy39_pp73-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-pp39-pypy39_pp73-macosx_10_9_x86_64.whl
Size 993.1 kB
Tags PyPy 3.9 PyPy 3.9 7.3 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
4ef01440a136a6837abd2f7c143919fb0cbbb899f1f6cdfe9731b5a449a4bd17
BLAKE2b-256 checksum
How to use checksums
df52372289af8c41227bdd8849d8012b26e2cc4020542e6e2099bed1de721f85
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-pp38-pypy38_pp73-win_amd64.whl

Download URL flashlight_text-0.0.2.dev274-pp38-pypy38_pp73-win_amd64.whl
Size 616.4 kB
Tags PyPy 3.8 PyPy 3.8 7.3 Windows x86-64
SHA-256 checksum
How to use checksums
11d751e824f72b5f3e9022687b13671e962fc1b4a235827df8e99a2e4a57e478
BLAKE2b-256 checksum
How to use checksums
1d694557c5b0cb9636ae7248d706c6d49b1dec8ee35a9675f8180666e8843317
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 1.3 MB
Tags Linux glibc 2.17+ x86-64 PyPy 3.8 PyPy 3.8 7.3
SHA-256 checksum
How to use checksums
1b9a96159e858032eb92a45611d95fa8eb6d460c59e5c7be0fbd300d3beeb533
BLAKE2b-256 checksum
How to use checksums
e90e9456fa0d4c2d9feee5df7500def3cb2617e5d90ce84825b852cd32b87521
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-pp38-pypy38_pp73-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
Size 993.2 kB
Tags PyPy 3.8 PyPy 3.8 7.3 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
12af976b844b75c9ed06c62a97b41647c51dedff75fdfa8de965890116173f81
BLAKE2b-256 checksum
How to use checksums
096a1a3468b6fb1c99a9c7efe72a6479f2531457968e30a7be1aad54cf9cd3ba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-pp37-pypy37_pp73-win_amd64.whl

Download URL flashlight_text-0.0.2.dev274-pp37-pypy37_pp73-win_amd64.whl
Size 616.3 kB
Tags PyPy 3.7 PyPy 3.7 7.3 Windows x86-64
SHA-256 checksum
How to use checksums
ed6bc5e64c722c6231be5ae2dfb495cb15d622f81606a1051ca00744f6ec2264
BLAKE2b-256 checksum
How to use checksums
bb0191d0764e5d9bfab7fb4ba9d6c7386d57b8e9ef4df103aa04ded99037bf80
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 1.3 MB
Tags Linux glibc 2.17+ x86-64 PyPy 3.7 PyPy 3.7 7.3
SHA-256 checksum
How to use checksums
3ce8506991124536f0a6a150815d0173a14fd0c19456a4ab8f3b66729889a81f
BLAKE2b-256 checksum
How to use checksums
54c5c33a95e1b2b13fd04f4039d72bddaccb814d64374089ac33b401b4553ccc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-pp37-pypy37_pp73-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
Size 992.9 kB
Tags PyPy 3.7 PyPy 3.7 7.3 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
f05884a41df74c7efdd94be6328fcb88f081185bb61df1768bc3b80819cbd124
BLAKE2b-256 checksum
How to use checksums
ade78a359023eb02e7082a0ef73ecdbd6504d84c95d573b65a007fa71c31015f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp311-cp311-win_amd64.whl

Download URL flashlight_text-0.0.2.dev274-cp311-cp311-win_amd64.whl
Size 617.2 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
aa9232830eff23f80b2b52e89e8b6d12d7a503076f58222e5806259cedfbdbbd
BLAKE2b-256 checksum
How to use checksums
4fa01028e2cc55536b141f690f971a3c4e0cf5ad8d9f6ccacb4bb93cda9e366b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp311-cp311-musllinux_1_1_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-cp311-cp311-musllinux_1_1_x86_64.whl
Size 1.7 MB
Tags CPython 3.11 Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
ff2edaf61b7a9555665337aca0e86cd5572dca0961526082df76a20551be5d64
BLAKE2b-256 checksum
How to use checksums
2e1c3b1916bd15e7222d8c9fe4653bb829958f04ac71cf66b8eedcefd3e3544e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 1.3 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
9bb728870670f88e4c2b037ac74da7ef17dbcb69a1940c13d654d6bb6a1445a0
BLAKE2b-256 checksum
How to use checksums
f210d982e96cfb938b1a7aab527205a0337876ad14057a9fc014c0500dc1f10b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp311-cp311-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-cp311-cp311-macosx_10_9_x86_64.whl
Size 993.2 kB
Tags CPython 3.11 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
a5df24635ae4d37dae164bde66d07f76bef8e9edf5e3d42a94eb8a39503f1b61
BLAKE2b-256 checksum
How to use checksums
a0c450e469f7aac9caf0866d08cfd9cb1432728f4509fa436cffc19158f50de2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp310-cp310-win_amd64.whl

Download URL flashlight_text-0.0.2.dev274-cp310-cp310-win_amd64.whl
Size 617.5 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
9ab2737de32c393a3d747bf088a5707e02e5a9e82de51b99b2b7f95881a86c14
BLAKE2b-256 checksum
How to use checksums
7ab296084d53596c561981fe86a42c49f51acc191c5efb5e21f177cb50c6c332
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp310-cp310-musllinux_1_1_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-cp310-cp310-musllinux_1_1_x86_64.whl
Size 1.7 MB
Tags CPython 3.10 Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
d37a8f95a229970ccc4e32d2d568b258f6d4d4a8d7a929df7f2ef5fddd741ddd
BLAKE2b-256 checksum
How to use checksums
784db5b337fa94d78d2d78df2b3a317db7d6848455ec3dd4b6d8eabb349b0beb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 1.3 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
a2c9c17f052d37708b409b5076d2639eab249682b313c0172c7461cc3c00bee2
BLAKE2b-256 checksum
How to use checksums
2c2793c92684f56139ac9438261a99a386411a5cccbdca25f2eab18ad52d8627
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp310-cp310-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-cp310-cp310-macosx_10_9_x86_64.whl
Size 993.3 kB
Tags CPython 3.10 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
b362fef376bfa645010d0bd554a7f27309faf589b542a22f122c0fa9da9ff02e
BLAKE2b-256 checksum
How to use checksums
d0e2b753e01845f88dee5d3c904d48d1205546cf4fe24de406827c87b319d947
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp39-cp39-win_amd64.whl

Download URL flashlight_text-0.0.2.dev274-cp39-cp39-win_amd64.whl
Size 617.9 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
a3db346a780f05d020402296967317b0e6d313029338484e922ac4e1e8f7ca9f
BLAKE2b-256 checksum
How to use checksums
0ab5642e7c456c19b15b0870c17e94c16f307da9a5243196b649339b52336731
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp39-cp39-musllinux_1_1_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-cp39-cp39-musllinux_1_1_x86_64.whl
Size 1.7 MB
Tags CPython 3.9 Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
144b66ef10e580308d016b256c2c0e681bdfe29185b63e0b5efb405078dcdbf0
BLAKE2b-256 checksum
How to use checksums
8e68669309fdd26e5e2daa16d6fc76d53a9305c6dfbe79c0f4bd5f711dc1a562
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 1.3 MB
Tags CPython 3.9 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
93154fab1ed81d3a017cbda9146d6c78e595ce1031a4d8e827c9568f2134d263
BLAKE2b-256 checksum
How to use checksums
fcfa2c729445f6f7d17fd882a61b3673799f7cf6f3c2c93ec9d672d297a45edc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp39-cp39-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-cp39-cp39-macosx_10_9_x86_64.whl
Size 993.6 kB
Tags CPython 3.9 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
008a9cf4dc9008ae3a4cf4c1bae0881f54bca3adad756d6c7f9cc6f847d5b6a8
BLAKE2b-256 checksum
How to use checksums
cb38a29b41635c8be41810d638860fee9d705b80ca98b418dbd4eefdcb1ddd38
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp38-cp38-win_amd64.whl

Download URL flashlight_text-0.0.2.dev274-cp38-cp38-win_amd64.whl
Size 617.1 kB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
392a0b66432d0444c89358a5cc1596bd6612e133fa0d014cf02e8ede5bd12fad
BLAKE2b-256 checksum
How to use checksums
c6fdfb54bd43f0f468b078f32a629be091e56c217a2798b54c5db1b4b1af9fc2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp38-cp38-musllinux_1_1_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-cp38-cp38-musllinux_1_1_x86_64.whl
Size 1.7 MB
Tags CPython 3.8 Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
2a60bc5a9d09d35eed19ad9ad1ffa3cbc0262c14e10524fcfbb35da3a2e6167a
BLAKE2b-256 checksum
How to use checksums
d6f336a322d694ab847439fbef28f096339c4f9b3e20b160dcc8801d6d281773
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 1.3 MB
Tags CPython 3.8 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
d3c10e50b0ae6a47a4c3b284cc209ec42b06bb28f93e02cb52ef7af06aa3fa40
BLAKE2b-256 checksum
How to use checksums
452755fd19e0d085c53346072ffa44c8c13a29c7779728683a565c6a69aab0ea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp38-cp38-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-cp38-cp38-macosx_10_9_x86_64.whl
Size 993.1 kB
Tags CPython 3.8 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
9a32a4fb3710d1f17e7f66bfdb5d90e0ba1a9fcc63a251070548d2baad5aff8d
BLAKE2b-256 checksum
How to use checksums
d80034cd784d944440aee8227644d322c59bd95d6a16d8537e9399d239ed95ae
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp37-cp37m-win_amd64.whl

Download URL flashlight_text-0.0.2.dev274-cp37-cp37m-win_amd64.whl
Size 615.8 kB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
fd3486a4bf86c225983f4a53cf1e59b82cab83e3b33fd1c8d71d7461884928b8
BLAKE2b-256 checksum
How to use checksums
afc09c8c9b8d467e5a72c4238aa6d3e0f2aafdf37adc89a43b025d9b24b2e0a2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp37-cp37m-musllinux_1_1_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-cp37-cp37m-musllinux_1_1_x86_64.whl
Size 1.7 MB
Tags CPython 3.7 CPython 3.7 pymalloc Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
14b61934d389d3d6876f69807aa6e700971ed869beea29420290a2c33de392d2
BLAKE2b-256 checksum
How to use checksums
80996c5c9554cfdfab4f836ab935b64fa7282ef6a3e64f905ccb4405d2507688
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 1.3 MB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
af0fb28f7b75b12a00945719a756b15a7606bab1fecf73f87456bc4c4740efdc
BLAKE2b-256 checksum
How to use checksums
8550c1c35816f6f596d29d35ad2d25f4737862f421dcff718bd40c0b5be2b3a1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp37-cp37m-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-cp37-cp37m-macosx_10_9_x86_64.whl
Size 987.4 kB
Tags CPython 3.7 CPython 3.7 pymalloc macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
53f89c6e8d61ad234ae187cf56d6df9a8a979bfd59f0b7515ea2c5161c9c2ce3
BLAKE2b-256 checksum
How to use checksums
6dd2843b2b7cdd8e4a4e91963f4e848a31f6bfff744269f093d4ef08177910e7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp36-cp36m-win_amd64.whl

Download URL flashlight_text-0.0.2.dev274-cp36-cp36m-win_amd64.whl
Size 615.7 kB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
41c6ad1e2f4cd6f8969c97cdb15eabbb8e1d625e33ee7abebc25a2b84d00defa
BLAKE2b-256 checksum
How to use checksums
07184f11d366e2b3a3d9406d1b79deea54ff7304bf4c9874a85f7fadadb5edd0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp36-cp36m-musllinux_1_1_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-cp36-cp36m-musllinux_1_1_x86_64.whl
Size 1.7 MB
Tags CPython 3.6 CPython 3.6 pymalloc Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
a2d6727173371179df5d9122a0692309c3e97a37066856390819f3b3db1782b3
BLAKE2b-256 checksum
How to use checksums
90fa07d7785993d592220da081c206dcd2660701f50f8111f604990b173d06af
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 1.3 MB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
fe188ddb8ccdefa7bd3372c0bda71be79d6f0bcda4409d5e8a011fcce8996bc6
BLAKE2b-256 checksum
How to use checksums
b0d903c83056c6541413e52d5c2c025bdc91cd789a58a0d4b6d7feab1107c3b4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / flashlight_text-0.0.2.dev274-cp36-cp36m-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.2.dev274-cp36-cp36m-macosx_10_9_x86_64.whl
Size 987.5 kB
Tags CPython 3.6 CPython 3.6 pymalloc macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
1f4b403cc136f98501ff9f1dee9bf1afda6682f08fac8a79cf58577a1355197c
BLAKE2b-256 checksum
How to use checksums
502da7200db8977979753af5d1e5c9d7b83add377bad47de808240319c6da710
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release history Release notifications | RSS feed

0.0.7

67 release files

0.0.6

67 release files

0.0.5

62 release files

0.0.2

40 release files

This release

0.0.2.dev274 This release

34 release 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