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.dev283

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

Built distributions (wheels)

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

Download URL flashlight-text-0.0.3.dev283.tar.gz
Size 59.5 kB
Tags Source
SHA-256 checksum
How to use checksums
7fbdfb954cf0ce22e7c68238fdef36e2f7a8d1cc067122ada384b8dbe3bfc42b
BLAKE2b-256 checksum
How to use checksums
19bc4953f5dfd1588959b48c79f6dc7fb4163aa080716822da7463d7f57feaf7
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.dev283-pp39-pypy39_pp73-win_amd64.whl

Download URL flashlight_text-0.0.3.dev283-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
7836dfd6f3a9f262ae11511c6ecbba34e1504f19e7151b56c4b7a268a09607f2
BLAKE2b-256 checksum
How to use checksums
c147a4a816b8a0970dd5c27baf45a8ea534f1a715eee20ac8cb30fe796f27554
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.dev283-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.3.dev283-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
3c417a0fb7121eb75d33b845a83a759895d33309a2faecca9cb8ab5b823c8bb5
BLAKE2b-256 checksum
How to use checksums
724dad679661f5951ddffef8fb8f0a5d412e0e4f2f596dcfb303e600673f0714
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.dev283-pp39-pypy39_pp73-macosx_11_0_arm64.whl

Download URL flashlight_text-0.0.3.dev283-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
e37cb3faf4921c4d2260b7dd839fcac1f698a6e2055ad206d6b13253094e6183
BLAKE2b-256 checksum
How to use checksums
43381544a9c29a5ba2c1e90a756b386be36785d56adaf9c1a8568a32c5c324c9
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.dev283-pp39-pypy39_pp73-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.3.dev283-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
5ca66230d4650ba5258fa01563d5663bc0ef269c40c42e0f5209a4532d0c8cb5
BLAKE2b-256 checksum
How to use checksums
f9d113f9aa6d303e2010d69b8f2fdf7d169fd8cb34c806c05afb69beca9ea6ff
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.dev283-pp38-pypy38_pp73-win_amd64.whl

Download URL flashlight_text-0.0.3.dev283-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
5b0b6bfa369e34952f56546e7541c639b84d8682d57922a58e3230a2440a6744
BLAKE2b-256 checksum
How to use checksums
ae9bc7e20a55ec15ef764a7f8c251c148b07e033a8bce70cd25fd4eda11924cf
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.dev283-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.3.dev283-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
e4261da11eec4c24d86691cee315e367cc4d05aa2b74478b36ab0374378a3d5e
BLAKE2b-256 checksum
How to use checksums
17311561bb70a22d8a20f03c5cbc3d7fb3e02d445bcb43419dd37dddd6861f6d
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.dev283-pp38-pypy38_pp73-macosx_11_0_arm64.whl

Download URL flashlight_text-0.0.3.dev283-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
bbdceef5e078bbce669e3b7b75f7066c6e12e6c768d4bb0b3ed5e920ccd2f332
BLAKE2b-256 checksum
How to use checksums
768553fbf01b4ab77bb08927eb3a358539424e694baa5da555f95cba35ba6c29
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.dev283-pp38-pypy38_pp73-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.3.dev283-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
88a80b224fa47d48eed45a4a56cb47257b7d14bbd3b9b2ca181da0801042e824
BLAKE2b-256 checksum
How to use checksums
ca48cc1745b54310790d44cfa37e8fd8ba9768ced6c5a451b4dc0c374eda6c24
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.dev283-pp37-pypy37_pp73-win_amd64.whl

Download URL flashlight_text-0.0.3.dev283-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
b64a423fd8387edd8a91a1e860ec6744edea58bbfac9daf1cf4c7f8cbe4a7f61
BLAKE2b-256 checksum
How to use checksums
a68bf13deaa417ea4f232dd2c87be343c56856f36b0341f9792459789338cc2a
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.dev283-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.3.dev283-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
efc13ef321ea7ccff0c06585d5877d6613179cc028ae892dfbc197bb2a6caae9
BLAKE2b-256 checksum
How to use checksums
da9fc54e1017cbbcb7cbe859a04816d7cd79d20a9ad3e4f7b2a47f563e1cd9ee
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.dev283-pp37-pypy37_pp73-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.3.dev283-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
244651a88a6a541476d71d0b3ee6243fa1286caf5293dc8f9bbe8bd0213f34b1
BLAKE2b-256 checksum
How to use checksums
155db778604069065938afcb4f217f01b23257f1295f2729234bd742c408b220
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.dev283-cp311-cp311-win_amd64.whl

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

