Skip to main content

evedesign: unified framework for accessible biosequence design

PyPI - Version PyPI - Python Version


evedesign logo

What is evedesign?

evedesign is a unified open-source framework for biosequence design that formalizes conditional design problems in a method-agnostic way. The framework allows users to seamlessly build and execute complex multiobjective design workflows, including supervised and unsupervised models, from a standardized set of specifications and operations. An interactive web-based user interface facilitates end-to-end biomolecular design for a broad scientific audience and is publicly available at https://evedesign.bio.

This repository implements the core interfaces for standardizing the interaction with biomolecular models, generation of nucleotide sequences, and many other utility functions for structure handling, sequence space embeddings, etc.

Please also check evedesign-server for automated pipeline execution from declarative design specifications and the REST API, as well as evedesign-ui for the interactive user interface.

Publication

Hopf TA, Gazizov A, Garcia Busto S, Eschbach E, Lee S, Mirdita M, Orenbuch R, Belahsen K, Ross D, Sander C, Steinegger M, d'Oelsnitz S, Marks D. evedesign: accessible biosequence design with a unified framework. bioRxiv (2026) doi:10.64898/2026.03.17.712115

Installation

Use the following command to install evedesign with support for all currently implemented models. You can remove any of the options if you do not need the respective model. Please see specific instructions for Boltz-2 further below.

pip install evedesign[evmutation2,esm2,mpnn,umap,gpytorch,eve,promb] 

Boltz2 installation

For structure predictions with Boltz-2 and CUDA, install the boltz2fold-cuda extra with uv:

uv pip install evedesign[boltz2fold-cuda]

PyPI's default torch ships with CUDA support (tested on a CUDA 13 build, which runs on CUDA 12.x+ drivers via forward compatibility). If you need a specific CUDA build to match an older driver, you might explore adding the matching PyTorch index, e.g.:

    uv pip install evedesign[boltz2fold-cuda] \
        --extra-index-url https://download.pytorch.org/whl/cu126 \
        --index-strategy unsafe-best-match

uv is required for this install path: boltz and its dependencies ship overly-conservative version pins that are overridden in [tool.uv] in pyproject.toml, and pip does not honor those overrides.

CPU/MPS-based

For CPU/MPS-only use (no CUDA), install the boltz2fold extra instead of boltz2fold-cuda.

BoltzGen installation

For de novo structure generation with BoltzGen (CUDA 12 only — there is no CPU or macOS path):

uv pip install evedesign[boltzgen]

The extra is only needed to install BoltzGen alongside evedesign. evedesign invokes the boltzgen CLI as a subprocess, so if you already have it in a separate environment, skip the extra and point at that executable:

BoltzGenGenerator(binary="/path/to/other/env/bin/boltzgen")

uv is required if you want BoltzGen and Boltz-2 in the same environment: BoltzGen pins numpy==2.0.2 and numba==0.61.0, which conflict with Boltz-2's requirements and are overridden in [tool.uv] in pyproject.toml. pip does not honor those overrides.

Getting started

Please refer to some of our examples how to use evedesign. We are continuously extending these as new models are added to the framework.

To implement your own models in the framework, please have a look at our existing reference implementations (e.g. EVmutation2, ESM-2, ProteinMPNN, Gibbs sampler) as well as the underlying model interfaces and description of molecular systems and instances.

We are happy to help if you have any questions!

Currently available models and methods

Biomolecular models, embedders and restraints

Note that most methods listed as Scorer also support the MutationScorer and ConditionalMutationScorer interfaces.

Name Class Interfaces
EVmutation2 evedesign.models.evmutation2.EVmutation2 Generator, Scorer, Transformer
LigandMPNN/ProteinMPNN evedesign.models.mpnn.LigandMPNN Generator, Scorer
ESM-2 evedesign.models.esm2.ESM2 Transformer Scorer
Boltz-2 evedesign.models.boltzfold.BoltzFoldTransformer Transformer, Scorer
BoltzGen evedesign.models.boltzgen.BoltzGenGenerator Generator
EVcouplings evedesign.models.evcouplings.EVcouplings Scorer
EVE evedesign.models.eve.EVE Scorer
MixMHC2pred evedesign.models.immunogenicity.MixMHC2Pred Scorer
promb/OASis humanness evedesign.models.oasis_humanness.OASisHumanness Scorer
One-hot encoding embedder evedesign.models.embedders.OneHotEmbedder Transformer
BLOSUM embedder evedesign.models.embedders.BLOSUMEmbedder Transformer
Sequence distance restraint evedesign.restraints.seq_dist.LinearSeqDistRestraint Scorer
Exposed sequence motifs evedesign.restraints.motif.ExposedMotifRestraint Scorer
Isoelectric point restraint evedesign.restraints.physicochemical.IsoelectricPointRestraint Scorer
Molecular weight restraint evedesign.restraints.physicochemical.MolecularWeightRestraint Scorer

Supervised models

Name Class Interfaces
Scikit-learn regressors/classifiers evedesign.models.supervised.SklearnPredictorOnEmbeddingsScores Scorer
Gaussian Process regression evedesign.models.supervised.GpytorchModel Scorer

Samplers

Name Class Interfaces
Gibbs sampler evedesign.samplers.gibbs.GibbsSampler Generator

Analyzers

Name Class Interfaces
UMAP sequence space projection evedesign.analyzers.sequence_space.SequenceSpaceUMAP Analyzer
MDS sequence space projection evedesign.analyzers.sequence_space.SequenceSpaceMDS Analyzer
Landmark MDS sequence space projection evedesign.analyzers.sequence_space.SequenceSpaceLandmarkMDS Analyzer
PCA sequence space projection evedesign.analyzers.sequence_space.SequenceSpacePCA Analyzer

Nucleotide sequence generation

Name Class Interfaces
DNA Chisel codon optimization evedesign.codons.DNAChiselCodonOptimizer ProteinToDnaOptimizer

Roadmap and contributing

We plan to continuously add more models, restraints, oracles and samplers to the framework, e.g. de novo 3D structure generation with BindCraft.

We are actively looking for further contributors to develop our framework jointly with the community. If you are interested or feel like an important model is missing from the framework, please get in contact with us!

License

evedesign is released under the MIT license.

Contact

For general questions or inquiries about evedesign please reach out to hello@evedesign.bio.

Metadata

Release files for evedesign 0.0.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for evedesign 0.0.6
File Size Uploaded Provenance Actions
evedesign-0.0.6.tar.gz 202.2 kB Without provenance Details for evedesign-0.0.6.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for evedesign 0.0.6
File Interpreter ABI Platform Actions
evedesign-0.0.6-py3-none-any.whl Python 3 none any Details for evedesign-0.0.6-py3-none-any.whl

Total release size: 435.4 kB

Release files / evedesign-0.0.6.tar.gz

Download URL evedesign-0.0.6.tar.gz
Size 202.2 kB
Tags Source
SHA-256 checksum
How to use checksums
ecb03c1844f829d59825fee72df98897b57763f9fdeb77cded8f940a1e8aa602
BLAKE2b-256 checksum
How to use checksums
ab062054975f42000621f76b47d3821357e255f366d1d8ab39f69cc68e150952
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / evedesign-0.0.6-py3-none-any.whl

Download URL evedesign-0.0.6-py3-none-any.whl
Size 233.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
880085cbf7d15f90e63c24f8d83d3c56939e902577f5398fee4dd49bd7986959
BLAKE2b-256 checksum
How to use checksums
23b48ea47edd50672e74993639b9ed666d2b98822905ac8ebdda1d47c91d2a0d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Security for evedesign 0.0.6

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page