Evo-IF
Evo-IF is a development checkpoint and remains under training and optimization. Current 30-step sequence-recovery scores for the bundled checkpoint are DAS 79.19%, DNA overall 59.91%, and CATH 4.2 (short chain protein-backbone) 37.13%.
adapter.pt contains the Evo-IF bridge, and naiad_evo_if.pt contains its matched inverse-folding weights.
infer.py uses script/inference_utils.py, which bundles the inverse-folding model, structure featurization, checkpoint loading, and iterative sampler.
Install
The reference environment is Linux, Python 3.11, CUDA 12.8, PyTorch 2.7.1, and FlashAttention 2.8.0.post2. Install the CUDA build of PyTorch and FlashAttention first, then install the remaining pinned direct dependencies:
python -m pip install torch==2.7.1 --index-url https://download.pytorch.org/whl/cu128
python -m pip install flash-attn==2.8.0.post2 --no-build-isolation
python -m pip install -r requirements.txt
Download and verify the exact arcinstitute/evo2_7b base-model checkpoint with:
hf download arcinstitute/evo2_7b evo2_7b.pt \
--revision bda0089f92582d5baabf0f22d9fc85f3588f6b58 \
--local-dir checkpoints
echo "c66645929dc1b9c631f5be656da8726f38946315dc9167000a615dd626fcecf4 checkpoints/evo2_7b.pt" \
| sha256sum --check
Inverse folding
python infer.py inverse-fold \
--structure input.cif \
--evo2-checkpoint checkpoints/evo2_7b.pt \
--design-mode na \
--num-steps 30 \
--num-samples 1 \
--output designs.json \
--output-fasta designs.fa
Input may be PDB, PDB.gz, mmCIF, or mmCIF.gz.
mmCIF uses its first declared biological assembly;
a PDB file is treated as already assembled coordinates, so prefer mmCIF or provide the intended PDB assembly.
For Evo2-conditioned inputs, provide the verified checkpoint above with --evo2-checkpoint checkpoints/evo2_7b.pt.
For Evo2 conditioning, only nucleic-acid residues are serialized. Multiple nucleic-acid chains are concatenated in assembly order without chain separators,
and RNA U is mapped to T before Evo2 tokenization. Chain identities and DNA/RNA types remain present in the structure model; RNA designs are written with U in the final output.
Evo2 commands
python infer.py forward --evo2-checkpoint checkpoints/evo2_7b.pt --sequence ACGTACGT --output logits.pt
python infer.py embed --evo2-checkpoint checkpoints/evo2_7b.pt --fasta sequences.fa --output embeddings.pt
python infer.py score --evo2-checkpoint checkpoints/evo2_7b.pt --fasta sequences.fa --output scores.json
python infer.py generate --evo2-checkpoint checkpoints/evo2_7b.pt --prompt ACGTACGT --n-tokens 400 --output generated.json
This repository, including its NAIAD runtime, is GPL-3.0. The external Evo2 runtime is Apache-2.0; external Evo2 weights are not included and remain subject to their upstream distribution terms. Parts of the inverse-folding implementation are adapted from ProteinMPNN, which is released under the MIT License.
Model tree for StarLiu714/Evo-IF
Base model
arcinstitute/evo2_7b