Skip to main content

EasyEvo2

Python 3.11+ pypi License: MIT

A Python toolkit for easily using Evo2 models in bioinformatics workflows, particularly in HPC environments.

Description

EasyEvo2 provides a simplified interface to Evo2 foundation models for sequence embedding. It enables biologists and bioinformaticians to efficiently extract embeddings from DNA, RNA, or protein sequences without extensive deep learning expertise. It's specially designed to work well in High-Performance Computing (HPC) environments.

Installation

# Install from PyPI
pip install easyevo2

# Or install from source
git clone https://github.com/ylab-hi/EasyEvo2.git
cd EasyEvo2
pip install .

Usage

Basic Usage

# Embed sequences from a FASTA/FASTQ file using the default model (evo2_7b)
easyevo2 embed input.fa

# Specify a different model and specific layer
easyevo2 embed input.fa --model-type evo2_40b --layer-name blocks.28.mlp.l3

# Specify a different model and multiple layers
easyevo2 embed input.fa --model-type evo2_40b --layer-name blocks.28.mlp.l3 blocks.28.mlp.l2

# Save to a specific output file
easyevo2 embed input.fa --output my_embeddings

The output will be a safetensor file containing the embeddings for each sequence in the input file. We can load the embeddings using the load_tensor function:

from easyevo2.io import load_tensor

embeddings = load_tensor("my_embeddings.mode.layer.safetensors")
print(embeddings)
# Output: {
# "seq1": torch.tensor([...]),
# "seq2": torch.tensor([...]),
# }

Evo2 Memory Estimates

Model GPU Memory Usage Embedding Dimension Batch Size
Evo2 1B Base 1.5 GB 2048 1
Evo2 7B 15 GB 4096 1
Evo2 40B Base >80 GB* -- 1
Evo2 40B >80 GB* -- 1

* Estimated based on scaling from other models

Notes:

  • Longer sequences require proportionally more memory
  • H100 GPUs (80GB) can accommodate the 7B model with batch size 1 but may struggle with the 40B model

Development

This project uses a Makefile to automate common development tasks:

# Show available commands
make help

# Run tests
make test

# Lint code
make lint

# Format code
make format

# Build package
make build

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Metadata

Release files for easyevo2 0.2.0

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

Source distribution (sdist)

Source distribution for easyevo2 0.2.0
File Size Uploaded
easyevo2-0.2.0.tar.gz 86.1 kB Details

Built distribution (wheel)

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

Total release size: 107.4 kB

Release files / easyevo2-0.2.0.tar.gz

Download URL easyevo2-0.2.0.tar.gz
Size 86.1 kB
Tags Source
SHA-256 checksum
How to use checksums
6992074050e3b2d3f55fac9837b020f244bc756aedd74fcfcc15e095cbf811ac
BLAKE2b-256 checksum
How to use checksums
34aa0aee515e84de81120e7531ca3cadebb84622d5ae2a2ec2cbe3939a3c605a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.22

Release files / easyevo2-0.2.0-py3-none-any.whl

Download URL easyevo2-0.2.0-py3-none-any.whl
Size 21.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0c4065a3b9ae2edf1fe07df329ae2281b6652957c7f1123666b49c9f08e6202d
BLAKE2b-256 checksum
How to use checksums
208a8e77382210a2701af2eb96b66446a9c78f3f088f8712c5edd9968744f4b2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.22

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.21

2 release files

0.1.20

2 release files

0.1.19

2 release files

0.1.18

2 release files

0.1.17

2 release files

0.1.16

2 release files

0.1.15

2 release files

0.1.14

2 release files

0.1.13

2 release files

0.1.12

2 release files

0.1.11

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.1

2 release files

0.1.0

2 release files

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