Borrowing it
Nothing to install: this file belongs to AMDResearch/ai4science-studio. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/AMDResearch/ai4science-studio/main/.cursor/skills/ai4science-material-science/SKILL.mdgit clone --depth 1 https://github.com/AMDResearch/ai4science-studioWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/amdresearch/ai4science-studio/ai4science-material-science)<a href="https://agentmods.dev/skills/amdresearch/ai4science-studio/ai4science-material-science"><img src="https://agentmods.dev/badge/skills/amdresearch/ai4science-studio/ai4science-material-science/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/amdresearch/ai4science-studio/ai4science-material-science"><img src="https://agentmods.dev/badge/skills/amdresearch/ai4science-studio/ai4science-material-science.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00028 | $0.01322 |
| Opus 5 | $0.00014 | $0.00661 |
| Sonnet 5 | $0.00006 | $0.00264 |
| Haiku 4.5 | $0.00003 | $0.00132 |
Grade A, and why
ai4science-material-science scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 51 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Material science domain
Scope
The material_science/ domain covers materials, chemistry, and related ML: property prediction, generative models, surrogates for DFT or MD-scale workflows when exposed as Hugging Face models, and similar tasks.
Layout
- Models:
material_science/models/<model-slug>/ - Slug rules:
material_science/models/README.md(defaultorg__model; public on-disk names such asHydraGNNare allowed when the modelREADME.mdstates the canonical Hub id) - Structural template reference:
_template/(repo root) - Example:
material_science/models/HydraGNN/— atomistic graph foundation models (HydraGNN), Hub idmlupopa/HydraGNN_Predictive_GFM_2024
Agent guidance
- Keep recipes explicit about input representations (graphs, crystals, SMILES, etc.) and any unit conventions (including energy vs force targets and graph vs node outputs where relevant).
- Prefer citing benchmarks and baseline numbers from literature or model cards when adding evaluation snippets.
- Do not commit large proprietary structure databases; link to public sources or describe how users supply their own data.
- Institutional AMD clusters and staging large artifacts (Hugging Face CLI, Globus / Constellation mirrors, OLCF copy-out when applicable) belong in
data-access.md-style runbooks for ADIOS or similar scientific I/O when models use them.
HydraGNN multi-node training pattern
HydraGNN uses MPI-based distributed training with ADIOS datasets. Key patterns for AMD clusters:
- Launch:
srun --mpi=pmix apptainer exec --rocm --overlay <overlay>:ro $SIF bash <rank_script>. The--mpi=pmixis required becausempi4pycallsMPI_Initinside the container. - Non-DDStore path (phase 1): Use
--multi --multi_model_list=<datasets>without--ddstore. Each rank opens ADIOS files directly viaAdiosMultiDataset. Simpler and sufficient for moderate scales (1-8 nodes). - DDStore path (phase 2): Add
--ddstoreflag plus env varsHYDRAGNN_AGGR_BACKEND=mpi,HYDRAGNN_DDSTORE_METHOD=1,HYDRAGNN_CUSTOM_DATALOADER=1. Required for large-scale (32+ nodes) where per-rank ADIOS I/O becomes a bottleneck. - Dataset convention: ADIOS datasets are expected at
./dataset/<name>-v2.bprelative to the training script. Symlink from shared storage rather than copying. - Config file: The upstream
gfm_mlip.jsonis hardware-agnostic and works on any cluster. Use CLI flags (--batch_size,--num_epoch,--precision) to override parameters at runtime without modifying the file. - Env vars inside container: Set
OMP_NUM_THREADSto match--cpus-per-task,MIOPEN_DISABLE_CACHE=1,MIOPEN_USER_DB_PATH=$SCRATCH_LOCAL/<jobid>/miopen(node-local fast storage from.cluster-config.yaml),HYDRAGNN_USE_VARIABLE_GRAPH_SIZE=1. - Multi-node MPI transport (ob1/tcp): On Pensando/ionic fabrics, data NICs use
/31subnets that don't route between nodes — IB verbs cannot work for MPI. UseOMPI_MCA_pml=ob1,OMPI_MCA_btl=tcp,self,OMPI_MCA_btl_tcp_if_include=$MGMT_NIC,MPI4PY_RC_THREADS=false. RCCL uses ANP plugin (librccl-anp.so) over ionic native transport (RoCEv2/GDRDMA) for GPU allreduce, independent of MPI. The ANP plugin andlibionic.so.1must be bind-mounted from the host into the container. - Convergence capture: Run with
HYDRAGNN_VALTEST=1to get epoch-level loss reporting. Parse withexamples/parse_convergence.py --log <slurm_output>. - Strong-scaling sweep: Submit matched 1/2/4/8-node runs via
examples/run_scaling_study.sh(identical env,HYDRAGNN_VALTEST=0, 6 epochs). Collate steady-state throughput (epochs 2–5) withexamples/collate_scaling_study.py. Results table and methodology inrecipes/train/README.md§6.sbatch_train_amd.shdefaultsTORCH_NCCL_HIGH_PRIORITY=1andGPU_MAX_HW_QUEUES=2.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 10d ago First seen · 51 lines · 28 tokens per session scan A b08bced6fa87
ai4science-material-science is a skill published in the GitHub repository AMDResearch/ai4science-studio (4 stars, last pushed 1mo ago), licensed MIT. It adds 28 tokens to every session and 1,322 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
batch-processing-clinical-text
Run large-scale batch NER, PII extraction, or de-identification over many clinical notes on-device with OpenMed, with sharding, checkpointing, resumability, and append-only JSONL output. Use when the user needs to process a corpus or folder of notes, de-identify a dataset, run NER over thousands of documents, build a…
exporting-to-fhir
Convert OpenMed NER output (entities from openmed.analyzetext) into FHIR R4 resources — Condition, MedicationStatement, Observation — using OpenMed's built-in FHIR R4 export helpers in openmed.clinical.exporters. Covers the verified CodeableConcept builder (coding, codeableconcept, systemuri), deterministic fullUrl…
loading-openmed-models
Load OpenMed clinical/biomedical NER models from the Hugging Face Hub or a local path and reuse them efficiently across calls. Use when the user wants to load an OpenMed model, control the model cache, run fully offline after a one-time download, reuse a ModelLoader to avoid reloading, set a cachedir or device, or…
choosing-openmed-models
Discover and pick the right OpenMed model for a clinical or biomedical task, domain, or language. Use when the user asks which OpenMed model to use, wants to list model categories, find a Disease vs Oncology vs Privacy/PII model, get a PII model for a specific language, search models by size or task, or inspect a…
extracting-clinical-entities
Run clinical and biomedical named-entity recognition on medical text with OpenMed's analyzetext. Use when the user wants to extract diseases, drugs, anatomy, genes, or other biomedical entities from notes; needs NER output as dict/json/html/csv; wants to filter by confidence, group entities, toggle sentence detection…
normalizing-rxnorm
Normalizes drug mentions extracted by OpenMed to RxNorm RxCUIs using the free public RxNav/RxNorm REST API. Use when the user wants to code, standardize, or de-duplicate medication names, resolve a brand/generic/ingredient to a stable RxCUI, link strength+dose-form to an SCD/SBD, attach NDCs, or build a US Core…