Learning Latent Protein Languages for Autoregressive Generation
Organizations: University of Missouri · University of Southern California · Independent Researcher
Abstract
Autoregressive transformers remain comparatively weak for protein sequence and structure generation. We study the role of target representation: amino acid tokens encode residue identities without explicit contextual semantics, while backbone coordinates require a discrete representation in our framework. We introduce two learned latent protein languages. Protein Latent Language (PLL) maps sequences to a 4,096-state contextual alphabet built on a frozen ESM-2 encoder, with one token per residue. Structure Latent Language (SLL) adapts GCP-VQVAE Lite with auxiliary sequence and confidence supervision while retaining decoding to backbone coordinates. We separately pretrain autoregressive transformer models on PLL and SLL tokens using next-token prediction, yielding PLLM and SLLM. Under matched downstream sequence training, PLLM has a fitted compute-scaling exponent of 0.038 versus 0.020 for the amino acid autoregressive model. In unconditional sequence generation, PLLM reduces the fraction of samples below a heuristic 1.5-bit residue-composition entropy threshold by 54% relative to the amino acid model across sampling temperatures. For sequence-to-structure prediction, replacing the original GCP-VQVAE Lite tokenizer with SLL reduces best validation perplexity by 34% under matched training. For long proteins, latent-token sampling is approximately 1,000 times faster than MSA-based AlphaFold2 in our measurements. In backbone generation, SLLM compares favorably with other generative models on diversity and novelty. We also observe early signs that using SLLM's internal token confidence for inference-time sampling can improve sequence-to-structure prediction quality beyond a single decoded sample. These results position learned latent protein languages as a promising substrate for autoregressive transformer scaling and inference-time sampling in protein generation.
Figures & tables
| Configuration | Functional AUROC (%) | Physicochemical Spearman (%) |
|---|---|---|
| Base | 58.26 | 23.93 |
| MSE + distance | 61.28 | 30.32 |
| pLDDT pre-dec. | 62.65 | 28.95 |
| Inverse folding 0.1 | 67.15 | 23.66 |
| Combined | 72.37 | 32.30 |
| Metric | FoldSeek [ 46 ] | ProTokens [ 24 ] | VanillaVQ [ 54 ] | AIDO [ 58 ] | ESM3 [ 16 ] | AminoAseed [ 54 ] | GCP-VQVAE Large [ 38 ] | GCP-VQVAE Lite [ 38 ] | GCP-VQVAE Lite 2 |
|---|---|---|---|---|---|---|---|---|---|
| Functional AUROC (%) | 51.90 | 65.37 | 68.30 | 69.38 | 69.24 | 72.43 | 61.19 (68.10, 73.57) | 61.84 (68.30, 74.93 ) | 71.32 (71.65, 78.08 ) |
| Physicochemical Spearman (%) | 7.80 | 9.84 | 33.49 | 21.81 | 37.35 | 38.08 | 16.61 (17.89, 21.37) | 20.84 (22.73, 23.89) | 29.63 ( 29.71 , 27.52) |
| Metric | GCP-VQVAE Lite 2 | GCP-VQVAE Large [ 38 ] | GCP-VQVAE Lite [ 38 ] | AIDO [ 58 ] | ESM-3 VQVAE [ 16 ] | DPLM-2 VQVAE [ 49 ] | FoldToken 4 [ 12 ] | Gaujac et al. [ 14 ] | AminoAseed [ 54 ] |
|---|---|---|---|---|---|---|---|---|---|
| Average TM-score | 0.9456 | 0.9844 | 0.9687 | 0.9470 | 0.9291 | 0.8311 | 0.8788 | 0.8394 | 0.4000 |
| Average RMSD | 1.4722 | 0.6172 | 0.9364 | 1.8189 | 2.8905 | 7.3650 | 3.0106 | 6.0002 | 18.2178 |
Appendix figures & tables25 assets
Supplementary material from the paper’s appendix.
Appendix
| Setting | Stage 1 | Stage 2 |
|---|---|---|
| Objective | , , | |
| Epochs | ||
| Maximum sequence length | ||
| Training size | M | M |
| Batch size | ( per GPU) | ( per GPU) |
| Optimizer | AdamW, weight decay 0.01, gradient clipping | Same as Stage 1 |
| Setting | Value |
|---|---|
| Active objective terms | , , , , , |
| Epochs | |
| Maximum sequence length | residues |
| Training size | M |
| Batch size | ( per GPU) |
| Precision | bfloat16 |
| Type | Tokens |
|---|---|
| Special | <PAD> , <BOS> , <EOS> , <MASK> , <UNK> |
| Amino acid | A C D E F G H I K L M N P Q R S T V W Y X |
| PLL | learned code IDs to |
| SLL | learned structure code IDs to |
| Length condition | <LEN_n> |
| Protein boundary | <BOP> , <EOP> |
| Case | Stream format |
|---|---|
| Amino acid | <BOS> A C D Y <EOS> |
| PLL | <BOS> <EOS> |
| SLL | <BOS> <EOS> |
| Amino acid length condition | <BOS> <LEN_n> A C D Y <EOS> |
| PLL length condition | <BOS> <LEN_n> <BOP> <EOP> <EOS> |
| SLL length condition | <BOS> <LEN_n> <BO3D> <EO3D> <EOS> |
| Size label | Width | Layers | Heads | KV heads | Head dim | FFN dim |
|---|---|---|---|---|---|---|
| 17.9M | ||||||
| 51.8M | ||||||
| 109.7M | ||||||
| 263.4M | ||||||
| 611.8M | ||||||
| 1.33B |
| Setting | Amino acid model and PLLM | SLLM |
|---|---|---|
| Training data | UniRef50 | AFDB UniRef50 [ 38 ] |
| Epochs | ||
| Steps per epoch | k | k |
| Total tokens seen per model | B | B |
| Batch size | ( per GPU) | ( per GPU) |
| Precision | bfloat16 | bfloat16 |
| Length | Model | pLDDT | Pair. TM | Clust. | Max TM |
|---|---|---|---|---|---|
| 100 | Native ref | 68.46 | 0.5500 | 0.7500 | – |
| 100 | ProGen2 (700M) ref | 64.00 | 0.4200 | 0.9400 | 0.6400 |
| 100 | DPLM (650M) ref | 85.38 | 0.5000 | 0.8000 | 0.7400 |
| 100 | ESM3 (1.4B) ref | 54.26 | 0.4500 | 0.9000 | 0.6800 |
| 100 | PLLM (1.3B) | 42.74 | 0.2825 | 0.9800 | 0.4189 |
| 100 | PLM (1.3B) | 64.75 | 0.3019 | 0.8400 | 0.4741 |
| Length | Model | scTM | scRMSD | TM similarity | Clust. | Max TM |
|---|---|---|---|---|---|---|
| 50 | Native ∗ | 0.91 | 0.74 | 0.29 | 0.66 | N/A |
| 50 | Genie ∗ [ 25 ] | 0.57 | 3.12 | 0.32 | 0.90 | 0.57 |
| 50 | RFdiffusion ∗ [ 50 ] | 0.95 | 0.45 | 0.58 | 0.67 | 0.65 |
| 50 | Protpardelle [ 32 ] | 0.9655 | 0.5785 | 0.7369 | 0.3200 | 0.7608 |
| 50 | ProteinGenerator [ 27 ] | 0.7984 | 1.2202 | 0.8938 | 0.1300 | 0.3468 |
| 50 | PLAID [ 30 ] | 0.8028 | 1.3188 | 0.7012 | 0.5600 | 0.6463 |
| Length | Model | scTM | scRMSD | TM similarity | Clust. | Max TM |
|---|---|---|---|---|---|---|
| 300 | Native ∗ | 0.97 | 0.82 | 0.28 | 0.77 | N/A |
| 300 | Genie ∗ [ 25 ] | 0.27 | 20.37 | 0.23 | 1.00 | 0.30 |
| 300 | RFdiffusion ∗ [ 50 ] | 0.96 | 1.03 | 0.36 | 0.65 | 0.64 |
| 300 | Protpardelle [ 32 ] | 0.9603 | 1.3968 | 0.7395 | 0.1500 | 0.8152 |
| 300 | ProteinGenerator [ 27 ] | 0.8926 | 2.0403 | 0.6409 | 0.2600 | 0.7158 |
| 300 | PLAID [ 30 ] | 0.7474 | 3.0922 | 0.5950 | 0.5700 | 0.7085 |
| Data source | Role | Approx. samples |
|---|---|---|
| UniRef50 [ 43 ] | PLL tokenizer; PLLM and amino acid generation | M |
| AFDB representatives | SLL tokenizer | M |
| AFDB UniRef50 following GCP-VQVAE [ 38 ] | SLLM generation | M |
| Residue | Accuracy (%) | Residue | Accuracy (%) | Residue | Accuracy (%) |
|---|---|---|---|---|---|
| A | I | R | |||
| C | K | S | |||
| D | L | T | |||
| E | M | V | |||
| F | N | W | |||
| G | P | Y |
| Functional AUROC (%) | Physicochemical Spearman (%) | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Configuration | BindInt | BindBio | BindShake | CatInt | CatBio | Con | Rep | Ept | Avg | RMSF | BFact | NEQ | Avg |
| Base | 56.48 | 59.36 | 71.84 | 60.02 | 54.90 | 58.21 | 54.97 | 57.10 | 58.26 | 34.66 | 22.89 | 14.26 | 23.93 |
| ESM pre-decoder | 57.91 | 61.15 | 70.00 | 61.91 | 60.18 | 63.63 | 59.07 | 54.70 | 60.47 | 35.55 | 21.90 | 16.84 | 24.76 |
| ESM post-decoder | 58.94 | 61.86 | 73.03 | 63.11 | 58.12 | 61.18 | 57.07 | 57.88 | 60.62 | 36.70 | 24.20 | 14.88 | 25.26 |
| Inverse folding 0.01 | 58.00 | 55.85 | 72.42 | 59.29 | 54.18 | 58.63 | 54.85 | 59.81 | 58.24 | 34.79 | 23.59 | 16.63 | 25.00 |
| Inverse folding 1.0 | 67.18 | 88.90 | 63.38 | 63.06 | 86.18 | 62.00 | 55.07 | 58.48 | 68.34 | 25.96 | 17.15 | 21.49 | 21.53 |
| Task | Split | FoldSeek [ 46 ] | ProTokens [ 24 ] | VanillaVQ [ 54 ] | AIDO [ 58 ] | ESM3 [ 16 ] | AminoAseed [ 54 ] | GCP-VQVAE Large [ 38 ] | GCP-VQVAE Lite [ 38 ] | GCP-VQVAE Lite 2 |
| Functional Site Prediction, AUROC (%) | ||||||||||
| BindInt | Fold | 53.18 | 44.66 | 47.25 | 44.66 | 44.30 | 47.11 | 52.61 (50.26, 52.85) | 49.43 (49.00, 55.03 ) | 52.60 ( 53.73 , 50.85) |
| SupFam | 46.20 | 86.05 | 86.71 | 84.21 | 90.77 | 90.53 | 58.04 (70.61, 80.67) | 62.27 (70.27, 80.77) | 79.59 (79.84, 93.86 ) | |
| BindBio | Fold | 52.37 | 58.47 | 62.02 | 65.50 | 62.84 | 65.73 | 75.05 (92.74, 84.01) | 80.93 ( 94.61 , 91.74) | 93.97 ( 94.28 , 87.99) |
| SupFam | 52.41 | 60.47 | 62.92 | 66.70 | 65.22 | 68.30 | 75.64 (93.40, 86.62) | 81.72 ( 94.08 , 90.08) | 93.95 ( 94.10 , 88.52) | |
| BindShake | Org | 53.40 | 59.82 | 67.04 | 69.28 | 66.10 | 69.61 | 66.97 (67.96, 72.71 ) | 66.34 (67.11, 68.08) | 70.81 (70.79, 75.75 ) |
| Dataset | Metric | GCP-VQVAE Lite 2 | GCP-VQVAE Large [ 38 ] | GCP-VQVAE Lite [ 38 ] | AIDO [ 58 ] | ESM-3 VQVAE [ 16 ] | DPLM-2 VQVAE [ 49 ] | FoldToken 4 [ 12 ] | Gaujac et al. [ 14 ] | AminoAseed [ 54 ] |
|---|---|---|---|---|---|---|---|---|---|---|
| CASP14 | TM-score | 0.9569 | 0.9890 | 0.9751 | 0.9831 | 0.9734 | 0.9056 | 0.8989 | 0.8940 | 0.3951 |
| RMSD | 1.1343 | 0.5431 | 0.8435 | 0.6587 | 1.0968 | 2.0896 | 2.0027 | 1.8913 | 14.6739 | |
| CASP15 | TM-score | 0.9390 | 0.9884 | 0.9665 | 0.9660 | 0.9418 | 0.8268 | 0.9136 | 0.7911 | 0.3831 |
| RMSD | 2.1261 | 0.5293 | 0.9219 | 0.8611 | 1.3407 | 6.3826 | 1.6856 | 8.5592 | 18.5827 | |
| CASP16 | TM-score | 0.9542 | 0.9857 | 0.9757 | 0.8805 | 0.9103 | 0.7852 | 0.8211 | 0.8345 | 0.3433 |
| RMSD | 1.5030 | 0.7567 | 1.0614 | 4.9773 | 4.4918 | 14.1934 | 5.4115 | 6.9375 | 25.9508 |
| Model | ApoHolo | FoldSwitching | ||
|---|---|---|---|---|
| PCC (%) | Spearman (%) | PCC (%) | Spearman (%) | |
| ProteinMPNN [ 8 ] | 35.80 | 45.22 | 51.46 | 55.91 |
| MIF [ 51 ] | 35.82 | 43.55 | 54.48 | 59.27 |
| FoldSeek [ 46 ] | 34.79 | 43.03 | 51.88 | 56.54 |
| ProTokens [ 24 ] | 43.32 | 54.05 | 61.20 | 65.90 |
| ESM3 [ 16 ] | 39.76 | 50.97 | 57.12 | 62.23 |