Agent Skillssynthetic-sciences/openscience › modal-ml-training

modal-ml-training

GitHub

提供Modal上长时ML训练的断线安全模式,涵盖部署+生成、检查点恢复、版本锁定及卷管理,适用于>30分钟且损失昂贵的任务。

backend/cli/skills/cloud-compute/modal-ml-training/SKILL.md synthetic-sciences/openscience

触发场景

需要长时间运行的GPU训练任务 必须防止因断开连接或抢占导致进度丢失 使用可抢占式GPU实例

安装

npx skills add synthetic-sciences/openscience --skill modal-ml-training -g -y
更多选项

非标准路径

npx skills add https://github.com/synthetic-sciences/openscience/tree/main/backend/cli/skills/cloud-compute/modal-ml-training -g -y

不安装直接使用

npx skills use synthetic-sciences/openscience@modal-ml-training

指定 Agent (Claude Code)

npx skills add synthetic-sciences/openscience --skill modal-ml-training -a claude-code -g -y

安装 repo 全部 skill

npx skills add synthetic-sciences/openscience --all -g -y

预览 repo 内 skill

npx skills add synthetic-sciences/openscience --list

SKILL.md

Frontmatter
{
    "name": "modal-ml-training",
    "tags": [
        "Modal",
        "GPU",
        "Training",
        "Checkpoint",
        "Preemption",
        "Deploy",
        "Serverless",
        "ML"
    ],
    "author": "Synthetic Sciences",
    "license": "MIT",
    "version": "1.0.0",
    "category": "cloud-compute",
    "description": "Disconnect-safe patterns for long-running ML training on Modal serverless GPU. Covers the deploy+spawn pattern (survives laptop shutdown\/SSH disconnect), checkpoint-resume for preemption recovery, PyTorch\/CUDA version pinning, volume reload\/commit discipline, and batch parameter sweeps. Use for any training job >30 min where losing progress is expensive. Complements the broader `modal-serverless-gpu` skill.",
    "dependencies": [
        "modal>=0.73.0",
        "torch"
    ]
}

Modal GPU — Long-Running Training Patterns

When to Use

  • Training jobs that take >30 minutes on GPU
  • Jobs that must survive laptop shutdown, SSH disconnect, or network loss
  • Training on preemptible GPU instances (Modal can move containers)
  • Any iterative training where losing progress is expensive

For general Modal usage (inference, sandboxes, web endpoints, batch), see the modal-serverless-gpu skill. This skill focuses specifically on the disconnect-safe long-training flow.

The Deploy + Spawn Pattern (Disconnect-Safe)

NEVER use modal run --detach for long jobs with chained operations. The local process can die and subsequent calls won't execute.

# Step 1: Write a SINGLE self-contained function
# train_script.py
import modal
app = modal.App("my-training")
volume = modal.Volume.from_name("my-results", create_if_missing=True)
image = modal.Image.debian_slim(python_version="3.11").pip_install(
    "torch==2.4.1",  # PIN versions!
    "numpy==1.26.4", "h5py", "matplotlib",
)

@app.function(gpu="A10G", image=image, volumes={"/results": volume}, timeout=86400)
def train():
    # Everything happens here: download, train, evaluate, save, plot
    # ...
    volume.commit()
    return results
# Step 2: Deploy (one-time, persists on Modal)
modal deploy train_script.py

# Step 3: Trigger (fire-and-forget, instant return)
python -c "import modal; modal.Function.from_name('my-training', 'train').spawn()"
# Your terminal can now close — training continues on Modal

API Note (Modal ≥0.68)

# OLD (removed): modal.Function.lookup("app", "fn")
# NEW:           modal.Function.from_name("app", "fn")

Checkpoint-Resume for Preemption

Modal can preempt workers and restart them on different machines. Save state periodically:

CKPT_PATH = f"{OUT}/resume_checkpoint.pt"

