Leopard Binding for Python
Leopard Speech-to-Text Engine
Made in Vancouver, Canada by Picovoice
Leopard is an on-device speech-to-text engine. Leopard is:
- Private; All voice processing runs locally.
- Accurate
- Compact and Computationally-Efficient
- Cross-Platform:
- Linux (x86_64), macOS (x86_64, arm64), Windows (x86_64, arm64)
- Android and iOS
- Chrome, Safari, Firefox, and Edge
- Raspberry Pi (3, 4, 5)
Compatibility
- Python 3.9+
- Runs on Linux (x86_64), macOS (x86_64, arm64), Windows (x86_64, arm64), and Raspberry Pi (3, 4, 5).
Installation
pip3 install pvleopard
AccessKey
Leopard requires a valid Picovoice AccessKey at initialization. AccessKey acts as your credentials when using Leopard SDKs.
You can get your AccessKey for free. Make sure to keep your AccessKey secret.
Signup or Login to Picovoice Console to get your AccessKey.
Usage
Create an instance of the engine and transcribe an audio file:
import pvleopard
leopard = pvleopard.create(access_key='${ACCESS_KEY}')
transcript, words = leopard.process_file('${AUDIO_FILE_PATH}')
print(transcript)
for word in words:
print(
"{word=\"%s\" start_sec=%.2f end_sec=%.2f confidence=%.2f speaker_tag=%d}"
% (word.word, word.start_sec, word.end_sec, word.confidence, word.speaker_tag))
Replace ${ACCESS_KEY} with yours obtained from Picovoice Console and
${AUDIO_FILE_PATH} to the path an audio file.
Finally, when done be sure to explicitly release the resources:
leopard.delete()
Language Model
The Leopard Python SDK comes preloaded with a default English language model (.pv file).
Default models for other supported languages can be found in lib/common.
Create custom language models using the Picovoice Console. Here you can train language models with custom vocabulary and boost words in the existing vocabulary.
Pass in the .pv file via the model_path argument:
leopard = pvleopard.create(
access_key='${ACCESS_KEY}',
model_path='${MODEL_FILE_PATH}')
Word Metadata
Along with the transcript, Leopard returns metadata for each transcribed word. Available metadata items are:
- Start Time: Indicates when the word started in the transcribed audio. Value is in seconds.
- End Time: Indicates when the word ended in the transcribed audio. Value is in seconds.
- Confidence: Leopard's confidence that the transcribed word is accurate. It is a number within
[0, 1]. - Speaker Tag: If speaker diarization is enabled on initialization, the speaker tag is a non-negative integer identifying unique speakers, with
0reserved for unknown speakers. If speaker diarization is not enabled, the value will always be-1.
Demos
pvleoparddemo provides command-line utilities for processing audio using Leopard.
Metadata
Release files for pvleopard 3.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| pvleopard-3.0.1.tar.gz | 43.4 MB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pvleopard-3.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 86.8 MB
Release files / pvleopard-3.0.1.tar.gz
| Download URL | pvleopard-3.0.1.tar.gz |
|---|---|
| Size | 43.4 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
32d6187db2ad36ce170d14341c6e37251f29490b889ebaab65e2f860053cec0d
|
|
BLAKE2b-256 checksum How to use checksums |
f5ce40fe395c0da6210761d8ae3a1768823224e6a6ffc9fc78f97875d7428216
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.3
|
Release files / pvleopard-3.0.1-py3-none-any.whl
| Download URL | pvleopard-3.0.1-py3-none-any.whl |
|---|---|
| Size | 43.4 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
afc3411f7128e631202626ab8a6db3afd0af207a858ab8b05daee2b3902de4b7
|
|
BLAKE2b-256 checksum How to use checksums |
99a9df6956db0ac17a79254028f392106a92e34350905430f6f02ad2919265b8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.3
|
Security for pvleopard 3.0.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.