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.2.dev277

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.dev277
File Size Uploaded
flashlight-text-0.0.2.dev277.tar.gz 60.1 kB Details

Built distributions (wheels)

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

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

Download URL flashlight-text-0.0.2.dev277.tar.gz
Size 60.1 kB
Tags Source
SHA-256 checksum
How to use checksums
45a5752bc4e70dfc9f465a92ccbd6c2a5b730d00fa8e8a6a0b294b4079bbd16f
BLAKE2b-256 checksum
How to use checksums
f149483d548e8ccd7ce26999bbe118a3c69eeb970d1b31a1e75e529a3aca303e
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.dev277-pp39-pypy39_pp73-win_amd64.whl

Download URL flashlight_text-0.0.2.dev277-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
bb545f7fb6618b94333f85dc29ba94cf77c63bd339bea2d4e1834ed43dd42482
BLAKE2b-256 checksum
How to use checksums
1743cfab5b5b14cfc9d2413b414af6230c9f679a638f77820b94e3059548c7ae
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.dev277-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.2.dev277-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
5680443dd02fe7ca12c4615f41981c7f10d186e8655a138812f4aa220383573a
BLAKE2b-256 checksum
How to use checksums
2c88c699f1f6b28bbf31974868a626d06fb78f837b27f1001eb4da7cca5a2223
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.dev277-pp39-pypy39_pp73-macosx_11_0_arm64.whl

Download URL flashlight_text-0.0.2.dev277-pp39-pypy39_pp73-macosx_11_0_arm64.whl
Size 894.5 kB
Tags PyPy 3.9 PyPy 3.9 7.3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
49ae197e5f8713bcc30ac523c6b1d41c878302a50b8aef304cb360b730a4c257
BLAKE2b-256 checksum
How to use checksums
85adb6a5fafc8f886250cc1f8c0334df37ef0c19a60f712057bbba851366f707
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.dev277-pp39-pypy39_pp73-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.2.dev277-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
704912e1ecc3359de78f54af08189af7403d6564ed21b97d9947139b17100a7f
BLAKE2b-256 checksum
How to use checksums
1555bf637b575222fe447d960c6dbdc7febc42b3316d2d4df8522eb922d790db
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.dev277-pp38-pypy38_pp73-win_amd64.whl

Download URL flashlight_text-0.0.2.dev277-pp38-pypy38_pp73-win_amd64.whl
Size 577.9 kB
Tags PyPy 3.8 PyPy 3.8 7.3 Windows x86-64
SHA-256 checksum
How to use checksums
40797df18b6644e7b7a916d5f7f02eb32a240f874cb28ed01ed00ed9cb0d043b
BLAKE2b-256 checksum
How to use checksums
db9109ae6665c50897df8278651743c709a177c0840dc80e9e2fc2549e8f742e
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.dev277-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.2.dev277-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
e26cfd73b520a13d7dd32c2bdc0eed73f50518d3c482fe3f36c52c64f354f768
BLAKE2b-256 checksum
How to use checksums
c89c5d9bae189891bbafc9bbae5c51a0f21f3971668b6ef1d987f42bbc061dd0
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.dev277-pp38-pypy38_pp73-macosx_11_0_arm64.whl

Download URL flashlight_text-0.0.2.dev277-pp38-pypy38_pp73-macosx_11_0_arm64.whl
Size 894.5 kB
Tags PyPy 3.8 PyPy 3.8 7.3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
cc6236aad0f0252e0edfaaa4cacbf0868c0f10a16f8ce84b95657eac5f50e9b5
BLAKE2b-256 checksum
How to use checksums
17c83163cd7cc9d408bcdaaea01ad0fe4ae0d353873b9a2f06908e4dfaa88141
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.dev277-pp38-pypy38_pp73-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.2.dev277-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
aaf4c6c95aa0c5c3bb4f3b204c42c240872409a0f48c6ad3f89ce15df21d7e0e
BLAKE2b-256 checksum
How to use checksums
21ddb0c8d915c42457316e0f5471c2f3812593859fdc74e8246552d5bccff11e
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.dev277-pp37-pypy37_pp73-win_amd64.whl

