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.18, 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 .

Metadata

Release files for flashlight-text 0.0.3.dev284

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.3.dev284
File Size Uploaded
flashlight-text-0.0.3.dev284.tar.gz 59.5 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for flashlight-text 0.0.3.dev284
File
flashlight_text-0.0.3.dev284-pp39-pypy39_pp73-win_amd64.whl PyPy 3.9 PyPy 3.9 7.3 Windows x86-64 Details
flashlight_text-0.0.3.dev284-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.3.dev284-pp39-pypy39_pp73-macosx_11_0_arm64.whl PyPy 3.9 PyPy 3.9 7.3 macOS 11.0+ ARM64 Details
flashlight_text-0.0.3.dev284-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.3.dev284-pp38-pypy38_pp73-win_amd64.whl PyPy 3.8 PyPy 3.8 7.3 Windows x86-64 Details
flashlight_text-0.0.3.dev284-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.3.dev284-pp38-pypy38_pp73-macosx_11_0_arm64.whl PyPy 3.8 PyPy 3.8 7.3 macOS 11.0+ ARM64 Details
flashlight_text-0.0.3.dev284-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.3.dev284-pp37-pypy37_pp73-win_amd64.whl PyPy 3.7 PyPy 3.7 7.3 Windows x86-64 Details
flashlight_text-0.0.3.dev284-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.3.dev284-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.3.dev284-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
flashlight_text-0.0.3.dev284-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.3.dev284-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.3.dev284-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
flashlight_text-0.0.3.dev284-cp311-cp311-macosx_10_9_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.9+ x86-64 Details
flashlight_text-0.0.3.dev284-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
flashlight_text-0.0.3.dev284-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.3.dev284-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.3.dev284-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
flashlight_text-0.0.3.dev284-cp310-cp310-macosx_10_9_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.9+ x86-64 Details
flashlight_text-0.0.3.dev284-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
flashlight_text-0.0.3.dev284-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.3.dev284-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.3.dev284-cp39-cp39-macosx_11_0_arm64.whl CPython 3.9 CPython 3.9 macOS 11.0+ ARM64 Details
flashlight_text-0.0.3.dev284-cp39-cp39-macosx_10_9_x86_64.whl CPython 3.9 CPython 3.9 macOS 10.9+ x86-64 Details
flashlight_text-0.0.3.dev284-cp38-cp38-win_amd64.whl CPython 3.8 CPython 3.8 Windows x86-64 Details
flashlight_text-0.0.3.dev284-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.3.dev284-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.3.dev284-cp38-cp38-macosx_11_0_arm64.whl CPython 3.8 CPython 3.8 macOS 11.0+ ARM64 Details
flashlight_text-0.0.3.dev284-cp38-cp38-macosx_10_9_x86_64.whl CPython 3.8 CPython 3.8 macOS 10.9+ x86-64 Details
flashlight_text-0.0.3.dev284-cp37-cp37m-win_amd64.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-64 Details
flashlight_text-0.0.3.dev284-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.3.dev284-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.3.dev284-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.3.dev284-cp36-cp36m-win_amd64.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-64 Details
flashlight_text-0.0.3.dev284-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.3.dev284-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.3.dev284-cp36-cp36m-macosx_10_9_x86_64.whl CPython 3.6 CPython 3.6 pymalloc macOS 10.9+ x86-64 Details

Total release size: 41.9 MB

Release files / flashlight-text-0.0.3.dev284.tar.gz

Download URL flashlight-text-0.0.3.dev284.tar.gz
Size 59.5 kB
Tags Source
SHA-256 checksum
How to use checksums
a1bcfb2a55bd61b485982f81a02f9e986781da0db7861e62ef6b9c3ca6b7b1f3
BLAKE2b-256 checksum
How to use checksums
2665ba9731c72180fb39d3664fd8d75d82376c8343d9de9d9ea66668ff2bd8a4
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.3.dev284-pp39-pypy39_pp73-win_amd64.whl

