grnade-odesign / README.md
ZhiyuanChen's picture
Restore the agreed model card license
c27f600 verified
|
Raw History Blame Contribute Delete
6.64 kB
---
tags:
- Biology
- RNA Design
- Inverse Folding
- Geometric Deep Learning
license: agpl-3.0
library_name: ofoldx
pipeline_tag: other
---
# gRNAde
Geometric RNA inverse folding with a multi-conformation GVP encoder and
autoregressive nucleotide decoder.
## Disclaimer
This is an unofficial OFoldX implementation of
[gRNAde](https://github.com/chaitjo/geometric-rna-design). The upstream authors
did not write, review, or endorse this implementation or model card.
## Model Details
gRNAde predicts RNA identities from one-dimensional sequence order, explicit
secondary-structure base pairs, and optional three-dimensional backbone
geometry. `GrnadeProcessor` lowers one canonical RNA chain or aligned
conformations to P, C4', and base-nitrogen features, sequence, base-pair, and
spatial edges, native identities, and a design mask. The secondary structure is
a dot-bracket string read by MultiMolecule; further bracket types represent
pseudoknots. `GrnadeModel` applies the released multi-conformation
geometric-vector encoder and masked autoregressive decoder over the 72 canonical
classes (classes the checkpoint does not predict have logit `-inf`), while
`GrnadePipeline` builds each sampled sequence's final target with the shared
design producer.
The implementation follows gRNAde v1.0.0 revision
`2453b18778a1981ac25f314790e5395f1e9ab218` and v0.3.2 revision
`e473636bef037be1e1b2516cf00af71e3334bd4f`. PyTorch Geometric carriers and
structure-file parsing do not cross the Model boundary.
### Variants
Distinct explicit artifact identifiers select the ODesign `grnade.h5`, the
independently released v1 checkpoint, and all ten released v0.3.2
autoregressive checkpoints. The latter retain their released one-, two-,
three-, or five-conformation Processor setting; split names do not change the
Model equation.
### Links
- **Code**: [ofoldx.models.grnade](https://github.com/OTeam-AI4S/OFoldX/tree/main/ofoldx/models/grnade)
- **Method paper**: [gRNAde: Geometric Deep Learning for 3D RNA inverse design](https://arxiv.org/abs/2305.14749)
- **Experimental study**: [Generative inverse design of RNA structure and function with gRNAde](https://www.biorxiv.org/content/10.1101/2025.11.29.691298)
- **Developed by**: Chaitanya K. Joshi, Arian R. Jamasb, Ramon Viñas, Charles
Harris, Simon V. Mathis, Alex Morehead, Rishabh Anand, and Pietro Liò
- **Original repository**: [chaitjo/geometric-rna-design](https://github.com/chaitjo/geometric-rna-design)
## Usage
Load the concrete design Pipeline from a converted repository:
```python
from ofoldx.io import read_structure
from ofoldx.models.grnade import GrnadePipeline
structure, report = read_structure("rna.cif")
pipeline = GrnadePipeline.from_repository("oteam/grnade")
result = pipeline.design(structure, secondary_structure="((((....))))", num_candidates=4, temperature=0.2)
```
`structure` holds one RNA instance, or `instance_id=` selects the target RNA
chain; the dot-bracket covers its RNA residues. `design=PositionSelection(...)`
restricts which residue identities may change. Each candidate reports total and
mean log probability, perplexity, and native recovery, and `result.records`
holds each candidate's design record.
Pass a sequence of aligned `Structure` values to condition one design on
multiple conformations:
```python
result = pipeline.design((open_conformation, closed_conformation), secondary_structure="((((....))))")
```
The first conformation is the design target; later conformations contribute
structural features only and must contain the same RNA sequence.
For the v1 Pipeline, the dot-bracket's pairs are the secondary-structure pairs
supplied to the released graph; base-pair edges have higher priority than
overlapping spatial or sequence edges. Set `use_coordinates=False` to build the
released v1 1D+2D-only graph.
Released v0.3.2 repositories load through the paired legacy Pipeline:
```python
from ofoldx.models.grnade import GrnadeV032Pipeline
pipeline = GrnadeV032Pipeline.from_repository("oteam/grnade-v0.3.2-3state-all")
result = pipeline.design((first_conformation, second_conformation))
```
The legacy graph has no base-pair or sequence-edge channel.
`use_coordinates=False` therefore produces zero geometric features and no
spatial edges. File parsing never enters the Model.
## Training Details
OFoldX preserves the released model graph and differentiable teacher-forced
`forward` operation. `criterion(..., label_smoothing=...)` exposes the training
choice directly; the released training value was `0.05`. Dataset
construction, screening models, experiment tracking, and the upstream
training executable remain caller-owned. The raw teacher-forced Model output
is also available to custom training loops.
## Citation
```bibtex
@inproceedings{joshi2025grnade,
title={g{RNA}de: Geometric Deep Learning for 3D RNA inverse design},
author={Joshi, Chaitanya K and Jamasb, Arian R and Vi{\~n}as, Ramon and
Harris, Charles and Mathis, Simon V and Morehead, Alex and
Anand, Rishabh and Li{\`o}, Pietro},
booktitle={International Conference on Learning Representations},
year={2025}
}
```
If OFoldX supports your research, also cite the OFoldX software:
```bibtex
@software{chen2026ofoldx,
author = {Chen, Zhiyuan},
title = {OFoldX},
year = {2026},
url = {https://github.com/OTeam-AI4S/OFoldX},
}
```
## Contact
Please use [OFoldX GitHub issues](https://github.com/OTeam-AI4S/OFoldX/issues)
for questions about this implementation or model card. Questions about the
original model should be directed to the gRNAde authors.
## License
This model implementation is licensed under the
[GNU Affero General Public License](https://www.gnu.org/licenses/agpl-3.0.en.html).
The inspected upstream gRNAde source is MIT-licensed.
```spdx
SPDX-License-Identifier: AGPL-3.0-or-later
```
The Pipeline is callable and supports staged execution with `prepare`, `forward`,
and `postprocess`. Prepared values retain the source and correspondence needed by
the scientific result; the concrete signatures describe each stage's controls.
## Converted checkpoint
This repository contains converted model parameters under mit; the original terms and notices are preserved in `LICENSE`. OFoldX implementation licensing is described separately in `license.md` and `license-faq.md`. Conversion changes parameter names and native tensor layout; the upstream authors do not endorse this implementation.
- https://huggingface.co/chaitjo/gRNAde
- https://github.com/chaitjo/geometric-rna-design/blob/main/LICENSE
- https://huggingface.co/The-Institute-for-AI-Molecular-Design/ODesign