Download URL flashlight_text-0.0.2.dev277-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
752d8108c1189cd9b43016aef68ad8ec1cff7cefcb947db83f087a6e739f51e1
BLAKE2b-256 checksum
How to use checksums
4546a9bfc4de18a26dea0bd57bd37535266cb283ebfe96abfd3f8456ac35a5c3
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.dev277-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.2.dev277-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
48f0d14d0df4c5c0066176de087aecf8411de6f62eba638362f87c2c3b8bdd54
BLAKE2b-256 checksum
How to use checksums
3d98019d5faeafd3a6cc4ac6692eb17b155c9239835fe01baab64acf8746ed9e
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.dev277-pp37-pypy37_pp73-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.2.dev277-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
1f25e645ccc008e8e881b0900baa0b5d83a25b060107c55417fd06380ca30003
BLAKE2b-256 checksum
How to use checksums
63df6488ec0a380b03df2489836cc78252b00f25e4cc85d4784a75d6fb1577a1
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.dev277-cp311-cp311-win_amd64.whl

Download URL flashlight_text-0.0.2.dev277-cp311-cp311-win_amd64.whl
Size 579.8 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
eb02aa1b77ac336e60befa43723c3a81aec1d580e0fcd72003c37c87a453df67
BLAKE2b-256 checksum
How to use checksums
de342d0f3d0b1d8ce516016af7b3987a9cbeaab3bae1a6ab42ab242c62c3715d
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.dev277-cp311-cp311-musllinux_1_1_x86_64.whl

Download URL flashlight_text-0.0.2.dev277-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
a4a949be070a22ba3ac1c8dda1a5a6b0c9f2c256a9c20e65e38a8ed9e24680de
BLAKE2b-256 checksum
How to use checksums
fd936af3fc9f0d6c1fb06aabebd2900d7b99a93e133121a346ab9f0c2dce559c
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.dev277-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.2.dev277-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
d6ff552106d684effc3943798751dc246979fd1fad01d0a3187c0711fbd9c88c
BLAKE2b-256 checksum
How to use checksums
be895187769116ca15c2a3f482bf256a034eee31c42538b13e9ffa1c41d54866
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.dev277-cp311-cp311-macosx_11_0_arm64.whl

Download URL flashlight_text-0.0.2.dev277-cp311-cp311-macosx_11_0_arm64.whl
Size 894.6 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
fb81167f7a02e9beb7ebb6fc9f673f35f88ee05c97c0162da2a148503f53d78a
BLAKE2b-256 checksum
How to use checksums
005992dda35ed8b4197291a20ea8d0c60d3c5d331d0d1e5605637f3ff4e88522
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.dev277-cp311-cp311-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.2.dev277-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
51c84345ebe41b44ed6bdf3012ce91194a8af8ae0d83148046bd4e965d00c413
BLAKE2b-256 checksum
How to use checksums
c4036586ac773baddd73ceafc4b3252e5f25dbea9b516ec501403c7914c56dd1
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.dev277-cp310-cp310-win_amd64.whl

Download URL flashlight_text-0.0.2.dev277-cp310-cp310-win_amd64.whl
Size 579.4 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
fd9fb27679f37f54879772171d2739e329a8926f7a704130f30106557dfc776d
BLAKE2b-256 checksum
How to use checksums
23b85b3a3ad4451aaa8096e71555e1d8b68db86803df82a782d27a64594620c0
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.dev277-cp310-cp310-musllinux_1_1_x86_64.whl