Download URL flashlight_text-0.0.3.dev284-pp39-pypy39_pp73-win_amd64.whl
Size 578.1 kB
Tags PyPy 3.9 PyPy 3.9 7.3 Windows x86-64
SHA-256 checksum
How to use checksums
3b3e8e0fc4165eda9852701cd459b1fa1a2c668abfb22857ac9ee73808d7a3ae
BLAKE2b-256 checksum
How to use checksums
6b0592755936c9fabce8711f32b12a3321cfecf94f0887eef9cb45f92653fb57
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.3.dev284-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-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
fb2b03709fe4904877bf1febeebb90beb962189049c9564edc53c5b4eb5775f5
BLAKE2b-256 checksum
How to use checksums
ceba129657694672b7ed580bd974a753b72ba5c46be57b834672766ee8f72f2a
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.3.dev284-pp39-pypy39_pp73-macosx_11_0_arm64.whl

Download URL flashlight_text-0.0.3.dev284-pp39-pypy39_pp73-macosx_11_0_arm64.whl
Size 909.7 kB
Tags PyPy 3.9 PyPy 3.9 7.3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
95a06631b58f62ab41012e440eae82fee91f7d7265af3ee52735001cd67bd1a4
BLAKE2b-256 checksum
How to use checksums
29438ac3976dba793074cb8dfa70916c8a33d8f7b34921b396a9260d80ed16d2
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.3.dev284-pp39-pypy39_pp73-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-pp39-pypy39_pp73-macosx_10_9_x86_64.whl
Size 1.0 MB
Tags PyPy 3.9 PyPy 3.9 7.3 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
21542307099dc2c2068aeb646caf404e165865656fadcb16f799b6e771350b75
BLAKE2b-256 checksum
How to use checksums
345bff627556161571dd014d491015dc1032134cf31c78164199dc1d2ec7b6b0
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.3.dev284-pp38-pypy38_pp73-win_amd64.whl

Download URL flashlight_text-0.0.3.dev284-pp38-pypy38_pp73-win_amd64.whl
Size 578.0 kB
Tags PyPy 3.8 PyPy 3.8 7.3 Windows x86-64
SHA-256 checksum
How to use checksums
24754de3958cb61a06a8b0521cd960ba8fdd680850784dc3a41974987ef7e6f5
BLAKE2b-256 checksum
How to use checksums
30402a54035f4d9c906be4c9411c5038e3c918d42f139b7af01f0ebb667ad398
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.3.dev284-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-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
36be614956a1c8eb8c0eca7fa75cd25d1a4d8f4ba3e1e7587afc25dccbb56d53
BLAKE2b-256 checksum
How to use checksums
25c3315412870efb211bf07d8809026b8951fa51a26eb10f72a01f49680e71a6
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.3.dev284-pp38-pypy38_pp73-macosx_11_0_arm64.whl

Download URL flashlight_text-0.0.3.dev284-pp38-pypy38_pp73-macosx_11_0_arm64.whl
Size 909.7 kB
Tags PyPy 3.8 PyPy 3.8 7.3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
711c1bc494d3e7257fc79c738409040eee231013b0b86e42f1c62f87a2cdb901
BLAKE2b-256 checksum
How to use checksums
4255ed07808d1b0952a65d0081f0dedc48a9320e1fca2d1bbef92d945e3c42b0
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.3.dev284-pp38-pypy38_pp73-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
Size 1.0 MB
Tags PyPy 3.8 PyPy 3.8 7.3 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
92b0d75e41151b91367a4a34c946e0f97fcc4729207830a66a3661fb992f894a
BLAKE2b-256 checksum
How to use checksums
289f6b2d776d332b01dce677a7d589d80b089085470015582a69b3746eb15743
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.3.dev284-pp37-pypy37_pp73-win_amd64.whl