Download URL flashlight_text-0.0.3.dev283-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
451f968ba06eb6ec6f3d2826c2b109d281deaeca6aa9c09baf7cee90beee7862
BLAKE2b-256 checksum
How to use checksums
ca35aa329a7b33659f44ce4b0c2d8f7a39148f04ceaa1e11e6f4f6faeb24c927
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.dev283-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.3.dev283-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
f5be8a2fdce9964768e7314748858653f4abe849dd599326288588bb4588bdd8
BLAKE2b-256 checksum
How to use checksums
bc6defa0937cab68754ee0489ff7e837e4969d1a22498166dfc42210800bed8f
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.dev283-cp311-cp311-macosx_11_0_arm64.whl

Download URL flashlight_text-0.0.3.dev283-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
60e00df01fd29e35ad7952310a42e2c42bf091e77adbd0af70ca38127046f001
BLAKE2b-256 checksum
How to use checksums
29a3f285f6d4df6e0c7acb8b77a5f0baf2672f193abde89b058220fa5f548877
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.dev283-cp311-cp311-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.3.dev283-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
6bfc2176d8b2ec8275bea917d1c77cdc1fb1bc95f0c63e642a2b8436013d247f
BLAKE2b-256 checksum
How to use checksums
88d4d042a0aafefae231812079a70fa219cfc7539b9ca58d79e72b3e2dc94755
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.dev283-cp310-cp310-win_amd64.whl

Download URL flashlight_text-0.0.3.dev283-cp310-cp310-win_amd64.whl
Size 579.4 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
fb5a387929f547a08c8afce0a773c720b61b5f8d957d1947d42b2ddf82ab0d0b
BLAKE2b-256 checksum
How to use checksums
eaca7e1387577401af4c1194bc5ea1e098ae39976512636720641624efd6b5a0
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.dev283-cp310-cp310-musllinux_1_1_x86_64.whl

Download URL flashlight_text-0.0.3.dev283-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
1965dcc2427442a81c0c41707abcea200df1fedb216e7078f9d12b1e01b3ec49
BLAKE2b-256 checksum
How to use checksums
3135d20c022be30af72c7953254743c5ecf0ea4f4f17c032367bf9b3a9241820
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.dev283-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.3.dev283-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
9c45fbd4ba62b5e59bd802ff185c791c38c51d598dd045cbca9f32530f9f89b8
BLAKE2b-256 checksum
How to use checksums
2b66da9ab6a488cfddf9e0ba2a8cbe5260ba190407bf11380ea5a811f0989d71
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.dev283-cp310-cp310-macosx_11_0_arm64.whl

Download URL flashlight_text-0.0.3.dev283-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
a9c9107f9fe5c378fd27c90458b260ca4a3de244c562f4a2f720cbba529d2ab5
BLAKE2b-256 checksum
How to use checksums
847b0096f3124d47620036288044c4850a53c81ba7835becaac8a46b665b647a
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.dev283-cp310-cp310-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.3.dev283-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
150167166780713e65ee968f5d27a639b89c55e1a3224568d3cc7e50ab8cba92
BLAKE2b-256 checksum
How to use checksums
799bced8d4522981c24531af38105e9ba61ab5a0db3210a6778580d4f2c5f18e
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.dev283-cp39-cp39-win_amd64.whl

Download URL flashlight_text-0.0.3.dev283-cp39-cp39-win_amd64.whl
Size 579.7 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
d7d7fb42d07cc41c35913cdac97fd90ef7f44a6ff16ebff3bfceccbbacd7db08
BLAKE2b-256 checksum
How to use checksums
7a59c5ddbba3698e6e40b6258cf5d62fc8efcb8509ffd53ae7b991c7e1a88b21
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.dev283-cp39-cp39-musllinux_1_1_x86_64.whl

Download URL flashlight_text-0.0.3.dev283-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
37d010966273097ff961de4cc7b3f9baff1b39c3b7c90d3de8b04c7ed29cef81
BLAKE2b-256 checksum
How to use checksums
cc86700678190edb50c60cd91d48a3445aaea7d602351b4847063e0cd89e7ace
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.dev283-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.3.dev283-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
4aa97239a4148a03900020496dd25b8c1131046a69ff1f338fc09186f29a7058
BLAKE2b-256 checksum
How to use checksums
ccff31ef88d4c2251083245511bdc185da63632bcf853249f330e2316ab0ab2e
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.dev283-cp39-cp39-macosx_11_0_arm64.whl

Download URL flashlight_text-0.0.3.dev283-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
db0e6718b3b55d1597ecf220fbdc920f5c7493d137ca0552642666975b86ad49
BLAKE2b-256 checksum
How to use checksums
c6cad15eba658b53c8110bff71a763b891178830140e0fdec36588be1625580c
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.dev283-cp39-cp39-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.3.dev283-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
53f724ad20bca90af5887b2e82d75a53823ada6bc8722376bf6f5db26f64448f
BLAKE2b-256 checksum
How to use checksums
f8c6a41000beae2bd3bd8118e1059f15f47cd0f499847122cc7a760756368604
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.dev283-cp38-cp38-win_amd64.whl

Download URL flashlight_text-0.0.3.dev283-cp38-cp38-win_amd64.whl
Size 579.2 kB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
fff8e5c4c95d19cfd7da9fa63b497e827c128b8b836a0606c984282ee81da961
BLAKE2b-256 checksum
How to use checksums
983c73e752246c6239e33f70733321d638987735619fe4ba6de8377fa625df02
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.dev283-cp38-cp38-musllinux_1_1_x86_64.whl

Download URL flashlight_text-0.0.3.dev283-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
6fe79e337d6604a4d212f9a6ef834037ec9fccdfcbeb98ae78bfa68d36e724d2
BLAKE2b-256 checksum
How to use checksums
6b38c044c0394cd6f082875553ec7228bc126da3d16a10601c5a3117d17e9495
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.dev283-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.3.dev283-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
8fefc882e0552940ff160694b90dfb19a40ccaa416250e2c44a3aa17566979d2
BLAKE2b-256 checksum
How to use checksums
93c124ea1904bbc4305faee2bb7759996348594949d1ad6860b8326add27c0db
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.dev283-cp38-cp38-macosx_11_0_arm64.whl

Download URL flashlight_text-0.0.3.dev283-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
dc27e868336e5fd563d0f5e13349a62eaeda3838af461766f0658553771dfdef
BLAKE2b-256 checksum
How to use checksums
cb9891037914d55fc90a8283d7e6e3e7d0ee9bf33478f40fabeb83a748187a78
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.dev283-cp38-cp38-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.3.dev283-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
b2ff6002019064ef43049741fd1155a2d5a2175674bb4efb53d55f7a392fb03a
BLAKE2b-256 checksum
How to use checksums
861882b07bba5a7c09e556a57879fd9391d6f6d29ffacf86a68fb851e2e602f3
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.dev283-cp37-cp37m-win_amd64.whl

Download URL flashlight_text-0.0.3.dev283-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
9ba48b15d44ac56f98a124ec971f3af95d45c225750dada47d7500fb07413026
BLAKE2b-256 checksum
How to use checksums
b8193d659458c0889f2e7fca2b79007d4ec3a0b93df6cd6dd5cd7eb619caaad7
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.dev283-cp37-cp37m-musllinux_1_1_x86_64.whl

Download URL flashlight_text-0.0.3.dev283-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
3fccfbeb6873b5090bf065e12c123358a3fa54aaa197c0178f0f1b5affede11d
BLAKE2b-256 checksum
How to use checksums
98fc1ca3f6eff6bde8a229f8d455c2bf34e175c1a7455139a5a48daa6fad410f
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.dev283-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.3.dev283-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
138141ee8f849f229873d6882314e1dd885bd0cc1254d1f7100e0f62caa71bda
BLAKE2b-256 checksum
How to use checksums
fdad940f5b9a842e16564202e6b70452765d04fbd8512367c8f7b0f2a2b59bc0
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.dev283-cp37-cp37m-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.3.dev283-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
284594d0e9f20df403320cb4efc5594a31fd45bc33de9ebbbe7621cd4e2019b0
BLAKE2b-256 checksum
How to use checksums
e7ac5a74fdd1f0ab5c07ff63e6ffdadb41a271079c7391eccd8d59a6fc2f9b29
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.dev283-cp36-cp36m-win_amd64.whl

Download URL flashlight_text-0.0.3.dev283-cp36-cp36m-win_amd64.whl
Size 578.8 kB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
87866fa3765ca11b6bde609d3dfccaeecdfc41a3626df95d39978c8a93deb716
BLAKE2b-256 checksum
How to use checksums
3decb2be316fc1559807b032eb31609b3dc34000d20e9d6117af3056b8e39160
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.dev283-cp36-cp36m-musllinux_1_1_x86_64.whl

Download URL flashlight_text-0.0.3.dev283-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
e72aa79412c7c97d105c5208763a57b3697a7d55b9e780bf9d5929364efd3c01
BLAKE2b-256 checksum
How to use checksums
38f83f005a548339d1780e8305a13881887a861d374410f0e8e85b82a1210022
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.dev283-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.3.dev283-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
aaf29dc28d90c502f6bafe1946ef2b08ab0a544bbe05abe4ad7515252e65bff7
BLAKE2b-256 checksum
How to use checksums
a227610d4d755be47403aafcc9729629d9c63f79f73ffbe2cbbe3e398a5fc28c
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.dev283-cp36-cp36m-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.3.dev283-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
162930cbc35d599d0c9487234154d57d98c2cd9e6cef0fcedaf03d7066ccd23b
BLAKE2b-256 checksum
How to use checksums
e0ccef66218dcf65b9169920d12dc21d697e8368373a60bd01240c5cc820c169
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.dev283 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