--- 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