Download URL flashlight_text-0.0.3.dev284-pp37-pypy37_pp73-win_amd64.whl
Size 577.3 kB
Tags PyPy 3.7 PyPy 3.7 7.3 Windows x86-64
SHA-256 checksum
How to use checksums
215c00cad5733104866a64adbb048ba40cf23a1d31da9c96fa191b41bea16cb4
BLAKE2b-256 checksum
How to use checksums
373bc0d6ca3f1e81b6646fafc54de7b9b303092506dd5328882722b251e11cc1
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.3.dev284-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-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
b8a75b3ff7e1727e09651aefdee34fd62365948d02c086b5393c2973793735e4
BLAKE2b-256 checksum
How to use checksums
9ff972e1a91164ae6f34b5af1d8710b05d4a4dc8722e4bbfaaf04fcada5a42b4
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.3.dev284-pp37-pypy37_pp73-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
Size 1.0 MB
Tags PyPy 3.7 PyPy 3.7 7.3 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
dcfb7b14be04a85c184a9223ad3d973a6ac52229c742277b67c3b9506a1afb71
BLAKE2b-256 checksum
How to use checksums
592efb78cf38a67b9a8b5ef7049f7fd216556f3f8787839dd8be7837923fbf1b
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.3.dev284-cp311-cp311-win_amd64.whl

Download URL flashlight_text-0.0.3.dev284-cp311-cp311-win_amd64.whl
Size 579.8 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
e969d4f984fd1e9583ff940cec6588709e9f31cca5329eee280b63089e394446
BLAKE2b-256 checksum
How to use checksums
b2b2550b0677e95131016fe5ccac0cb7ec4ebe4391cb6d6c5a232d7671d8d4e7
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.3.dev284-cp311-cp311-musllinux_1_1_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-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
00811e6c65031bd357d0a503200a49b4821eb77c1fcc2e721bef1c7c59ae506f
BLAKE2b-256 checksum
How to use checksums
6c620609498c2a1bcb63868a68466d90e73d1c7c76d59ec1944a6afb5f3dc402
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.3.dev284-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-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
e62bf55f973bbeae12301099d1439bc416022b6501827c35b9ee05bcbd8b5d8f
BLAKE2b-256 checksum
How to use checksums
1675a77c439acc32024551dfea76f68a23692574253d361c78348b9efeb3fb21
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.3.dev284-cp311-cp311-macosx_11_0_arm64.whl

Download URL flashlight_text-0.0.3.dev284-cp311-cp311-macosx_11_0_arm64.whl
Size 909.9 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
3613e0fcba29d00cdc99366f6adf78bdbe7e3cf7c17a5aaa69490d5164789111
BLAKE2b-256 checksum
How to use checksums
8de87b816b80da0aa226cbde6232b7c7a3cac65d179399e9b2e993d231a5661b
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.3.dev284-cp311-cp311-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-cp311-cp311-macosx_10_9_x86_64.whl
Size 1.0 MB
Tags CPython 3.11 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
8edf5ddea1155cbe930cb7790c122f3a2c31fa78cbfaddf74844617249363c36
BLAKE2b-256 checksum
How to use checksums
0dd558bccbf03e51e4f7d557f65efb1fc78757fbaf4f465344ec2c49145e69ee
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.3.dev284-cp310-cp310-win_amd64.whl

Download URL flashlight_text-0.0.3.dev284-cp310-cp310-win_amd64.whl
Size 579.5 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
e6eb63eeadbd0ca4767a80f5ca889fe2fd5cb7abda99c790ea904f3c4b10194e
BLAKE2b-256 checksum
How to use checksums
1d0e0089b64f6f5d044b31aec338398cb4de1e5c26a5d678e81232fad37fc2c3
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.3.dev284-cp310-cp310-musllinux_1_1_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-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
7a7c700ac1d144c12fa82f4a09f794dae16e30049567799d798378886718054c
BLAKE2b-256 checksum
How to use checksums
baa1cc579df39ee0b2ac132a6fc508daaf02851f8fee59691319fa06ecc81268
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.3.dev284-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-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
34ac5cea09431dfc2f8d3c4b00f103668e12f5c3468073e81eb1ba21184b121d
BLAKE2b-256 checksum
How to use checksums
4d5518195beb6190745d3fb75a6c9670b396ec4d14556e7493823b17ef489373
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.3.dev284-cp310-cp310-macosx_11_0_arm64.whl

Download URL flashlight_text-0.0.3.dev284-cp310-cp310-macosx_11_0_arm64.whl
Size 909.9 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
6562e5f6beb66954efd126c40606d0772a6b2fde2223987eb39fb37a88c5e367
BLAKE2b-256 checksum
How to use checksums
2c2251ed6bf25059df5083c57a53c07e8775b707da5a2a736d25d7d706a2e541
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.3.dev284-cp310-cp310-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-cp310-cp310-macosx_10_9_x86_64.whl
Size 1.0 MB
Tags CPython 3.10 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
8410534805f269f94584be820ab3b2da92d981b4735f363260791d2cec232993
BLAKE2b-256 checksum
How to use checksums
3844a132ad78739dcf17e0e80ec4fcf70e60eb3e2895fe6ed9b7a5c28e21ac3f
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.3.dev284-cp39-cp39-win_amd64.whl

Download URL flashlight_text-0.0.3.dev284-cp39-cp39-win_amd64.whl
Size 579.7 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
5d637982352d3dcc1e6104441846dc13d8c64c7e902aab0d21835d9d142d1bae
BLAKE2b-256 checksum
How to use checksums
30d2a668a391a26896daee9d5faefc4c0c67dd8f7845d73f457587216f9f208a
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.3.dev284-cp39-cp39-musllinux_1_1_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-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
ec15ec9da1713a7d5cbca54ef45f128ccd9e08a16eba1ad082e702e70141f0da
BLAKE2b-256 checksum
How to use checksums
acab123dcdac5735bae3a0dc6004d5058327bf9f5f545008b5eb27ca6f07a31a
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.3.dev284-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-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
b37350892a771bb6b63bb3c0636a728083085341596a054ced9ba618751e1bac
BLAKE2b-256 checksum
How to use checksums
005f7b3c4880d0a8ce1815b095127eed6ddd2433ee61cf3083e3736b46158dab
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.3.dev284-cp39-cp39-macosx_11_0_arm64.whl

Download URL flashlight_text-0.0.3.dev284-cp39-cp39-macosx_11_0_arm64.whl
Size 910.1 kB
Tags CPython 3.9 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
3643cfe14f0c70fd6f2e9798b66bfb2a52dbb4a9c39941e452ac059793cc7e29
BLAKE2b-256 checksum
How to use checksums
e708f35b834542b0edd256d7ab15789fef3eef603cf25903a11d1feb4ae7385a
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.3.dev284-cp39-cp39-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-cp39-cp39-macosx_10_9_x86_64.whl
Size 1.0 MB
Tags CPython 3.9 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
022ec2bbaca7a5c5ded0163ec88d21661959d5c8a062206854ec40d7809c1dfe
BLAKE2b-256 checksum
How to use checksums
e213e42565997af7d2c28345c7fb854f739bbef80f59a64a5ca1343a3ebb9379
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.3.dev284-cp38-cp38-win_amd64.whl

Download URL flashlight_text-0.0.3.dev284-cp38-cp38-win_amd64.whl
Size 579.2 kB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
83cf03d81aabb484d8ee7cf9776c8e16c1a786b5a78112b58eae09c561b6e670
BLAKE2b-256 checksum
How to use checksums
6a0408e523ebfdd9f9671856fcf83cf54cfcde3da02db66dee961924013da5ff
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.3.dev284-cp38-cp38-musllinux_1_1_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-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
2e5b7d131429710413ef5dbe0202c9a6a4a8e4d5dee51facc8d68d34177d0d6f
BLAKE2b-256 checksum
How to use checksums
60d840f40f9f3d6aebeed4d84e76e89bcd83d6061e4a3b76e976a49f8c409a05
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.3.dev284-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-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
45119dc7d319dcd02d0603015d4c1650b97505d2ec46e0ad692a56e19ddc1673
BLAKE2b-256 checksum
How to use checksums
240e72cdf586d924e37a2c04072bb43d58c4b115c0c18cde6cbfb9e55b61478e
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.3.dev284-cp38-cp38-macosx_11_0_arm64.whl