# On startup: check for existing checkpoint
volume.reload()  # Get fresh view of volume
if os.path.exists(CKPT_PATH):
    ckpt = torch.load(CKPT_PATH, weights_only=False, map_location=DEVICE)
    model.load_state_dict(ckpt["model"])
    optimizer.load_state_dict(ckpt["optimizer"])
    scheduler.load_state_dict(ckpt["scheduler"])
    start_epoch = ckpt["epoch"] + 1
    train_losses = ckpt["train_losses"]
    best_metric = ckpt["best_metric"]
    print(f"Resumed at epoch {start_epoch}")
else:
    start_epoch = 1

# During training: save every N epochs
for epoch in range(start_epoch, EPOCHS + 1):
    # ... training loop ...

    if epoch % 10 == 0:  # Every 10 epochs
        torch.save({
            "epoch": epoch,
            "model": model.state_dict(),
            "optimizer": optimizer.state_dict(),
            "scheduler": scheduler.state_dict(),
            "train_losses": train_losses,
            "best_metric": best_metric,
        }, CKPT_PATH)
        volume.commit()  # Persist to Modal volume

Max lost progress = checkpoint interval. For 10-epoch interval at ~30s/epoch = ~5 min lost.

PyTorch Version Pinning (CRITICAL)

Modal's GPU nodes can have different CUDA driver versions. Unpinned PyTorch grabs the latest, which may require a newer driver than available.

# WRONG: Installs latest (e.g., torch 2.11 needing CUDA 13)
image = modal.Image.debian_slim().pip_install("torch")

# RIGHT: Pin to known-compatible version
image = modal.Image.debian_slim(python_version="3.11").pip_install(
    "torch==2.4.1",        # Works with CUDA 12.x drivers
    "torchvision==0.19.1",
    "numpy==1.26.4",       # Pin numpy too (2.0 breaks some code)
)

Volume Management

volume = modal.Volume.from_name("my-results", create_if_missing=True)

# Mount in function:
@app.function(volumes={"/results": volume})
def train():
    volume.reload()   # BEFORE reading: get latest data from volume
    # ... training ...
    volume.commit()   # AFTER writing: persist changes to volume

# Read from local machine:
vol = modal.Volume.from_name("my-results")
for entry in vol.listdir("/"):
    print(entry.path, entry.size)

# Download file:
with open("local_file.pt", "wb") as f:
    for chunk in vol.read_file("remote/path/model.pt"):
        f.write(chunk)

Race condition warning: If multiple tasks write to the same volume directory, volume.commit() calls are serialized but interleaving is possible. Use separate subdirectories per task.

GPU Selection Guide

GPU VRAM $/hr Use When
T4 16 GB ~$0.59 Small models, inference, testing
A10G 24 GB ~$1.10 Standard training (256-512 spatial)
A100-40GB 40 GB ~$3.15 Large models, high resolution
A100-80GB 80 GB ~$4.05 Full resolution (1024+ spatial), multi-channel
H100 80 GB ~$4.25 Fastest training, large batch sizes

Rule of thumb for PDE solvers:

  • 256 spatial × 1 channel → A10G
  • 512 spatial × 3 channels → A10G (tight) or A100
  • 1024 spatial × 1 channel → A100-80GB
  • 1024 spatial × 3+ channels → A100-80GB or H100

Cost Estimation Template

Cost = (epochs × seconds_per_epoch / 3600) × $/hr

Example: 500 epochs × 30s/epoch = 15,000s = 4.2 hrs
On A10G: 4.2 × $1.10 = $4.62
On A100: 4.2 × $4.05 = $17.01

Batch Parameter Sweeps (Multiple Runs, One App)

For running the same model with different parameters (e.g., different datasets, hyperparameters):

# Single app with parameterized function
@app.function(gpu="A10G", image=image, volumes={"/results": volume}, timeout=86400)
def train(param_value: str):
    OUT = f"/results/run_{param_value}"
    os.makedirs(OUT, exist_ok=True)
    # ... training code using param_value ...
    volume.commit()
    return results
# Spawn multiple runs in parallel (fire-and-forget)
import modal
fn = modal.Function.from_name("my-sweep-app", "train")
for param in ["0.1", "0.4", "1.0", "4.0"]:
    call = fn.spawn(param)
    print(f"Spawned param={param}: {call.object_id}")

