SPEACHES_BASE_URL := "http://localhost:34796"

update-lock-file:
    uv lock

install-dependencies:
    uv sync --dev

list:
    SPEACHES_BASE_URL={{ SPEACHES_BASE_URL }} \
    uv run speaches-cli registry ls --task automatic-speech-recognition | jq '.data[] | .id'

download:
    curl --request POST {{ SPEACHES_BASE_URL }}/v1/models/Systran/faster-whisper-medium.en

transcribe:
    curl --request POST {{ SPEACHES_BASE_URL }}/v1/audio/transcriptions \
        --form file=@/path/to/audio.wav \
        --form model=Systran/faster-whisper-medium.en \
        --form language=en \
        --form vad_filter=false \
        --form without_timestamps=true \
        --form response_format=verbose_json \
        --form 'timestamp_granularities[]=word'

test:
    uv run poe test

test-coverage:
    uv run poe test-coverage
