gRNAde
Geometric RNA inverse folding with a multi-conformation GVP encoder and autoregressive nucleotide decoder.
Disclaimer
This is an unofficial OFoldX implementation of gRNAde. 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
- Method paper: gRNAde: Geometric Deep Learning for 3D RNA inverse design
- Experimental study: Generative inverse design of RNA structure and function with gRNAde
- 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
Usage
Load the concrete design Pipeline from a converted repository:
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:
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:
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
@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:
@software{chen2026ofoldx,
author = {Chen, Zhiyuan},
title = {OFoldX},
year = {2026},
url = {https://github.com/OTeam-AI4S/OFoldX},
}
Contact
Please use OFoldX GitHub 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. The inspected upstream gRNAde source is MIT-licensed.
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.