Instructions to use InstaDeepAI/NTv3_pretrained with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use InstaDeepAI/NTv3_pretrained with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("feature-extraction", model="InstaDeepAI/NTv3_pretrained", trust_remote_code=True)# pip install -U transformers accelerate # Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("InstaDeepAI/NTv3_pretrained", trust_remote_code=True, device_map="auto") - Notebooks
- Google Colab
- Kaggle
|
Download README.md from InstaDeepAI/NTv3_pretrained: direct link, hf CLI and curl.
- Browser
- Download file 7.81 kB
-
https://huggingface.co/InstaDeepAI/NTv3_pretrained/resolve/refs%2Fpr%2F7/README.md
- Command line
-
hf download hf://InstaDeepAI/NTv3_pretrained@refs/pr/7/README.md
-
curl -L -H "Authorization: Bearer $HF_TOKEN" -o README.md https://huggingface.co/InstaDeepAI/NTv3_pretrained/resolve/refs%2Fpr%2F7/README.md
7.81 kB
| library_name: transformers | |
| tags: | |
| - genomics | |
| - dna | |
| - biology | |
| - ntv3 | |
| - long-range | |
| license: other | |
| license_name: instadeep-open-model-licence | |
| license_link: https://huggingface.co/InstaDeepAI/NTv3_pretrained/blob/main/MODEL-LICENSE.md | |
| extra_gated_heading: Request access to the NTv3 models | |
| extra_gated_description: >- | |
| One approval grants access to every gated NTv3 model. Requests are reviewed | |
| manually. | |
| extra_gated_prompt: >- | |
| The NTv3 weights are released under the | |
| [InstaDeep Open Model Licence](https://huggingface.co/InstaDeepAI/NTv3_pretrained/blob/main/MODEL-LICENSE.md) for non-commercial use only, and its terms | |
| also cover the models' outputs. For commercial use, contact legal@instadeep.com. | |
| extra_gated_fields: | |
| Full name: text | |
| Affiliation: text | |
| Institutional email: text | |
| Organisation type: | |
| type: select | |
| options: | |
| - University | |
| - Public research institute | |
| - Non-profit | |
| - Hospital | |
| - Company | |
| - Other | |
| Country: country | |
| Intended use: text | |
| I will use NTv3 and its outputs for non-commercial purposes only, under the InstaDeep Open Model Licence: checkbox | |
| extra_gated_button_content: Request access | |
| # NTv3 pretrained | |
| The pretrained backbone of Nucleotide Transformer v3 (NTv3): a genomic foundation model | |
| that reads DNA at single-base resolution across long context windows. Use it for | |
| sequence embeddings, for masked-token prediction, and as the starting point for your own | |
| fine-tuning. | |
| This checkpoint is the backbone the other NTv3 capabilities are built on. The | |
| task-adapted models — functional-track prediction and gene annotation — start from these | |
| weights and resolve their modelling code from this repository. | |
| ## Architecture | |
| A U-Net around a transformer bottleneck. A convolutional tower reads the sequence and | |
| downsamples it by 128, a transformer tower carries long-range context at that reduced | |
| resolution, and a deconvolutional tower returns predictions at base resolution, with | |
| skip connections from the encoder at every scale. | |
| The transformer uses grouped-query attention with per-head query, key and value | |
| normalisation, rotary position embeddings on a frequency schedule chosen for genomic | |
| distances, and a GeGLU feed-forward block. | |
| | | | | |
| | --- | --- | | |
| | Parameters | 703,349,146 | | |
| | Resolution | 1 bp | | |
| | Input length | any multiple of 128 | | |
| | Vocabulary | 11 tokens | | |
| | Precision | float32 | | |
| ## Usage | |
| ```python | |
| import torch | |
| from transformers import AutoModelForMaskedLM, AutoTokenizer | |
| repo = "InstaDeepAI/NTv3_pretrained" | |
| model = AutoModelForMaskedLM.from_pretrained(repo, trust_remote_code=True).eval() | |
| tokenizer = AutoTokenizer.from_pretrained(repo, trust_remote_code=True) | |
| # The input length must be a multiple of 128. | |
| sequence = "ACGT" * 256 | |
| # add_special_tokens=False: the model reads a genomic window, so one base is one | |
| # token and nothing is prepended. | |
| batch = tokenizer([sequence], return_tensors="pt", add_special_tokens=False) | |
| with torch.no_grad(): | |
| out = model(**batch) | |
| out.embedding.shape # (1, 1024, 1024) one vector per base | |
| out.logits.shape # (1, 1024, 11) masked-token prediction | |
| ``` | |
| `AutoModel` works too, and outputs are reachable both as attributes | |
| (`out.logits`) and as keys (`out["logits"]`). | |
| `trust_remote_code=True` is required because the modelling code ships with the | |
| repository rather than in `transformers`. | |
| An `attention_mask` is accepted and **ignored**: the model derives its own mask | |
| from the pad token at the resolution of its 128 bp blocks, so a per-token mask | |
| has nowhere to apply. Pad with the pad token rather than masking. | |
| ### Outputs | |
| | Key | Shape | What it is | | |
| | --- | --- | --- | | |
| | `embedding` | `(batch, length, 1024)` | Decoder output, one vector per base | | |
| | `logits` | `(batch, length, 11)` | Masked-token prediction over the vocabulary | | |
| | `after_transformer_embedding` | `(batch, length / 128, 2048)` | Trunk output, one vector per 128 bp block | | |
| | `before_transformer_embedding` | `(batch, length / 128, 2048)` | Encoder output, before the transformer | | |
| Use `skip_lm_head=True` to skip the language-modelling head when you only need | |
| embeddings. | |
| ## Input requirements | |
| **Two constraints, both of which fail quietly rather than loudly.** | |
| **Length must be a multiple of 128.** That is the total downsampling factor of the | |
| trunk. Pad or crop your window before calling the model. | |
| **The alphabet is uppercase.** This checkpoint's vocabulary is `A C G T N` plus the | |
| special tokens; lowercase is not in it. Most reference assemblies are distributed | |
| soft-masked, with repeat regions in lowercase, and feeding one straight in turns nearly | |
| every base into `<unk>`. The model will still return numbers. Upper-case your sequence | |
| first, or use `InstaDeepAI/NTv3_tracks`, which reads a 16-symbol soft-masked alphabet. | |
| Characters outside the vocabulary become `<unk>` and the sequence keeps its length. | |
| ## Intended use | |
| Embeddings and masked-token prediction on genomic DNA, and fine-tuning on your own | |
| task. The model was pretrained across a broad panel of species, so it is not specific to | |
| one genome. | |
| ## Out of scope | |
| Not a clinical or diagnostic tool, and not validated for variant interpretation in a | |
| medical setting. Not designed for RNA, protein, or non-genomic sequence. Predictions on | |
| sequence unlike anything in the pretraining distribution — synthetic constructs, | |
| assemblies from very distant clades — should be treated as unvalidated rather than as | |
| evidence. | |
| ## Limitations | |
| The model sees sequence only. It has no access to cell type, developmental stage, | |
| experimental condition, or any annotation, so nothing it outputs is conditioned on that | |
| context. | |
| Masked-token prediction reflects the statistics of the training genomes. High confidence | |
| on a masked base means the surrounding sequence is predictive, not that the base is | |
| functionally important. | |
| Accuracy varies by species and by genomic region, and is not uniform across the genome. | |
| Repetitive and low-complexity regions are harder, and this checkpoint cannot see the | |
| soft-masking that would tell it where they are. | |
| ## Related models | |
| | Model | For | | |
| | --- | --- | | |
| | [`NTv3_tracks`](https://huggingface.co/InstaDeepAI/NTv3_tracks) | Functional-track prediction, species-conditioned, from 16 kb to 1 Mb inputs | | |
| | [`NTv3_tracks_1mb`](https://huggingface.co/InstaDeepAI/NTv3_tracks_1mb) | The same tracks from 1 Mb inputs only: the specialist behind the NTv3 paper's main results | | |
| | NTv3_annot: [`_mammals`](https://huggingface.co/InstaDeepAI/NTv3_annot_mammals) / [`_plants`](https://huggingface.co/InstaDeepAI/NTv3_annot_plants) / [`_insects`](https://huggingface.co/InstaDeepAI/NTv3_annot_insects) | Ab initio gene annotation, one model per clade | | |
| ## Licence | |
| Released under the [InstaDeep Open Model Licence](https://huggingface.co/InstaDeepAI/NTv3_pretrained/blob/main/MODEL-LICENSE.md). The licence restricts **output** as | |
| well as weights, so predictions made with this model carry the same terms. Read it | |
| before building on the model commercially. | |
| ## Citation | |
| ```bibtex | |
| @article{ntv3, | |
| title = {A multispecies foundation model for genome function prediction, gene annotation and sequence design}, | |
| author = {Boshar, Sam and Evans, Benjamin and Tang, Ziqi and Adel, Yanis and Bornachot, Yohan and Sidbon, Shawn and Lorbeer, Franziska K. and Picard, Armand and Rajesh, Chandana and Seitz, Evan and Emms, David and Mendoza-Revilla, Javier and Hernandez, Ariana and Al-Ani, Fatimah and Karch, Tristan and Schiff, Yair and Lopez, Marie and Laterre, Alexandre and Beguir, Karim and Koo, Peter and Kuleshov, Volodymyr and Stark, Alexander and de Almeida, Bernardo P. and Pierrot, Thomas}, | |
| journal = {bioRxiv}, | |
| year = {2026}, | |
| doi = {10.64898/2025.12.22.695963}, | |
| url = {https://www.biorxiv.org/content/10.64898/2025.12.22.695963} | |
| } | |
| ``` | |