Skip to main content

FastText Multithreading Inference

Project description

Multithreading For FastText

An easy to use tool for multithreading fasttext batch inference.

Features

  • Fast inference using multithreading utilizing all cpu cores.
  • Predicted labels are encoded as i16 numpy array for small memory footprint and easy serialization.

Performance

On macbook Air M2 chip, the performance is about 4 times faster, which is reasonable since it has 4 performance cores.

❯ python -m unittest discover test
fasttext-parallel 1.7130832079565153s
fasttext          6.7440170829650015s

Usage

pip install fasttext-parallel
import fasttext_parallel as ft
model = ft.load_model("./model/lid.176.bin")

# this uses multiple threads
labels, probabilities = model.batch(["你好", "how are you"])

# labels are in a format of numpy.ndarray (i16) format
# to get actual label, call get_label_by_id
assert model.get_label_by_id(labels[0][0]) == "__label__zh"
assert model.get_label_by_id(labels[1][0]) == "__label__en"

# to view all labels (a dict from label_id to label)
print(model.get_labels())

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

fasttext_parallel-0.1.4-cp311-none-win_amd64.whl (344.0 kB view hashes)

Uploaded CPython 3.11 Windows x86-64

fasttext_parallel-0.1.4-cp311-none-win32.whl (315.9 kB view hashes)

Uploaded CPython 3.11 Windows x86

fasttext_parallel-0.1.4-cp311-cp311-manylinux_2_28_x86_64.whl (1.4 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.28+ x86-64

fasttext_parallel-0.1.4-cp311-cp311-manylinux_2_28_aarch64.whl (1.4 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.28+ ARM64

fasttext_parallel-0.1.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.4 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

fasttext_parallel-0.1.4-cp311-cp311-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl (842.7 kB view hashes)

Uploaded CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64) macOS 10.9+ x86-64 macOS 11.0+ ARM64

fasttext_parallel-0.1.4-cp310-none-win_amd64.whl (343.9 kB view hashes)

Uploaded CPython 3.10 Windows x86-64

fasttext_parallel-0.1.4-cp310-none-win32.whl (315.9 kB view hashes)

Uploaded CPython 3.10 Windows x86

fasttext_parallel-0.1.4-cp310-cp310-manylinux_2_28_x86_64.whl (1.4 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.28+ x86-64

fasttext_parallel-0.1.4-cp310-cp310-manylinux_2_28_aarch64.whl (1.4 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.28+ ARM64

fasttext_parallel-0.1.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.4 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

fasttext_parallel-0.1.4-cp310-cp310-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl (842.7 kB view hashes)

Uploaded CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64) macOS 10.9+ x86-64 macOS 11.0+ ARM64

fasttext_parallel-0.1.4-cp39-none-win_amd64.whl (344.2 kB view hashes)

Uploaded CPython 3.9 Windows x86-64

fasttext_parallel-0.1.4-cp39-none-win32.whl (316.2 kB view hashes)

Uploaded CPython 3.9 Windows x86

fasttext_parallel-0.1.4-cp39-cp39-manylinux_2_28_x86_64.whl (1.4 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.28+ x86-64

fasttext_parallel-0.1.4-cp39-cp39-manylinux_2_28_aarch64.whl (1.4 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.28+ ARM64

fasttext_parallel-0.1.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.4 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

fasttext_parallel-0.1.4-cp39-cp39-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl (843.5 kB view hashes)

Uploaded CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64) macOS 10.9+ x86-64 macOS 11.0+ ARM64

fasttext_parallel-0.1.4-cp38-none-win_amd64.whl (344.3 kB view hashes)

Uploaded CPython 3.8 Windows x86-64

fasttext_parallel-0.1.4-cp38-none-win32.whl (316.1 kB view hashes)

Uploaded CPython 3.8 Windows x86

fasttext_parallel-0.1.4-cp38-cp38-manylinux_2_28_x86_64.whl (1.4 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.28+ x86-64

fasttext_parallel-0.1.4-cp38-cp38-manylinux_2_28_aarch64.whl (1.4 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.28+ ARM64

fasttext_parallel-0.1.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.4 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

fasttext_parallel-0.1.4-cp38-cp38-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl (842.9 kB view hashes)

Uploaded CPython 3.8 macOS 10.9+ universal2 (ARM64, x86-64) macOS 10.9+ x86-64 macOS 11.0+ ARM64

fasttext_parallel-0.1.4-cp37-none-win_amd64.whl (344.2 kB view hashes)

Uploaded CPython 3.7 Windows x86-64

fasttext_parallel-0.1.4-cp37-none-win32.whl (316.1 kB view hashes)

Uploaded CPython 3.7 Windows x86

fasttext_parallel-0.1.4-cp37-cp37m-manylinux_2_28_x86_64.whl (1.4 MB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.28+ x86-64

fasttext_parallel-0.1.4-cp37-cp37m-manylinux_2_28_aarch64.whl (1.4 MB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.28+ ARM64

fasttext_parallel-0.1.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.4 MB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

fasttext_parallel-0.1.4-cp37-cp37m-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl (842.9 kB view hashes)

Uploaded CPython 3.7m macOS 10.9+ universal2 (ARM64, x86-64) macOS 10.9+ x86-64 macOS 11.0+ ARM64

Supported by

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