Download URL flashlight_text-0.0.3.dev284-cp38-cp38-macosx_11_0_arm64.whl
Size 909.5 kB
Tags CPython 3.8 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
1a345d7ce13ca3a98bc2214b77cb2f560752b8ab7a8637fe3053c0cb11ea9aa5
BLAKE2b-256 checksum
How to use checksums
d6147ee88ea9e243812e7e6a93db78ae4cee7d0f3fb54505bc7c75d74664bb23
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.3.dev284-cp38-cp38-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-cp38-cp38-macosx_10_9_x86_64.whl
Size 1.0 MB
Tags CPython 3.8 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
d2b58555d92cb25641e00d30b5062136ffee61fe43b9d96f88ba881ad0522c90
BLAKE2b-256 checksum
How to use checksums
7f701c3147ef31852bc49ab1eb6714da449d475cb3a24997420630e4efa552d7
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.3.dev284-cp37-cp37m-win_amd64.whl

Download URL flashlight_text-0.0.3.dev284-cp37-cp37m-win_amd64.whl
Size 578.8 kB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
9357c9c85a1a35a610f38f7e03172f5913b587baeb8d0ba34ea6160842dda6d0
BLAKE2b-256 checksum
How to use checksums
c0bd7fd6a13d3d0fcc736d9e1b459c8b343ef93e5f3eb315137cece014207b7e
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.3.dev284-cp37-cp37m-musllinux_1_1_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-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
5f381b07de2e78cfcee1e227dce5bf14a74897abdc4bea05c4fe1554bd8829e9
BLAKE2b-256 checksum
How to use checksums
7e775246b01fc04a09f22b68da33f76c88127da8edd16919926963442012518f
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.3.dev284-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-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
7441c4902d49b1a7ee0f824be2a58382fbea374a8cc3ee668cc098c520c2d2b0
BLAKE2b-256 checksum
How to use checksums
adee33a68741eef34b741082d03e05b6ccbc44f21fd60b7371e5c0bbb4bf94be
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.3.dev284-cp37-cp37m-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-cp37-cp37m-macosx_10_9_x86_64.whl
Size 1.0 MB
Tags CPython 3.7 CPython 3.7 pymalloc macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
a2616290c465f5b997168e3731c2294dc5c31f2e855a6bcd7ed993933fe5ed4b
BLAKE2b-256 checksum
How to use checksums
84cac83ac10c6f1c58b00dd13e53044eac9d0c13ee7b6f6ecd0e963c64bf306d
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.3.dev284-cp36-cp36m-win_amd64.whl

Download URL flashlight_text-0.0.3.dev284-cp36-cp36m-win_amd64.whl
Size 578.7 kB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
5ebaae81e24e790b6a11871dfba64b5ca68d817d06cd4f9f8b63bb3fa628feff
BLAKE2b-256 checksum
How to use checksums
7e16daaa0bc6dad2b114eba26a4c2ab4a282e21df2e2096c135b4568cc47eae8
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.3.dev284-cp36-cp36m-musllinux_1_1_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-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
73cda82bc7f05ec7c13aa5868fccd58a5215ef9264474c4fe260ebb7f5a6ddbe
BLAKE2b-256 checksum
How to use checksums
bc6fe811db3132b46088662de2ce2e73bf00a0d1ae0b2b9dc3460efb86f9a709
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.3.dev284-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-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
ddb0c6d2ab945bc06d59a09ad7dfe4de1b739ebfb539cb86b3934fbaf42c61b6
BLAKE2b-256 checksum
How to use checksums
5d8b465177e04f00d24c450678288b2f57c0331107fe8e8e481752dc789c1dfb
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.3.dev284-cp36-cp36m-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.3.dev284-cp36-cp36m-macosx_10_9_x86_64.whl
Size 1.0 MB
Tags CPython 3.6 CPython 3.6 pymalloc macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
2d227b8eed824699026f52e4197c186813823f4426b92b11f310af8a26fda713
BLAKE2b-256 checksum
How to use checksums
a193989e020322cf86b1a2e39bb3b64af781f7dd507c8e9b8a073b9e4be35de8
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

This release

0.0.3.dev284 This release

40 release files

0.0.2

40 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