diff --git a/.github/workflows/create_website_benchmarks.yml b/.github/workflows/create_website_benchmarks.yml new file mode 100644 index 0000000..3bae11e --- /dev/null +++ b/.github/workflows/create_website_benchmarks.yml @@ -0,0 +1,68 @@ +name: Create Benchmark Website + +on: + # Runs on pushes targeting the default branch + push: + branches: ["main", "model_versioning"] + pull_request: + types: ["opened", "reopened", "synchronize", "edited"] + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages +permissions: + pages: write + id-token: write + +jobs: + # Build Website + build: + runs-on: ubuntu-latest + defaults: + run: + shell: bash -l {0} + steps: + - name: Checkout + uses: actions/checkout@v4 + + - uses: actions/setup-python@v5 + with: + python-version: '3.11' + + + + - name: Install Python dependencies + run: | + pip install "dask[dataframe]" + pip install ipykernel + pip install nbconvert + + - name: Build Website + shell: bash -el {0} + run: | + cd ambient_sound_analysis + jupyter nbconvert display_benchmarks.ipynb --execute --to html --output-dir=_build/html --no-input + + - name: Upload artifact + uses: actions/upload-pages-artifact@v3 + with: + path: ambient_sound_analysis/_build/html + + + # Publish Website to GitHub Pages if built successfully + deploy: + needs: build + # if: github.ref == 'refs/heads/model_versioning' + runs-on: ubuntu-latest + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + + steps: + - name: Setup Pages + uses: actions/configure-pages@v5 + + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 diff --git a/.github/workflows/model_benchmarking.yml b/.github/workflows/model_benchmarking.yml new file mode 100644 index 0000000..e8c341a --- /dev/null +++ b/.github/workflows/model_benchmarking.yml @@ -0,0 +1,70 @@ +name: Model Benchmarking +on: + pull_request: + types: [opened, synchronize, edited, reopened] + +env: + pr_username: github.event.pull_request.user.login + + # schedule: + # - cron: '9 * * * *' + +jobs: + process: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - uses: actions/setup-python@v5 + with: + python-version: '3.9.18' + cache: 'pip' + cache-dependency-path: ambient_sound_analysis/requirements_noise.txt + + - name: Install Python dependencies + run: | + pip install -r ambient_sound_analysis/requirements_noise.txt + + + # - name: Install ffmpeg + # run: | + # sudo apt-get update + # sudo apt-get install ffmpeg + + - uses: awalsh128/cache-apt-pkgs-action@latest + with: + packages: ffmpeg + + - name: Create plots + if: steps.cache.outputs.cache-hit != 'true' + run: | + python ambient_sound_analysis/model_benchmarking.py + + + + - name: Append username + run: | + # sed 's/$/ test trigger/' 'ambient_sound_analysis/csv/2024-06-01 17:00:00.csv' > 'ambient_sound_analysis/csv/2024-06-01 17:00:00_new.csv' + + export output_file="score_${{ github.event.pull_request.head.sha }}.csv" + sed 's/$/, ${{ github.event.pull_request.user.login }}, ${{ github.event.pull_request.head.sha }}, ${{github.event.pull_request.title}}/' 'ambient_sound_analysis/csv/test.csv' > "ambient_sound_analysis/csv/$output_file" + + - name: Upload to GitHub repo + uses: stefanzweifel/git-auto-commit-action@v5 + with: + commit_message: Commit to Github + file_pattern: 'ambient_sound_analysis/csv/score*.csv' + + #- name: Upload as artifact + # uses: actions/upload-artifact@v4 + # with: + # name: ambient_sound_plots + # path: ambient_sound_analysis/img/*.png + + #- name: Upload to Google Drive + # uses: AnimMouse/setup-rclone@v1 + # with: + # rclone_config: ${{secrets.RCLONE_CONFIG}} + + # - run: | + # rclone copy ambient_sound_analysis/img/broadband.png mydrive:rclone_uploads/ diff --git a/ambient_sound_analysis/csv/score_1f3ac5bc8b3a4914606ceebcbd910a5aac64e50e.csv b/ambient_sound_analysis/csv/score_1f3ac5bc8b3a4914606ceebcbd910a5aac64e50e.csv new file mode 100644 index 0000000..bc9f5da --- /dev/null +++ b/ambient_sound_analysis/csv/score_1f3ac5bc8b3a4914606ceebcbd910a5aac64e50e.csv @@ -0,0 +1 @@ +17, valentina-s, 1f3ac5bc8b3a4914606ceebcbd910a5aac64e50e, adding model benchmarking workflow diff --git a/ambient_sound_analysis/csv/score_28401087ddea6a1ac2829d708423b362b8d3840f.csv b/ambient_sound_analysis/csv/score_28401087ddea6a1ac2829d708423b362b8d3840f.csv new file mode 100644 index 0000000..b900c5f --- /dev/null +++ b/ambient_sound_analysis/csv/score_28401087ddea6a1ac2829d708423b362b8d3840f.csv @@ -0,0 +1 @@ +17, valentina-s, 28401087ddea6a1ac2829d708423b362b8d3840f, adding model benchmarking workflow diff --git a/ambient_sound_analysis/csv/score_42aa52eddaf7494cf272de17396907146982e1fd.csv b/ambient_sound_analysis/csv/score_42aa52eddaf7494cf272de17396907146982e1fd.csv new file mode 100644 index 0000000..9aa6f36 --- /dev/null +++ b/ambient_sound_analysis/csv/score_42aa52eddaf7494cf272de17396907146982e1fd.csv @@ -0,0 +1 @@ +17, valentina-s, 42aa52eddaf7494cf272de17396907146982e1fd, adding model benchmarking workflow diff --git a/ambient_sound_analysis/csv/score_66b46ac47aa1c2bcbda573e147f3a16eeed61dcd.csv b/ambient_sound_analysis/csv/score_66b46ac47aa1c2bcbda573e147f3a16eeed61dcd.csv new file mode 100644 index 0000000..8cd4f15 --- /dev/null +++ b/ambient_sound_analysis/csv/score_66b46ac47aa1c2bcbda573e147f3a16eeed61dcd.csv @@ -0,0 +1 @@ +17, valentina-s, 66b46ac47aa1c2bcbda573e147f3a16eeed61dcd, adding model benchmarking workflow diff --git a/ambient_sound_analysis/csv/score_71236d3146ee8b3354b3d8fea71d69028b83126b.csv b/ambient_sound_analysis/csv/score_71236d3146ee8b3354b3d8fea71d69028b83126b.csv new file mode 100644 index 0000000..988df42 --- /dev/null +++ b/ambient_sound_analysis/csv/score_71236d3146ee8b3354b3d8fea71d69028b83126b.csv @@ -0,0 +1 @@ +17, valentina-s, 71236d3146ee8b3354b3d8fea71d69028b83126b, adding model benchmarking workflow diff --git a/ambient_sound_analysis/csv/score_72b13caee35f09369b3d3c6b082e71bac68316c0.csv b/ambient_sound_analysis/csv/score_72b13caee35f09369b3d3c6b082e71bac68316c0.csv new file mode 100644 index 0000000..1b2cfad --- /dev/null +++ b/ambient_sound_analysis/csv/score_72b13caee35f09369b3d3c6b082e71bac68316c0.csv @@ -0,0 +1 @@ +1, valentina-s, 72b13caee35f09369b3d3c6b082e71bac68316c0, adding model benchmarking workflow diff --git a/ambient_sound_analysis/csv/score_a3d0ab1feae8b9b91c923229c4cf3d5b06e05f98.csv b/ambient_sound_analysis/csv/score_a3d0ab1feae8b9b91c923229c4cf3d5b06e05f98.csv new file mode 100644 index 0000000..dea0e0a --- /dev/null +++ b/ambient_sound_analysis/csv/score_a3d0ab1feae8b9b91c923229c4cf3d5b06e05f98.csv @@ -0,0 +1 @@ +17, valentina-s, a3d0ab1feae8b9b91c923229c4cf3d5b06e05f98, adding model benchmarking workflow diff --git a/ambient_sound_analysis/csv/score_cd12ce8cad03004c315e2c175fd61b3ebecdc3be.csv b/ambient_sound_analysis/csv/score_cd12ce8cad03004c315e2c175fd61b3ebecdc3be.csv new file mode 100644 index 0000000..97653d5 --- /dev/null +++ b/ambient_sound_analysis/csv/score_cd12ce8cad03004c315e2c175fd61b3ebecdc3be.csv @@ -0,0 +1 @@ +17, valentina-s, cd12ce8cad03004c315e2c175fd61b3ebecdc3be, adding model benchmarking workflow diff --git a/ambient_sound_analysis/csv/score_f38875f0d0e246c9035abb2f76602e1a89479171.csv b/ambient_sound_analysis/csv/score_f38875f0d0e246c9035abb2f76602e1a89479171.csv new file mode 100644 index 0000000..ba3a7b0 --- /dev/null +++ b/ambient_sound_analysis/csv/score_f38875f0d0e246c9035abb2f76602e1a89479171.csv @@ -0,0 +1 @@ +17, valentina-s, f38875f0d0e246c9035abb2f76602e1a89479171, adding model benchmarking workflow diff --git a/ambient_sound_analysis/csv/score_fc9e91bb543073453639b8989614702fdeaaa1e4.csv b/ambient_sound_analysis/csv/score_fc9e91bb543073453639b8989614702fdeaaa1e4.csv new file mode 100644 index 0000000..001f89c --- /dev/null +++ b/ambient_sound_analysis/csv/score_fc9e91bb543073453639b8989614702fdeaaa1e4.csv @@ -0,0 +1 @@ +17, valentina-s, fc9e91bb543073453639b8989614702fdeaaa1e4, adding model benchmarking workflow diff --git a/ambient_sound_analysis/display_benchmarks.ipynb b/ambient_sound_analysis/display_benchmarks.ipynb new file mode 100644 index 0000000..76d5a2d --- /dev/null +++ b/ambient_sound_analysis/display_benchmarks.ipynb @@ -0,0 +1,144 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "13bdddf3-f048-4bb2-801d-6a8473fa7d9d", + "metadata": {}, + "source": [ + "# Latest Benchmarks" + ] + }, + { + "cell_type": "code", + "execution_count": 68, + "id": "9b8f9eff-5009-4d4e-9e17-a9f14960c073", + "metadata": {}, + "outputs": [], + "source": [ + "import dask.dataframe as ddf" + ] + }, + { + "cell_type": "code", + "execution_count": 69, + "id": "dad42a94-20aa-4976-8ab3-558dc11c67c7", + "metadata": {}, + "outputs": [], + "source": [ + "df = ddf.read_csv(\"csv/*.csv\", header=None, index_col=False)" + ] + }, + { + "cell_type": "code", + "execution_count": 70, + "id": "ae56d8d7-aea5-4a09-971d-a05afcfad2ac", + "metadata": {}, + "outputs": [], + "source": [ + "df = df.compute().reset_index(drop=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 71, + "id": "f4354a33-83ca-4878-bb15-2ea116f32996", + "metadata": {}, + "outputs": [], + "source": [ + "df.columns = [\"# Ships\", \"username\", \"SHA\", \"title\"]" + ] + }, + { + "cell_type": "code", + "execution_count": 72, + "id": "a22b796f-9a02-4d3c-a3b4-335270e0e347", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + " | # Ships | \n", + "username | \n", + "SHA | \n", + "title | \n", + "
---|---|---|---|---|
0 | \n", + "1 | \n", + "valentina-s | \n", + "1dbb9106cd9ff69b73a7171f938285650a97d0bb | \n", + "$ {{github.event.pull_request.title}} | \n", + "
1 | \n", + "1 | \n", + "valentina-s | \n", + "72b13caee35f09369b3d3c6b082e71bac68316c0 | \n", + "adding model benchmarking workflow | \n", + "