Key design rules:

  • Each run writes to a SEPARATE subdirectory (/results/run_{param})
  • All runs share one deployed app but execute as independent GPU instances
  • Each run has its own checkpoint-resume (separate checkpoint files)
  • Use modal app list to verify task count matches expected parallelism
  • Monitor via modal app logs app-name (logs interleave from all tasks)

Cost awareness: N parallel runs on A10G = N × $1.10/hr. 4 parallel A10G runs for 3 hrs = $13.20 total.

Monitoring Running Jobs

# List all apps
modal app list

# Stream logs (real-time)
modal app logs my-training-app

# Stop an app
modal app stop <app-id>

Common Pitfalls

Pitfall Symptom Fix
modal run --detach with chained .remote() Second call never executes Use deploy + spawn
Unpinned PyTorch CUDA driver too old error Pin torch==2.4.1
No volume.reload() before reading Stale/missing checkpoint Always reload before reading
No volume.commit() after writing Changes lost on preemption Commit after every checkpoint
Multiple tasks, same volume path Race conditions Use separate subdirectories
Timeout too short Job killed mid-training Set timeout=86400 (24h max)
No checkpoint-resume Lose all progress on preemption Save every 10 epochs
Multiple spawns of same function Duplicate jobs running Check modal app list first

版本历史

  • e9844a4 当前 2026-07-11 17:22

依赖关系

  • required modal>=0.73.0
  • required torch

同 Skill 集合

