Skip to main content

Just a talking snake that reads PDFs and web pages aloud.

Project description

Talking Snake

Talking Snake

PyPI CI codecov

PDF and web page to speech using Qwen3-TTS. Upload a document or URL, get it read aloud with 9 natural voices across English, Chinese, Japanese, and Korean. Audio streams progressively while generation continues.

Deploy Your Own

Deploy on Hugging Face Spaces

Click the button above to deploy your own GPU-powered instance. You'll be prompted to create a Hugging Face account and select hardware (L4 or A100 recommended for speed, ~$0.80-$4/hr).

Run Locally

Requires Python 3.11+, NVIDIA GPU (~6GB VRAM), and SoX (apt install sox libsox-dev). The GPU will be automatically freed if the app is idle for 5+ minutes. It can also run on CPU (no GPU, but much slower).

uv sync && uv run --no-sync talking-snake --port 8888  # Open http://localhost:8888

Flash Attention (Optional, ~2x faster)

Flash Attention requires matching your CUDA driver version. Check yours with nvidia-smi (top right shows "CUDA Version").

  1. Find a prebuilt wheel at flashattn.dev matching your:

    • CUDA version (e.g., cu130 for CUDA 13.0)
    • PyTorch version (e.g., torch2.10)
    • Python version (e.g., cp312 for Python 3.12)
  2. Install matching torch, torchaudio, and flash-attn:

    # Example for CUDA 13.0 + PyTorch 2.10 + Python 3.12
    uv pip install torch==2.10.0+cu130 torchaudio==2.10.0+cu130 --index-url https://download.pytorch.org/whl/cu130
    uv pip install <flash-attn-wheel-url>
    
  3. Run with --no-sync to prevent uv from removing the manually installed packages:

    uv run --no-sync talking-snake --port 8888
    

▶️ Listen to a sample

The website looks like this:

Upload interface Audio playback with progress

License

This project is licensed under the MIT License. Dependencies and third-party components (e.g., Qwen3-TTS, SoX) are subject to their own licenses.

Project details


Download files

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

Source Distribution

talking_snake-0.1.1.tar.gz (1.8 MB view details)

Uploaded Source

Built Distribution

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

talking_snake-0.1.1-py3-none-any.whl (939.5 kB view details)

Uploaded Python 3

File details

Details for the file talking_snake-0.1.1.tar.gz.

File metadata

  • Download URL: talking_snake-0.1.1.tar.gz
  • Upload date:
  • Size: 1.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for talking_snake-0.1.1.tar.gz
Algorithm Hash digest
SHA256 a8b25f063a0707534ddad914c2cd68bf9f6cc82955864014257eb1859d384864
MD5 f14d6638caa12b5e418f9afc4a41818a
BLAKE2b-256 2ba5d1f4a66af1c8d438b7e42f2c8b6308603709a8325ab608c332d8eccce22f

See more details on using hashes here.

Provenance

The following attestation bundles were made for talking_snake-0.1.1.tar.gz:

Publisher: publish.yml on LucaCappelletti94/talking-snake

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

File details

Details for the file talking_snake-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: talking_snake-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 939.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for talking_snake-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 72b0d6443543da9a35a72a9abcc29a7fe8f39e2264faf17a58ec9807d4a3bb7b
MD5 307c95c51fd995767c25c1778fb05911
BLAKE2b-256 f0a97add68dfd9e71d7a14218f6f7f78c0fa2397576d637218987afcdd434c68

See more details on using hashes here.

Provenance

The following attestation bundles were made for talking_snake-0.1.1-py3-none-any.whl:

Publisher: publish.yml on LucaCappelletti94/talking-snake

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