name: WhisperKit Benchmarks Dataset Update Workflow on: schedule: - cron: "0 * * * *" workflow_dispatch: jobs: update-datasets: runs-on: ubuntu-latest permissions: contents: write steps: - uses: actions/checkout@v4 - name: Set up Python uses: actions/setup-python@v5 with: python-version: "3.11" - name: Install dependencies run: | python -m pip install --upgrade pip pip install huggingface_hub requests - name: Check dataset updates id: check_updates env: HF_TOKEN: ${{ secrets.HF_TOKEN }} run: python .github/scripts/check_dataset_update.py - name: Install full requirements if: steps.check_updates.outputs.has_updates == 'true' run: | pip install -r requirements.txt - name: Run generate script if: steps.check_updates.outputs.has_updates == 'true' run: | make update-performance-data - name: Commit and push if changed if: steps.check_updates.outputs.has_updates == 'true' env: GH_TOKEN: ${{ secrets.BOT_TOKEN }} GH_USERNAME: ${{ secrets.BOT_USERNAME }} HF_TOKEN: ${{ secrets.HF_TOKEN }} run: | git config --global user.email "bots@takeargmax.com" git config --global user.name $GH_USERNAME git remote set-url origin https://x-access-token:${GH_TOKEN}@github.com/${GITHUB_REPOSITORY}.git git add . git commit -m "update dataset files" || echo "No changes to commit" git push git push https://HF_USERNAME:$HF_TOKEN@huggingface.co/spaces/argmaxinc/whisperkit-benchmarks