Skip to main content

Speaker diarization for Python — who spoke when. Rust + ONNX, no Python runtime overhead. K-means/AHC clustering, overlap detection.

Project description

polyvoice

CI PyPI License: MIT

Speaker diarization for Python — who spoke when.

Rust-powered, ONNX-based speaker diarization that runs on CPU, fits in 30 MB, and requires zero Python runtime overhead. Pipeline v2 with K-means auto-k clustering and overlap detection.

Install

pip install polyvoice

Requires Python 3.9+.

Quick start

import polyvoice

# Models auto-download on first run (~30 MB)
pipeline = polyvoice.Pipeline.balanced()

result = pipeline.run(samples, sample_rate=16000)

print(f"Speakers: {result['num_speakers']}")
for turn in result["turns"]:
    print(f"Speaker {turn['speaker']}: {turn['start']:.1f}s - {turn['end']:.1f}s")

API

  • polyvoice.Pipeline.balanced(models_cache=None) — balanced accuracy / speed.
  • polyvoice.Pipeline.mobile(models_cache=None) — smaller, faster model.
  • pipeline.run(samples, sample_rate)dict with num_speakers and turns.

Performance

Pipeline VoxConverse DER Model size
Hybrid + K-means 14.12% ~30 MB

See the full repository for Rust / C / CLI APIs, benchmarks, and development docs.

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

If you're not sure about the file name format, learn more about wheel file names.

polyvoice-0.6.8-cp312-cp312-win_amd64.whl (8.3 MB view details)

Uploaded CPython 3.12Windows x86-64

polyvoice-0.6.8-cp312-cp312-manylinux_2_38_x86_64.whl (10.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.38+ x86-64

polyvoice-0.6.8-cp312-cp312-macosx_11_0_arm64.whl (9.1 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

File details

Details for the file polyvoice-0.6.8-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: polyvoice-0.6.8-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 8.3 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for polyvoice-0.6.8-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 0196f14520745414fe2373c178bfa31c107a7f97e6b6ba1c17b3bf2896f1807d
MD5 81c34ecf085c0a39064eadf2d9c7e5b0
BLAKE2b-256 e1525bd2824c552f0bbef155c48f85053713339ea8ba978d7bf9036f6186000d

See more details on using hashes here.

Provenance

The following attestation bundles were made for polyvoice-0.6.8-cp312-cp312-win_amd64.whl:

Publisher: release.yml on ekhodzitsky/polyvoice

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file polyvoice-0.6.8-cp312-cp312-manylinux_2_38_x86_64.whl.

File metadata

File hashes

Hashes for polyvoice-0.6.8-cp312-cp312-manylinux_2_38_x86_64.whl
Algorithm Hash digest
SHA256 a5ec123e4e6ea4f36c426a891844d3bc6c01679676e6a7f2435040453b35347a
MD5 817f94c4acf51ccac66f3c12e17260c7
BLAKE2b-256 b38b560d75c3072ad5f8c4d4d7526c3214ea849730daef2466a557c24ff13346

See more details on using hashes here.

Provenance

The following attestation bundles were made for polyvoice-0.6.8-cp312-cp312-manylinux_2_38_x86_64.whl:

Publisher: release.yml on ekhodzitsky/polyvoice

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file polyvoice-0.6.8-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for polyvoice-0.6.8-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 170a6354f7f7bc0c79467d412fe88d08be3d62cec657b3d3e7c98731ec101926
MD5 8ff7b7a9e57a492c4506cfabe9754dbc
BLAKE2b-256 9cfd6745d75839e05844a099942ab1d4df2a3df1856a7473a833aefe76b6c61d

See more details on using hashes here.

Provenance

The following attestation bundles were made for polyvoice-0.6.8-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: release.yml on ekhodzitsky/polyvoice

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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