Download URL flashlight_text-0.0.2.dev277-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
605822389e79f7ab7e7d8ab742aee1d5ed2376c85d9de4798a54bed693c35f4c
BLAKE2b-256 checksum
How to use checksums
fbc98d5a40c1e5e595c4803e4e72b039416429504ffb256fafd1f156d7b91f74
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.dev277-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.2.dev277-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
b11f4ae5806c77753e6545cc01d92f3928a126543d8fd14c2112469cc69c1c10
BLAKE2b-256 checksum
How to use checksums
1441308abbf504e6de334120470814115493aa9d3fef284b69e9e6cf945e9715
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.dev277-cp310-cp310-macosx_11_0_arm64.whl

Download URL flashlight_text-0.0.2.dev277-cp310-cp310-macosx_11_0_arm64.whl
Size 894.7 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
f91e736ca3fd673b4c860d797078bcc78486b46c2de3fb1fd9ee9698f964ad52
BLAKE2b-256 checksum
How to use checksums
8ec9e96f13d148224d3a8a828fbc423957aef2c298fd1c2386cc667a29080ec6
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.dev277-cp310-cp310-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.2.dev277-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
40e0e16349ed89d6e142ad73b5279c04750f13c1c1fa95bf046bb0eb2094f242
BLAKE2b-256 checksum
How to use checksums
a75bd8ef570ad08b7a387177e023b1e02eedebca72dbf24f194ce12a1a3b8aff
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.dev277-cp39-cp39-win_amd64.whl

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

Download URL flashlight_text-0.0.2.dev277-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
f87cdac0494ea95ee24b5286f0cef9950d0ee1879c0003e73defe31479fbc5eb
BLAKE2b-256 checksum
How to use checksums
aca80c2177c1f0be7c74cd337b5d51f799c6229870a46cb003108c7c398f84db
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.dev277-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.2.dev277-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
063bfa01a5623d5c292f8a4152f462bccd4292bda7db3909579ac1a20d61151e
BLAKE2b-256 checksum
How to use checksums
d361e6caf9b934df59e2758389a2073c593c25fb4d61252f5a6157b97b9d6c70
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.dev277-cp39-cp39-macosx_11_0_arm64.whl

Download URL flashlight_text-0.0.2.dev277-cp39-cp39-macosx_11_0_arm64.whl
Size 894.9 kB
Tags CPython 3.9 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
a47cc71647cbbb38e0fe66a5ade91de173f94d855a99bdd79e0dcbdba2082a1f
BLAKE2b-256 checksum
How to use checksums
4d675f6cbf2b1b3ff689014afc15fc437ff3bd8aa2e269b11357c29ff50c36ca
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.dev277-cp39-cp39-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.2.dev277-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
81f949049083e7a74f8825987f81b88cbd2d308400464c25d6c19a88c6a1e31c
BLAKE2b-256 checksum
How to use checksums
26bb6d088931d1dc4e934abedd52eb22d9392b1c8dd6fb6a24edea103ca449dc
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.dev277-cp38-cp38-win_amd64.whl

Download URL flashlight_text-0.0.2.dev277-cp38-cp38-win_amd64.whl
Size 579.2 kB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
a442701dfeacd338c8ba78e40be485bc5e2834b3f2e4e909adff85ad78fe92d6
BLAKE2b-256 checksum
How to use checksums
522d3273b46d79b0fe47428154ff4be6ca918eadb51d78c61d136519c595fc8e
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.dev277-cp38-cp38-musllinux_1_1_x86_64.whl

Download URL flashlight_text-0.0.2.dev277-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
4b81c0f1b675f1befad35d97eef739eaba9a0725b24f36704df8d089c4f1a2e0
BLAKE2b-256 checksum
How to use checksums
e6dd95cce70128c61be7ece25d8b21a9be4e4d450f3fb26c80774b1ef151b770
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.dev277-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.2.dev277-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
c87fa09e4d766e099096cac8bb2f3dbf07dbcb10cf2b63af7684f224a7d47981
BLAKE2b-256 checksum
How to use checksums
f3585d4998eb234186a012a226b2fc80c9b725d839d2c0f8b98f881eac48ec5d
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.dev277-cp38-cp38-macosx_11_0_arm64.whl

