File size: 3,258 Bytes
b706f53
 
8bca270
 
 
 
 
 
 
 
b706f53
8bca270
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
---

license: mit
language:
- en
tags:
- rna
- biology
- diffusion
- generative
- sequence-design
---


# yakRNA Design: A semantic multimodal RNA composer

<p align="center">
  <img src="https://raw.githubusercontent.com/YousufAKhan/yakRNA/main/mascot.png" width="160"/>
</p>

**yakRNA Design** is a 110M-parameter discrete diffusion language model for conditional RNA sequence design. It can generate RNA sequences conditioned on any combination of secondary structure, consensus sequence, and Gene Ontology (GO) terms — or unconditionally from a target length.

---

## Model Details

| | |
|---|---|
| **Architecture** | ModernBERT-based discrete diffusion |
| **Parameters** | 110M |
| **Training data** | Full Rfam database |
| **Max sequence length** | 636 nt |
| **Supported GO terms** | 280 |

---

## Quickstart

The easiest way to use yakRNA Design is via the **[Google Colab notebook](https://colab.research.google.com/github/YousufAKhan/yakRNA/blob/main/yakRNA_colab.ipynb)** — no setup required.

For local use, see the **[GitHub repository](https://github.com/YousufAKhan/yakRNA)**.

---

## Download the Weights

**CLI:**
```bash

pip install huggingface_hub

huggingface-cli download MasterYster/yakRNA-Design yakRNA_110M.pt --local-dir checkpoints/

```

**Python:**
```python

from huggingface_hub import hf_hub_download

hf_hub_download(repo_id="MasterYster/yakRNA-Design", filename="yakRNA_110M.pt", local_dir="checkpoints/")

```

---

## Generation Modes

| Mode | Description |
|------|-------------|
| Unconditional | Generate from a target length |
| Structure-conditioned | Dot-bracket secondary structure |
| Consensus-conditioned | Mixed-case IUPAC consensus |
| GO term-conditioned | Up to 12 GO terms |
| Sequence infilling | Fixed positions + `*` masks |
| Multimodal | Any combination of the above |

---

## Example Usage

```bash

# Install

git clone https://github.com/YousufAKhan/yakRNA.git

cd yakRNA

pip install -r requirements.txt



# Generate 5 sequences conditioned on a hairpin structure

python inference/rna_sequence_generator.py \

    --config configs/inference.yaml \

    --checkpoint checkpoints/yakRNA_110M.pt \

    --secondary_structure "((((....))))" \

    --num_sequences 5



# Generate with all three modalities

python inference/rna_sequence_generator.py \

    --config configs/inference.yaml \

    --checkpoint checkpoints/yakRNA_110M.pt \

    --secondary_structure ":::::::<<<<<<<<<-:::--[[[[[-->>>>>>>>><<<<<<<<<<_________>>>->>>>>>>::::]]]]]::::" \

    --consensus "GAGUaaGGGGuuCuAGU...gcaGCcCgcCUaGaaCCCUGcgacacuGGuucuaaaaCagAugucgUuuuaAGgGCuUUUG" \

    --go_terms "GO:0075523" \

    --num_sequences 5

```

---

## Links

- **GitHub**: [YousufAKhan/yakRNA](https://github.com/YousufAKhan/yakRNA)
- **Colab**: [![Open in Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/YousufAKhan/yakRNA/blob/main/yakRNA_colab.ipynb)

---

## Citation

```bibtex

@software{yakrna2026,

  author = {Khan, Yousuf},

  title  = {yakRNA Design: A semantic multimodal RNA composer},

  year   = {2026},

  url    = {https://github.com/YousufAKhan/yakRNA}

}

```