.openscience/skill/bun-file-io/SKILL.md
backend/cli/skills/biology/anndata/SKILL.md
backend/cli/skills/biology/benchling-integration/SKILL.md
backend/cli/skills/biology/bioimage-analysis/SKILL.md
backend/cli/skills/biology/bioservices/SKILL.md
backend/cli/skills/biology/cancer-genomics-analysis/SKILL.md
backend/cli/skills/biology/clinical-imaging/SKILL.md
backend/cli/skills/biology/clinical-reports/SKILL.md
backend/cli/skills/biology/cobrapy/SKILL.md
backend/cli/skills/biology/curated-bio-datasets/SKILL.md
backend/cli/skills/biology/deeptools/SKILL.md
backend/cli/skills/biology/dnanexus-integration/SKILL.md
backend/cli/skills/biology/etetoolkit/SKILL.md
backend/cli/skills/biology/flow-cytometry-analysis/SKILL.md
backend/cli/skills/biology/flowio/SKILL.md
backend/cli/skills/biology/gget/SKILL.md
backend/cli/skills/biology/glycobiology/SKILL.md
backend/cli/skills/biology/histolab/SKILL.md
backend/cli/skills/biology/immunology-assays/SKILL.md
backend/cli/skills/biology/latchbio-integration/SKILL.md
backend/cli/skills/biology/microbial-dynamics/SKILL.md
backend/cli/skills/biology/molecular-cloning/SKILL.md
backend/cli/skills/biology/neurokit2/SKILL.md
backend/cli/skills/biology/neuropixels-analysis/SKILL.md
backend/cli/skills/biology/omero-integration/SKILL.md
backend/cli/skills/biology/opentrons-integration/SKILL.md
backend/cli/skills/biology/pathml/SKILL.md
backend/cli/skills/biology/pharmacology-wetlab/SKILL.md
backend/cli/skills/biology/protocolsio-integration/SKILL.md
backend/cli/skills/biology/pydeseq2/SKILL.md
backend/cli/skills/biology/pyhealth/SKILL.md
backend/cli/skills/biology/pylabrobot/SKILL.md
backend/cli/skills/biology/pysam/SKILL.md
backend/cli/skills/biology/scanpy/SKILL.md
backend/cli/skills/biology/scikit-bio/SKILL.md
backend/cli/skills/biology/scikit-survival/SKILL.md
backend/cli/skills/biology/scvi-tools/SKILL.md
backend/cli/skills/biology/synthetic-biology/SKILL.md
backend/cli/skills/biology/treatment-plans/SKILL.md
backend/cli/skills/chemistry/admet-prediction/SKILL.md
backend/cli/skills/chemistry/admet-reasoning/SKILL.md
backend/cli/skills/chemistry/binding-affinity/SKILL.md
backend/cli/skills/chemistry/datamol/SKILL.md
backend/cli/skills/chemistry/deepchem/SKILL.md
backend/cli/skills/chemistry/denovo-design/SKILL.md
backend/cli/skills/chemistry/diffdock/SKILL.md
backend/cli/skills/chemistry/drug-design/SKILL.md
backend/cli/skills/chemistry/hypogenic/SKILL.md
backend/cli/skills/chemistry/matchms/SKILL.md
backend/cli/skills/chemistry/medchem/SKILL.md
backend/cli/skills/chemistry/molecular-docking/SKILL.md
backend/cli/skills/chemistry/molecular-optimization/SKILL.md
backend/cli/skills/chemistry/molecular-rag/SKILL.md
backend/cli/skills/chemistry/molecule-visualization/SKILL.md
backend/cli/skills/chemistry/molfeat/SKILL.md
backend/cli/skills/chemistry/pocket-detection/SKILL.md
backend/cli/skills/chemistry/pyopenms/SKILL.md
backend/cli/skills/chemistry/pytdc/SKILL.md
backend/cli/skills/chemistry/rdkit/SKILL.md
backend/cli/skills/chemistry/smiles-validation/SKILL.md
backend/cli/skills/chemistry/structure-prediction/SKILL.md
backend/cli/skills/chemistry/torchdrug/SKILL.md
backend/cli/skills/cloud-compute/fireworks-ai/SKILL.md
backend/cli/skills/cloud-compute/lambda-labs/SKILL.md
backend/cli/skills/cloud-compute/modal-research-gpu/SKILL.md
backend/cli/skills/cloud-compute/modal/SKILL.md
backend/cli/skills/cloud-compute/skypilot/SKILL.md
backend/cli/skills/cloud-compute/tensorpool/SKILL.md
backend/cli/skills/cloud-compute/tinker-training-cost/SKILL.md
backend/cli/skills/cloud-compute/tinker/SKILL.md
backend/cli/skills/cloud-compute/together-ai/SKILL.md
backend/cli/skills/coding/arboreto/SKILL.md
backend/cli/skills/coding/audiocraft/SKILL.md
backend/cli/skills/coding/denario/SKILL.md
backend/cli/skills/coding/gtars/SKILL.md
backend/cli/skills/coding/multi-objective-optimization/SKILL.md
backend/cli/skills/coding/networkx/SKILL.md
backend/cli/skills/coding/pymc/SKILL.md
backend/cli/skills/coding/pymoo/SKILL.md
backend/cli/skills/coding/scikit-learn/SKILL.md
backend/cli/skills/coding/simpy/SKILL.md
backend/cli/skills/coding/slime/SKILL.md
backend/cli/skills/coding/statistical-analysis/SKILL.md
backend/cli/skills/coding/statsmodels/SKILL.md
backend/cli/skills/coding/torch_geometric/SKILL.md
backend/cli/skills/coding/umap-learn/SKILL.md
backend/cli/skills/data-engineering/aeon/SKILL.md
backend/cli/skills/data-engineering/dask/SKILL.md
backend/cli/skills/data-engineering/hdf5-pde-data-loading/SKILL.md
backend/cli/skills/data-engineering/hugging-face-datasets/SKILL.md
backend/cli/skills/data-engineering/polars/SKILL.md
backend/cli/skills/data-engineering/vaex/SKILL.md
backend/cli/skills/data-engineering/zarr-python/SKILL.md
backend/cli/skills/databases/alphafold-database/SKILL.md
backend/cli/skills/databases/biorxiv-database/SKILL.md
backend/cli/skills/databases/brenda-database/SKILL.md
backend/cli/skills/databases/cellxgene-census/SKILL.md
backend/cli/skills/databases/chembl-database/SKILL.md
backend/cli/skills/databases/clinicaltrials-database/SKILL.md
backend/cli/skills/databases/clinpgx-database/SKILL.md
backend/cli/skills/databases/clinvar-database/SKILL.md
backend/cli/skills/databases/cosmic-database/SKILL.md
backend/cli/skills/databases/datacommons-client/SKILL.md
backend/cli/skills/databases/drugbank-database/SKILL.md
backend/cli/skills/databases/ena-database/SKILL.md
backend/cli/skills/databases/ensembl-database/SKILL.md
backend/cli/skills/databases/fda-database/SKILL.md
backend/cli/skills/databases/gene-database/SKILL.md
backend/cli/skills/databases/gwas-database/SKILL.md
backend/cli/skills/databases/hmdb-database/SKILL.md
backend/cli/skills/databases/imaging-data-commons/SKILL.md
backend/cli/skills/databases/kegg-database/SKILL.md
backend/cli/skills/databases/metabolomics-workbench-database/SKILL.md
backend/cli/skills/databases/openalex-database/SKILL.md
backend/cli/skills/databases/opentargets-database/SKILL.md
backend/cli/skills/databases/pdb-database/SKILL.md
backend/cli/skills/databases/pubchem-database/SKILL.md
backend/cli/skills/databases/pubmed-database/SKILL.md
backend/cli/skills/databases/reactome-database/SKILL.md
backend/cli/skills/databases/string-database/SKILL.md
backend/cli/skills/databases/uniprot-database/SKILL.md
backend/cli/skills/databases/zinc-database/SKILL.md
backend/cli/skills/document-parsing/liteparse/SKILL.md
backend/cli/skills/llm-tools/autogpt/SKILL.md
backend/cli/skills/llm-tools/blip-2/SKILL.md
backend/cli/skills/llm-tools/chroma/SKILL.md
backend/cli/skills/llm-tools/clip/SKILL.md
backend/cli/skills/llm-tools/constitutional-ai/SKILL.md
backend/cli/skills/llm-tools/crewai/SKILL.md
backend/cli/skills/llm-tools/dspy/SKILL.md
backend/cli/skills/llm-tools/faiss/SKILL.md
backend/cli/skills/llm-tools/guidance/SKILL.md
backend/cli/skills/llm-tools/hugging-face-cli/SKILL.md
backend/cli/skills/llm-tools/hugging-face-tool-builder/SKILL.md
backend/cli/skills/llm-tools/huggingface-tokenizers/SKILL.md
backend/cli/skills/llm-tools/instructor/SKILL.md
backend/cli/skills/llm-tools/langchain/SKILL.md
backend/cli/skills/llm-tools/langsmith/SKILL.md
backend/cli/skills/llm-tools/llamaguard/SKILL.md
backend/cli/skills/llm-tools/llamaindex/SKILL.md
backend/cli/skills/llm-tools/llava/SKILL.md
backend/cli/skills/llm-tools/llm-as-judge-evaluation/SKILL.md
backend/cli/skills/llm-tools/long-context/SKILL.md
backend/cli/skills/llm-tools/nemo-guardrails/SKILL.md
backend/cli/skills/llm-tools/outlines/SKILL.md
backend/cli/skills/llm-tools/pinecone/SKILL.md
backend/cli/skills/llm-tools/qdrant/SKILL.md
backend/cli/skills/llm-tools/segment-anything/SKILL.md
backend/cli/skills/llm-tools/sentence-transformers/SKILL.md
backend/cli/skills/llm-tools/sentencepiece/SKILL.md
backend/cli/skills/llm-tools/stable-diffusion/SKILL.md
backend/cli/skills/llm-tools/transformers/SKILL.md
backend/cli/skills/llm-tools/whisper/SKILL.md
backend/cli/skills/ml-inference/gguf/SKILL.md
backend/cli/skills/ml-inference/groq/SKILL.md
backend/cli/skills/ml-inference/llama-cpp/SKILL.md
backend/cli/skills/ml-inference/miles/SKILL.md
backend/cli/skills/ml-inference/phoenix/SKILL.md
backend/cli/skills/ml-inference/sglang/SKILL.md
backend/cli/skills/ml-inference/speculative-decoding/SKILL.md
backend/cli/skills/ml-inference/tensorrt-llm/SKILL.md
backend/cli/skills/ml-inference/vllm/SKILL.md
backend/cli/skills/ml-training/accelerate/SKILL.md
backend/cli/skills/ml-training/awq/SKILL.md
backend/cli/skills/ml-training/axolotl/SKILL.md
backend/cli/skills/ml-training/bigcode-evaluation-harness/SKILL.md
backend/cli/skills/ml-training/bitsandbytes/SKILL.md
backend/cli/skills/ml-training/colab-finetuning/SKILL.md
backend/cli/skills/ml-training/deepspeed/SKILL.md
backend/cli/skills/ml-training/flash-attention/SKILL.md
backend/cli/skills/ml-training/geniml/SKILL.md
backend/cli/skills/ml-training/gptq/SKILL.md
backend/cli/skills/ml-training/grpo-rl-training/SKILL.md
backend/cli/skills/ml-training/hqq/SKILL.md
backend/cli/skills/ml-training/hugging-face-evaluation/SKILL.md
backend/cli/skills/ml-training/knowledge-distillation/SKILL.md
backend/cli/skills/ml-training/litgpt/SKILL.md
backend/cli/skills/ml-training/llama-factory/SKILL.md
backend/cli/skills/ml-training/lm-evaluation-harness/SKILL.md
backend/cli/skills/ml-training/mamba/SKILL.md
backend/cli/skills/ml-training/megatron-core/SKILL.md
backend/cli/skills/ml-training/ml-benchmark-evaluation/SKILL.md
backend/cli/skills/ml-training/mlflow/SKILL.md
backend/cli/skills/ml-training/model-economics/SKILL.md
backend/cli/skills/ml-training/model-merging/SKILL.md
backend/cli/skills/ml-training/model-pruning/SKILL.md
backend/cli/skills/ml-training/moe-training/SKILL.md
backend/cli/skills/ml-training/nanogpt/SKILL.md
backend/cli/skills/ml-training/nemo-curator/SKILL.md
backend/cli/skills/ml-training/nnsight/SKILL.md
backend/cli/skills/ml-training/openrlhf/SKILL.md
backend/cli/skills/ml-training/peft/SKILL.md
backend/cli/skills/ml-training/prime-intellect-lab/SKILL.md
backend/cli/skills/ml-training/pufferlib/SKILL.md
backend/cli/skills/ml-training/pytorch-fsdp/SKILL.md
backend/cli/skills/ml-training/pytorch-lightning/SKILL.md
backend/cli/skills/ml-training/pyvene/SKILL.md
backend/cli/skills/ml-training/rwkv/SKILL.md
backend/cli/skills/ml-training/saelens/SKILL.md
backend/cli/skills/ml-training/simpo/SKILL.md
backend/cli/skills/ml-training/stable-baselines3/SKILL.md
backend/cli/skills/ml-training/tensorboard/SKILL.md
backend/cli/skills/ml-training/torchforge/SKILL.md
backend/cli/skills/ml-training/torchtitan/SKILL.md
backend/cli/skills/ml-training/training-data-pipeline/SKILL.md
backend/cli/skills/ml-training/transformer-lens/SKILL.md
backend/cli/skills/ml-training/trl-fine-tuning/SKILL.md
backend/cli/skills/ml-training/unsloth/SKILL.md
backend/cli/skills/ml-training/verl/SKILL.md
backend/cli/skills/other/hugging-face-trackio/SKILL.md
backend/cli/skills/other/labarchive-integration/SKILL.md
backend/cli/skills/other/skill-installer/SKILL.md
backend/cli/skills/physics/astropy/SKILL.md
backend/cli/skills/physics/autoregressive-neural-pde-solver/SKILL.md
backend/cli/skills/physics/bayesian-inference/SKILL.md
backend/cli/skills/physics/conservation-law-discovery/SKILL.md
backend/cli/skills/physics/dimensional-analysis/SKILL.md
backend/cli/skills/physics/dynamical-systems/SKILL.md
backend/cli/skills/physics/fluid-dynamics/SKILL.md
backend/cli/skills/physics/fluidsim/SKILL.md
backend/cli/skills/physics/hamiltonian-mechanics/SKILL.md
backend/cli/skills/physics/neural-operator/SKILL.md
backend/cli/skills/physics/ode-solver/SKILL.md
backend/cli/skills/physics/pde-solver/SKILL.md
backend/cli/skills/physics/physics-databases/SKILL.md
backend/cli/skills/physics/physics-fitting/SKILL.md
backend/cli/skills/physics/physics-visualization/SKILL.md
backend/cli/skills/physics/pinn-training/SKILL.md
backend/cli/skills/physics/shock-capturing-neural-operators/SKILL.md
backend/cli/skills/physics/sindy-identification/SKILL.md
backend/cli/skills/physics/spectral-analysis/SKILL.md
backend/cli/skills/physics/statistical-mechanics/SKILL.md
backend/cli/skills/physics/symbolic-regression/SKILL.md
backend/cli/skills/physics/wave-propagation/SKILL.md
backend/cli/skills/quantum/cirq/SKILL.md
backend/cli/skills/quantum/pennylane/SKILL.md
backend/cli/skills/quantum/qiskit/SKILL.md
backend/cli/skills/quantum/qutip/SKILL.md
backend/cli/skills/research/hypothesis-generation/SKILL.md
backend/cli/skills/research/initialize-atlas-graph/SKILL.md
backend/cli/skills/research/market-research-reports/SKILL.md
backend/cli/skills/research/peer-review/SKILL.md
backend/cli/skills/research/research-grants/SKILL.md
backend/cli/skills/research/research-lookup/SKILL.md
backend/cli/skills/research/scientific-brainstorming/SKILL.md
backend/cli/skills/research/scientific-critical-thinking/SKILL.md
backend/cli/skills/visualization/dna-visualization/SKILL.md
backend/cli/skills/visualization/matplotlib/SKILL.md
backend/cli/skills/visualization/plotly/SKILL.md
backend/cli/skills/visualization/protein-diagram/SKILL.md
backend/cli/skills/visualization/scientific-visualization/SKILL.md
backend/cli/skills/visualization/seaborn/SKILL.md
backend/cli/skills/writing/citation-management/SKILL.md
backend/cli/skills/writing/hugging-face-paper-publisher/SKILL.md
backend/cli/skills/writing/latex-posters/SKILL.md
backend/cli/skills/writing/literature-review/SKILL.md
backend/cli/skills/writing/ml-paper-writing/SKILL.md
backend/cli/skills/writing/pptx-posters/SKILL.md
backend/cli/skills/writing/scientific-writing/SKILL.md
backend/cli/skills/writing/venue-templates/SKILL.md
backend/cli/skills/biology/clinical-decision-support/SKILL.md
backend/cli/skills/biology/esm/SKILL.md
backend/cli/skills/biology/lamindb/SKILL.md
backend/cli/skills/biology/pydicom/SKILL.md
backend/cli/skills/coding/exploratory-data-analysis/SKILL.md
backend/cli/skills/coding/matlab/SKILL.md
backend/cli/skills/coding/shap/SKILL.md
backend/cli/skills/coding/sympy/SKILL.md
backend/cli/skills/data-engineering/geopandas/SKILL.md
backend/cli/skills/ml-training/hugging-face-model-trainer/SKILL.md
backend/cli/skills/other/get-available-resources/SKILL.md
backend/cli/skills/other/hugging-face-jobs/SKILL.md
backend/cli/skills/other/iso-13485-certification/SKILL.md

元信息

文件数
0
版本
e9844a4
Hash
5f938868
收录时间
2026-07-11 17:22

首页 - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-07-15 06:42
浙ICP备14020137号-1 $访客地图$