* feat: add Echo speech-to-text with word timestamps
* fix: rename 'phrases' parameter to 'keywords' in transcribe method for clarity
* feat: implement Whistle speech-to-text functionality with WAV support and tests
* feat: enhance Whistle audio processing with soxr support and update dependencies
* fix: update test_samples_accept_lists_arrays_and_float32_bytes to include numpy array input and clean up test_missing_weights_fail_clearly
* fix: update Whistle transcribe method to include additional return fields and adjust tests accordingly
* feat: add Whistle speech-to-text and comparison functionality with CLI support
* fix: align output formatting in status function and related tests for consistency
* feat: implement Whistle speech-to-text and comparison functionality with CLI support
* feat: enhance Whistle CLI with fetch and download commands, update library path handling, and improve tests
* fix: standardize language argument naming in Whistle CLI and related documentation
* feat: enhance audio handling and status reporting in Whistle CLI, add tests for new functionality
* feat: restructure Whistle CLI by organizing modules and enhancing functionality with new playground and compare features
* refactor: remove test_whistle_playground.py and consolidate tests into test_whistle.py
* feat: enhance fetch module to support needle3_whistle engine and update related tests
The setup script now detects uv in PATH and uses it for
virtual environment creation and package installation,
falling back to pip when uv is not available.
Closes#35
Signed-off-by: Som Samantray <som.samantray@gmail.com>
Prepare Needle for runtime-only deployments, such as serving tool-calling requests, without requiring the full training and checkpoint-export stack.
Move training dependencies out of the base installation and expose them through a dedicated `train` extra. Preserve the GPU and Metal extras for accelerated configurations, while keeping the default runtime dependency set minimal.
Changes:
- Add the `train` optional dependency group.
- Add `requirements-train.txt` for requirements-file users.
- Update setup scripts, CI, and documentation to install or explain the training extra where needed.
- Add packaging tests verifying that training dependencies are excluded from the runtime installation and included in the training setup.
Signed-off-by: Nima Kalantar <nima.kalantar@focusrite.com>
- Removed GCS utilities and TPU management scripts from the codebase.
- Updated project name to "cactus-needle" and version to "2.0.0" in pyproject.toml.
- Simplified setup scripts for virtual environment creation and dependency installation.
- Removed unnecessary dependencies from requirements.txt and setup scripts.
- Enhanced compatibility with Python 3.9 and above.
- Updated README and documentation references accordingly.