Files
vibepod/server/pyproject.toml
T
LyAhn 98e2bf9237 perf: migrate to JezzWTF/VibeVoice fork, parallel CFG executors
Switch vibevoice dependency from microsoft/VibeVoice to JezzWTF/VibeVoice
fork (commit e76701f) which contains the async decode + parallel CFG
optimisations directly in generate(). Removes the instance-method
patching approach (vibevoice_generate_patch.py deleted).

server/vibevoice_server.py:
- Add _cfg_executor (ThreadPoolExecutor, 1 worker) alongside _decode_executor
- _install_cpu_pipeline_optimizations now sets both executors directly as
  model._vibepod_decode_executor and model._vibepod_cfg_executor
- Both executors shut down in lifespan on exit
- Remove vibevoice_generate_patch import/install (no longer needed)

server/pyproject.toml:
- vibevoice source changed to git+https://github.com/JezzWTF/VibeVoice.git
- No machine-local paths; works identically on any clone
2026-04-30 21:30:07 +01:00

36 lines
1.4 KiB
TOML

[project]
name = "vibepod-server"
version = "0.1.0"
description = "VibePod TTS Server — VibeVoice FastAPI backend"
requires-python = ">=3.10"
dependencies = [
# torch is listed explicitly so uv pulls the CUDA wheel (see [tool.uv.sources]).
# To switch back to CPU-only, remove the [tool.uv.sources] torch entry below.
"torch>=2.0.0",
# VibeVoice custom model + processor classes (not yet in upstream transformers)
# Uses JezzWTF/VibeVoice fork so VibePod-specific optimisations land here.
"vibevoice @ git+https://github.com/JezzWTF/VibeVoice.git",
# Exact version required by vibevoice's streaming TTS module
"transformers==4.51.3",
"fastapi>=0.111.0",
"uvicorn[standard]>=0.29.0",
"soundfile>=0.12.1",
"pydantic>=2.7.0",
"huggingface_hub>=0.23.0",
]
# No build-system — this is a scripts project, not an installable package.
# Lock file is committed so installs are reproducible.
# Run `uv lock --upgrade` to bump dependencies.
[[tool.uv.index]]
name = "pytorch-cu124"
url = "https://download.pytorch.org/whl/cu124"
explicit = true
[tool.uv.sources]
# Pull torch from the PyTorch CUDA 12.4 index instead of PyPI's CPU-only wheel.
# CUDA 12.4 runs on any driver >= 525.60 (RTX 30/40 series all qualify).
# To use CPU instead: remove this block and run `uv sync --reinstall-package torch`.
torch = { index = "pytorch-cu124" }