You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+37-25Lines changed: 37 additions & 25 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -13,13 +13,13 @@ We describe Evo 2 in the preprint:
13
13
-[Requirements](#requirements)
14
14
-[Installation](#installation)
15
15
-[Docker](#docker)
16
-
-[Checkpoints](#checkpoints)
17
16
-[Usage](#usage)
17
+
-[Checkpoints](#checkpoints)
18
18
-[Forward](#forward)
19
19
-[Embeddings](#embeddings)
20
20
-[Generation](#generation)
21
-
-[Notebooks](#notebooks)
22
-
-[Nvidia NIM](#nvidia-nim)
21
+
-[Notebooks](#notebooks)
22
+
-[Nvidia NIM](#nvidia-nim)
23
23
-[Dataset](#dataset)
24
24
-[Training and Finetuning](#training-and-finetuning)
25
25
-[Citation](#citation)
@@ -41,13 +41,15 @@ Evo 2 is built on the Vortex inference repo, see the [Vortex github](https://git
41
41
42
42
**System requirements**
43
43
-[OS] Linux (official) or WSL2 (limited support)
44
-
-[GPU] Requires Compute Capability 8.9+ (Ada/Hopper/Blackwell) due to FP8 being required
44
+
-[GPU] Requires Compute Capability 8.9+ (Ada/Hopper) for FP8 support
45
45
-[Software]
46
-
- CUDA: 12.1+ (12.8+ for Blackwell) with compatible NVIDIA drivers
46
+
- CUDA: 12.1+ with compatible NVIDIA drivers
47
47
- cuDNN: 9.3+
48
48
- Compiler: GCC 9+ or Clang 10+ with C++17 support
49
49
- Python 3.12 required
50
-
50
+
51
+
**FP8 requirements:** The 40B and 1B models require FP8 for numerical accuracy, and low accuracy has been reported on Blackwell hardware or without FP8. The 7B models can run without FP8 by modifying the config. Always validate model outputs after configuration changes or on different hardware by using the tests.
52
+
51
53
Check respective githubs for more details about [Transformer Engine](https://github.com/NVIDIA/TransformerEngine) and [Flash Attention](https://github.com/Dao-AILab/flash-attention/tree/main) and how to install them.
52
54
We recommend using conda to easily install Transformer Engine. Here is an example of how to install the prerequisites:
53
55
```bash
@@ -78,6 +80,11 @@ To verify that the installation was correct:
|`evo2_40b`|A model pretrained with 1 million context obtained through context extension of `evo2_40b_base`.|
103
-
|`evo2_7b`|A model pretrained with 1 million context obtained through context extension of `evo2_7b_base`.|
104
-
|`evo2_40b_base`|A model pretrained with 8192 context length.|
105
-
|`evo2_7b_base`|A model pretrained with 8192 context length.|
106
-
|`evo2_1b_base`|A smaller model pretrained with 8192 context length.|
111
+
|`evo2_7b`|7B parameter model with 1M context |
112
+
|`evo2_40b`|40B parameter model with 1M context (requires multiple GPUs) |
113
+
|`evo2_7b_base`|7B parameter model with 8K context |
114
+
|`evo2_40b_base`|40B parameter model with 8K context |
115
+
|`evo2_1b_base`|Smaller 1B parameter model with 8K context |
107
116
108
-
To use Evo 2 40B, you will need multiple GPUs. Vortex automatically handles device placement, splitting the model across available cuda devices.
109
-
110
-
Note that the 7B checkpoints can be run without FP8, thus avoiding the compute capability requirement. This can be done by modifying the configs to turn off FP8 and is not officially supported as there are numerical differences.
111
-
112
-
## Usage
113
-
114
-
Below are simple examples of how to download Evo 2 and use it locally in Python.
117
+
**Note:** The 40B model requires multiple GPUs. Vortex automatically handles device placement, splitting the model across available CUDA devices.
The [BRCA1 notebook](https://github.com/ArcInstitute/evo2/blob/main/notebooks/brca1/brca1_zero_shot_vep.ipynb) shows zero-shot *BRCA1* variant effect prediction. This example includes a walkthrough of:
183
+
The [BRCA1 scoring notebook](https://github.com/ArcInstitute/evo2/blob/main/notebooks/brca1/brca1_zero_shot_vep.ipynb) shows zero-shot *BRCA1* variant effect prediction. This example includes a walkthrough of:
181
184
- Performing zero-shot *BRCA1* variant effect predictions using Evo 2
182
185
- Reference vs alternative allele normalization
183
186
184
187
The [generation notebook](https://github.com/ArcInstitute/evo2/blob/main/notebooks/generation/generation_notebook.ipynb) shows DNA sequence completion with Evo 2. This example shows:
185
188
- DNA prompt based generation and 'DNA autocompletion'
186
189
- How to get and prompt using phylogenetic species tags for generation
187
190
188
-
### Nvidia NIM
191
+
The [exon classifier notebook](https://github.com/ArcInstitute/evo2/blob/main/notebooks/exon_classifier/exon_classifier.ipynb) demonstrates exon classification using Evo 2 embeddings. This example shows:
192
+
- Running the Evo 2 based exon classifier
193
+
- Performance metrics and visualization
194
+
195
+
The [sparse autoencoder (SAE) notebook](https://github.com/ArcInstitute/evo2/blob/main/notebooks/sparse_autoencoder/sparse_autoencoder.ipynb) explores interpretable features learned by Evo 2. This example includes:
196
+
- Running and visualizing Evo 2 SAE features
197
+
- Demonstrating SAE features on a part of the *E. coli* genome
198
+
199
+
200
+
## Nvidia NIM
189
201
190
202
Evo 2 is available on [Nvidia NIM](https://catalog.ngc.nvidia.com/containers?filters=&orderBy=scoreDESC&query=evo2&page=&pageSize=) and [hosted API](https://build.nvidia.com/arc/evo2-40b).
191
203
@@ -227,13 +239,13 @@ else:
227
239
228
240
### Very long sequences
229
241
230
-
You can use [Savanna](https://github.com/Zymrael/savanna) or [Nvidia BioNemo](https://github.com/NVIDIA/bionemo-framework) for embedding long sequences. Vortex can currently compute over very long sequences via teacher prompting, however please note that forward pass on long sequences may currently be slow.
242
+
You can use [Savanna](https://github.com/Zymrael/savanna) or [Nvidia BioNemo](https://github.com/NVIDIA/bionemo-framework) for embedding long sequences. Vortex can currently compute over very long sequences via teacher prompting, however please note that forward pass on long sequences may currently be slow.
231
243
232
-
###Dataset
244
+
## Dataset
233
245
234
246
The OpenGenome2 dataset used for pretraining Evo2 is available on [HuggingFace ](https://huggingface.co/datasets/arcinstitute/opengenome2). Data is available either as raw fastas or as JSONL files which include preprocessing and data augmentation.
235
247
236
-
###Training and Finetuning
248
+
## Training and Finetuning
237
249
238
250
Evo 2 was trained using [Savanna](https://github.com/Zymrael/savanna), an open source framework for training alternative architectures.
0 commit comments