Skip to content

Run notebook (Linux, CUDA) #5

Run notebook (Linux, CUDA)

Run notebook (Linux, CUDA) #5

name: Run notebook (Linux, CUDA)
on:
workflow_dispatch:
inputs:
notebook-path:
description: Path to the notebook to run
required: true
type: choice
options: # not including R tutorials currently
- atac/PeakVI.ipynb
- atac/PoissonVI.ipynb
- atac/scbasset_batch.ipynb
- atac/scbasset.ipynb
- custom_dl/ann_collection.ipynb
- custom_dl/lamin.ipynb
- custom_dl/Tahoe100_mrVI_lamin.ipynb
- custom_dl/tiledb.ipynb
- cytometry/CytoVI_advanced_tutorial.ipynb
- cytometry/CytoVI_batch_correction_tutorial.ipynb
- dev/data_tutorial.ipynb
- dev/model_user_guide.ipynb
- dev/module_user_guide.ipynb
- hub/cellxgene_census_model.ipynb
- hub/query_hlca_knn.ipynb
- hub/scvi_hub_intro_and_download.ipynb
- hub/scvi_hub_upload_and_large_files.ipynb
- hub/Tahoe100.ipynb
- multimodal/cite_scrna_integration_w_totalVI.ipynb
- multimodal/MultiVI_tutorial.ipynb
- multimodal/scarches_scvi_tools.ipynb
- multimodal/totalVI_reference_mapping.ipynb
- multimodal/totalVI.ipynb
- quick_start/api_overview.ipynb
- quick_start/data_loading.ipynb
- scbs/MethylVI_batch.ipynb
- scrna/amortized_lda.ipynb
- scrna/AutoZI_tutorial.ipynb
- scrna/cellassign_tutorial.ipynb
- scrna/contrastiveVI_tutorial.ipynb
- scrna/decipher_tutorial.ipynb
- scrna/harmonization.ipynb
- scrna/linear_decoder.ipynb
- scrna/MrVI_tutorial.ipynb
- scrna/scanvi_fix.ipynb
- scrna/scVI_DE_worm.ipynb
- scrna/seed_labeling.ipynb
- scrna/sysVI.ipynb
- scrna/tabula_muris.ipynb
- scrna/Tahoe100_mrVI.ipynb
- scrna/velovi.ipynb
- spatial/cell2location_lymph_node_spatial_tutorial.ipynb
- spatial/DestVI_tutorial.ipynb
- spatial/gimvi_tutorial.ipynb
- spatial/resolVI_tutorial.ipynb
- spatial/scVIVA_tutorial.ipynb
- spatial/stereoscope_heart_LV_tutorial.ipynb
- spatial/tangram_scvi_tools.ipynb
- use_cases/autotune_scvi.ipynb
- use_cases/interpretability.ipynb
- use_cases/minification.ipynb
- use_cases/multiGPU.ipynb
- use_cases/preprocessing.ipynb
python-version:
description: Python version
required: true
default: "3.13"
type: choice
options:
- "3.13"
- "3.12"
- "3.11"
cuda-version:
description: CUDA version
required: true
default: "12"
type: choice
options:
- "12"
scvi-tools-version:
description: scvi-tools version (latest, stable, or semver)
required: true
default: "latest"
type: string
jobs:
docker:
runs-on: [self-hosted, Linux, X64, CUDA]
container:
image: scverse/scvi-tools:py${{ inputs.python-version }}-cu${{ inputs.cuda-version }}-tutorials-${{ inputs.scvi-tools-version }}
options: --user root --gpus all
timeout-minutes: 600 # lenient timeout for scbasset tutorial
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Python kernel
run: |
python -m ipykernel install
python -m pip install "jax[cuda12]"
python -m pip install "scvi-tools[tutorials]"
python -m pip install "scanpy>=1.11.1"
- name: Run notebook
run: |
python -m jupyter nbconvert --execute --inplace ${{ inputs.notebook-path }}
- name: Submit PR changes
uses: peter-evans/create-pull-request@v5
with:
commit-message: Rerun ${{ inputs.notebook-path }}
title: Automated update for ${{ inputs.notebook-path }}
branch: update-${{ inputs.notebook-path }}
body: |
Update ${{ inputs.notebook-path }}:
- Python version: ${{ inputs.python-version }}
- CUDA version: ${{ inputs.cuda-version }}
- scvi-tools version: ${{ inputs.scvi-tools-version }}