Model reference · open weights

Evo2

Available as managed deployment LLMs Aquiles-ai Text gen 2 variants 892 dl/mo

Evo2 is an open-weight language model from Aquiles-ai. AxForge deploys and operates it for you on dedicated EU-owned hardware — with the licence handled where one is required.

Available as managed deployment — configured and operated for you on dedicated EU hardware, quoted per deployment.

What it is

Released byAquiles-ai
TypeLanguage models
TaskText gen
Parameters (lead)1.1B
Context8k tokens
Runs withtransformers
Released2026-09-14
Popularity892 downloads / month
LicenceOpen weights

About

What Evo2 is

Unofficial Transformers port of the official Evo 2 1B base checkpoint (evo2_1b_base). All model, data, and research credit goes to the Evo 2 team at Arc Institute and collaborators. Original project: https://github.com/ArcInstitute/evo2

Weights here were converted from the official Vortex checkpoint with no retraining. The architecture is reimplemented in plain PyTorch so the model loads through AutoModelForCausalLM without Vortex, Transformer Engine, or custom kernels. Conversion code: https://github.com/Aquiles-ai/Evo2-transformers

Read the full model card

Model details

Evo 2 models DNA at single nucleotide resolution with a byte level tokenizer (vocab 512, one token per nucleotide). This variant mixes Hyena convolutions (short, medium, and implicit long filters) with grouped query attention plus RoPE.

ItemValue
Parameters1B
Layers25 (4 attention, 21 Hyena)
Hidden size1920
Attention heads15
MLP size5120
Context length8,192 tokens
TokenizerByte level, vocab 512
Weight dtypebf16, with poles, residues, and RoPE buffers in fp32

Usage

Requires trust_remote_code=True (modeling files are vendored in this repo).

from transformers import AutoModelForCausalLM, AutoTokenizer

tok = AutoTokenizer.from_pretrained("Aquiles-ai/Evo2-1B-Base", trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained("Aquiles-ai/Evo2-1B-Base", trust_remote_code=True)
model.eval()

Score a sequence:

import torch

ids = torch.tensor([tok.vortex_tokenize("ACGT")])
with torch.inference_mode():
    out = model(ids)
print(out.logits.shape)

Generate:

import torch

ids = torch.tensor([tok.vortex_tokenize("ACGT")])
with torch.inference_mode():
    gen = model.generate(ids, max_new_tokens=400, do_sample=True,
                         temperature=1.0, top_k=4, use_cache=True)
print(tok.vortex_detokenize(gen[0].tolist()))

generate uses the decoding cache by default (needs transformers>=5). With use_cache=False it recomputes the full prefix at each step, which is slow past a few hundred tokens.

Limitations

This port is less efficient than the original Vortex implementation. It has no FlashAttention, no FP8 path, and no fused kernels. Generation uses a decoding cache (needs transformers>=5); with use_cache=False it recomputes the full prefix at each step and runs slowly past a few hundred tokens. For large scale inference, use the original stack or NVIDIA NIM.

Evaluation

No new evaluation was run for this upload. For reference, the original paper reports 64.9 mean amino acid recovery for the 1B base model on the prokaryote gene completion panel (50 generations per gene). The port repo includes a script that reproduces that panel: https://github.com/Aquiles-ai/Evo2-transformers

Citation

@article{Brixi2026,
  author  = {Brixi, Garyk and Durrant, Matthew G. and Ku, Jerome and Naghipourfar, Mohsen and Poli, Michael and Sun, Gwanggyu and Brockman, Greg and Chang, Daniel and Fanton, Alison and Gonzalez, Gabriel A. and King, Samuel H. and Li, David B. and Merchant, Aditi T. and Nguyen, Eric and Ricci-Tam, Chiara and Romero, David W. and Schmok, Jonathan C. and Taghibakhshi, Ali and Vorontsov, Anton and Yang, Brandon and Deng, Myra and Gorton, Liv and Nguyen, Nam and Wang, Nicholas K. and Pearce, Michael T. and Simon, Elana and Adams, Etowah and Amador, Zachary J. and Ashley, Euan A. and Baccus, Stephen A. and Dai, Haoyu and Dillmann, Steven and Ermon, Stefano and Guo, Daniel and Herschl, Michael H. and Ilango, Rajesh and Janik, Ken and Lu, Amy X. and Mehta, Reshma and Mofrad, Mohammad R. K. and Ng, Madelena Y. and Pannu, Jaspreet and R{\'e}, Christopher and St. John, John and Sullivan, Jeremy and Tey, Joseph and Viggiano, Ben and Zhu, Kevin and Zynda, Greg and Balsam, Daniel and Collison, Patrick and Costa, Anthony B. and Hernandez-Boussard, Tina and Ho, Eric and Liu, Ming-Yu and McGrath, Thomas and Powell, Kimberly and Pinglay, Sudarshan and Burke, Dave P. and Goodarzi, Hani and Hsu, Patrick D. and Hie, Brian L.},
  title   = {Genome modelling and design across all domains of life with Evo 2},
  journal = {Nature},
  year    = {2026},
  doi     = {10.1038/s41586-026-10176-5},
  url     = {https://doi.org/10.1038/s41586-026-10176-5}
}

License

Apache-2.0. Original Evo 2 weights and code remain property of their owners under their original terms.

From the published model card. Full card on the HuggingFace links in the sidebar.

Using it via the API

Call it like any OpenAI endpoint

Once AxForge deploys evo2 for you, it answers on the OpenAI-compatible API — the same base URL and keys as every other model. (evo2 below is illustrative; you get the exact model name on deployment.)

$ curl -sS https://api.axforge.ai/v1/chat/completions \
  -H "Authorization: Bearer $AXFORGE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"evo2","messages":[{"role":"user","content":"Hello"}]}'

Create an account — your API key is available in the console. 3M free tokens every 30 days with every new account.

© 2026 AxForge · EU-hosted AI infrastructure Pricing Docs Trust Privacy Terms