Download URL flashlight_text-0.0.2.dev277-cp38-cp38-macosx_11_0_arm64.whl
Size 894.3 kB
Tags CPython 3.8 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
f9958851cbb9b9d6e5d0c0b307f42e2bad3381634d2a7136c5815cd373df6c3a
BLAKE2b-256 checksum
How to use checksums
8adb166d6055796766579f6d918457a36e13ed9ec5f71f870c43e7ce6787eaed
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.dev277-cp38-cp38-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.2.dev277-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
c449bc0b112c99329e17e3cf084d7ec14846374b07cf18b3b76662a0c12c4ec5
BLAKE2b-256 checksum
How to use checksums
d1cf5d2a8099c77ae00c0808192dbfe7f486d46d56948bca21eb799cc911c41a
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.dev277-cp37-cp37m-win_amd64.whl

Download URL flashlight_text-0.0.2.dev277-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
cdeeddcb23fbe18ad4ae49a717582d047ae7c87f0077c72c42dd29f6666b309f
BLAKE2b-256 checksum
How to use checksums
ab8be3f934c85e7ff35d10721a11d1777db0ab46fcfdb1e1cdf93e325321a473
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.dev277-cp37-cp37m-musllinux_1_1_x86_64.whl

Download URL flashlight_text-0.0.2.dev277-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
01ed5029d3aeab4b8be4fbd0ca4f652646f50fb7fb66d4732547550ab21fa476
BLAKE2b-256 checksum
How to use checksums
d4b11a0615f50ab200472f0f312739de374b91351efbc4579fcc627766262987
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.dev277-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.2.dev277-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
a3c8574bbccb845db2462a1541019e87a41f64abcc1602da94707e4954928676
BLAKE2b-256 checksum
How to use checksums
3dd109aa820490b215ee83ab06ca166e3f608f3f8f138390e8e566b87c6ef072
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.dev277-cp37-cp37m-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.2.dev277-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
904c6d1b98b9a381a58cbaf92e77e3d61e30f8ad982d7ddd9b44334ce57d8954
BLAKE2b-256 checksum
How to use checksums
70f941f116f977ebc8720a3191f93bbbfc71dc6c0eff6a35c05ca674e357da9c
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.dev277-cp36-cp36m-win_amd64.whl

Download URL flashlight_text-0.0.2.dev277-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
22b3f301026937d94e6b5a6e36ed78e0a66dd27e0eae2d34f8726924edaa6e88
BLAKE2b-256 checksum
How to use checksums
2267282750c95e88301e5f52a5f893824839fd916a132f3a9d016f1b8f6a3bb7
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.dev277-cp36-cp36m-musllinux_1_1_x86_64.whl

Download URL flashlight_text-0.0.2.dev277-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
c387fac315878cc1f05a361bc1fd0598d32d4c65fdda914627c84a96c1d4ed1f
BLAKE2b-256 checksum
How to use checksums
9d723b35db3bd19f0f2f3f4f0418b3e49ceab5650351d731db3fb411cfd47f83
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.dev277-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL flashlight_text-0.0.2.dev277-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
806423902285cd7cb1febe817dfb84004233a439349deb2ba35b87bb8bbe1997
BLAKE2b-256 checksum
How to use checksums
58015e9679cac19d7a1077ef74b2e92da60c94571664f434061fe589037f8fb5
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.dev277-cp36-cp36m-macosx_10_9_x86_64.whl

Download URL flashlight_text-0.0.2.dev277-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
f94acee8112fddfcae5c9eecccdd03c1cb0a8b98e4b71677318898ad65e37e48
BLAKE2b-256 checksum
How to use checksums
bbb8a3979ba8b94744f57cf4b27cab9e935dd05666aff6f3d6d6c713796f20c9
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.dev277 This release

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