-
Notifications
You must be signed in to change notification settings - Fork 0
59 lines (45 loc) · 2.39 KB
/
cml.yaml
File metadata and controls
59 lines (45 loc) · 2.39 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
name: validate-model
on:
workflow_dispatch:
pull_request:
branches: main
jobs:
cml:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: iterative/setup-cml@v2
- uses: astral-sh/setup-uv@v1
- uses: actions/setup-python@v4
with:
python-version-file: ".python-version"
- name: Generate datasets and models
run: |
# Supervised game: Generate datasets and models
uv run proteingym-base list-datasets datasets | jq 'map(select(.name == "charge_ladder" or .name == "NEIME_2019")) | map({name: .name, input_filename: .input_filename}) | . = {"datasets": .}' > benchmark/supervised/local/datasets.json
uv run proteingym-base list-models models | jq 'map(select(.name == "pls")) | map({name: .name, input_filename: .input_filename}) | . = {"models": .}' > benchmark/supervised/local/models.json
# Zero-shot game: Generate datasets and models
uv run proteingym-base list-datasets datasets | jq 'map(select(.name == "ranganathan")) | map({name: .name, input_filename: .input_filename}) | . = {"datasets": .}' > benchmark/zero_shot/local/datasets.json
uv run proteingym-base list-models models | jq 'map(select(.name == "esm")) | map({name: .name, input_filename: .input_filename}) | . = {"models": .}' > benchmark/zero_shot/local/models.json
- name: Run model validation
env:
repo_token: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
run: |
# Supervised game: Run DVC repro
uv run dvc repro benchmark/supervised/local/dvc.yaml
# Zero-shot game: Run DVC repro
uv run dvc repro benchmark/zero_shot/local/dvc.yaml
# Create report with metrics
# Pick one supervised model
echo "✅ Supervised models have all passed validation." >> report.md
echo '```csv' >> report.md
cat ./benchmark/supervised/local/metric/charge_ladder_pls.csv >> report.md
echo '```' >> report.md
# Pick one zero-shot model
echo "✅ Zero-shot models have all passed validation." >> report.md
echo '```csv' >> report.md
cat ./benchmark/zero_shot/local/metric/ranganathan_esm.csv >> report.md
echo '```' >> report.md
# Send comment to PR
echo "Send comment to PR"
cml comment create report.md