Skip to content

PolymathicAI/MIMIC

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MIMIC

MIMIC: A Generative Multimodal Foundation Model for Biomolecules

Paper Blog License Model Dataset

MIMIC is a generative multimodal foundation model that jointly models DNA, RNA, proteins, and cellular context in one framework.

Most biological AI systems treat sequence, structure, and function as separate tasks. MIMIC instead learns a shared distribution over molecular states, enabling any-to-any inference and design across modalities.

Why This Matters

  • Biological function emerges from coupled constraints across sequence, structure, regulation, and context.
  • Single-modality models miss information that is available in complementary modalities.
  • Many high-value problems are inverse problems: generate sequences that satisfy desired structural or regulatory outcomes.

What MIMIC Does

  • Any-to-any generation: Condition on any observed subset of modalities and infer the rest.
  • Splicing prediction and design: Improves splice prediction and enables targeted sequence redesign under fixed constraints.
  • Protein design: Uses multimodal conditioning (e.g., backbone + surface context) to generate diverse high-confidence binders.
  • RNA structure support: Predicts probing-like reactivity tracks that improve downstream RNA secondary-structure inference.
  • Transfer learning: Delivers strong performance across diverse RNA and protein downstream benchmarks.

MIMIC any-to-any flow poster

Installation

MIMIC requires Python 3.10+ and installs cleanly with either pip or uv.

pip install git+https://github.com/PolymathicAI/MIMIC.git

This installs everything needed to run the full model across all modalities, including transformers (free-text / semantic-context BioBERT tokenizer) and biotite (protein-structure I/O). ESM3 VQVAE weights for structure detokenization download on first use.

The package imports as mimic — i.e. from mimic import load_pretrained.

Pretrained weights (config.json + model.safetensors) are hosted separately on the Hugging Face Hub and downloaded on demand by load_pretrained — they are not bundled in the pip package.

Quickstart

from mimic import load_pretrained

# Downloads MIMIC 1.0 weights from the Hub on first call (cached thereafter);
# device="auto" uses CUDA if available, else CPU.
model = load_pretrained(version="1.0")

# Real matched examples from LORE (raw view = modality name -> raw value).
from datasets import load_dataset
ex = load_dataset("polymathic-ai/LORE-examples", split="train")   # default config = raw
prot = next(r for r in ex if r["kind"] == "protein")              # has aa_seq + sasa
rna  = next(r for r in ex if r["kind"] == "rna")                  # has rna_seq + splice_jctns_5cls

# --- Embedding: encode a real transcript into joint representations ---
model.input([{"rna_seq": rna["rna_seq"]}])
reps = model.embed()                                # {"full": [B, N, D], "mod_ids": [B, N] per-token group ids}
# opt into more: model.embed(return_register=True, return_modality=True)

# --- Generation demo 1: protein sequence -> per-residue solvent accessibility ---
model.input([{"aa_seq": prot["aa_seq"]}])
out = model.generate("sasa")                        # default strategy = Ensemble
print(out["sasa"])                                  # per-residue SASA (float array)

# --- Generation demo 2: RNA sequence -> per-position splice-site classes ---
model.input([{"rna_seq": rna["rna_seq"]}])
out = model.generate("splice_jctns_5cls")           # RNA -> per-position splice sites
print(out["splice_jctns_5cls"])                     # one 5-class site label per position

# generate() returns the detokenized prediction by default; pass return_tokens /
# return_logits / return_probs / return_sampling_probs to also get the raw arrays
# (each value then becomes a dict with "preds" plus the requested extras).

generate also accepts strategy="one_shot" or "autoregressive" (or a mimic.strategies instance), and multiple targets at once. See docs/generation.md for the full output format and pathway gating, and src/mimic for the rest of the API.

Architecture at a Glance

  • ~1.25B parameter encoder-decoder transformer
  • Split-track multimodal representation (nucleic acid, protein, semantic context, etc.)
  • Localized positional encoding within each track
  • Register-token compression for global molecular context
  • Multi-pathway training for partially observed modality combinations
  • Curriculum scaling of context length (1k to 10k tokens)

MIMIC architecture

Benchmarks & Transfer Learning

MIMIC's learned representations transfer to RNA and protein property prediction, where a single multimodal model is competitive with or ahead of strong single-modality foundation models:

  • Protein — PFMBench (function, structure, interaction, and developability): MIMIC matches or exceeds protein-only baselines including ESM3, ESM-C, ProTrek, and SaProt, leading on at least 7 of 11 tasks — with especially strong protein–ligand binding (BindingDB, PDBbind) and the best results across all developability tasks.
  • mRNA — mRNABench (function, localization, transcriptional regulation, and variant-effect prediction): MIMIC outperforms Evo 2 and Orthrus on 4 of 7 tasks and a dilated-ResNet baseline on 6 of 7, leading overall.

Beyond property prediction, the same model supports conditioned design — e.g. identifying corrective edits for a clinically relevant HBB splice-disrupting mutation, and generating diverse, high-confidence binder sequences by jointly conditioning on backbone shape and surface chemistry (PD-L1, hACE2).

See the paper for the full benchmark tables and comparisons.

LORE Dataset (Training Backbone)

LORE aligns heterogeneous molecular data into coherent, partially observed examples with shared transcript/protein anchors.

Scale highlights:

  • 13M RNA transcripts
  • 15.5M proteins
  • 4B+ natural language tokens
  • 6000+ organisms

LORE dataset poster

A small, ready-to-run sample is released as polymathic-ai/LORE-examples — matched multimodal rows (raw + tokenized) for quickstart, embedding, and generation, with a full per-modality reference table. See the dataset card for details.

Links

Open Source Status

Citation

If you use this work, please cite:

@misc{golkar2026mimicgenerativemultimodalfoundation,
      title={MIMIC: A Generative Multimodal Foundation Model for Biomolecules}, 
      author={Siavash Golkar and Jake Kovalic and Irina Espejo Morales and Samuel Sledzieski and Minhuan Li and Ksenia Sokolova and Geraud Krawezik and Alberto Bietti and Claudia Skok Gibbs and Roman Klypa and Shengwei Xiong and Francois Lanusse and Liam Parker and Kyunghyun Cho and Miles Cranmer and Tom Hehir and Michael McCabe and Lucas Meyer and Rudy Morel and Payel Mukhopadhyay and Mariel Pettee and Helen Qu and Jeff Shen and David Fouhey and Hadi Sotoudeh and Vikram Mulligan and Pilar Cossio and Sonya M. Hanson and Alisha N. Jones and Olga G. Troyanskaya and Shirley Ho},
      year={2026},
      eprint={2604.24506},
      archivePrefix={arXiv},
      primaryClass={cs.AI},
      url={https://arxiv.org/abs/2604.24506}, 
}

License

This project is licensed under the MIT License.

About

A Generative Multimodal Model for Biomolecules

Resources

License

Stars

34 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages