Views
No views yet
| Change | Details |
|---|---|
| IMGVR5 UViG dataset | Added ~2.7M uncultivated viral genomes from IMG/MetaVR |
| Expanded dataset | Includes GTDB r226 representative genomes, INPHARED phage genomes, and the Zenodo RNA virus database |
| Scaffold gap handling | Consecutive Ns (>=10) are collapsed to ceil(log2(N)) [MASK] tokens with loss masking, allowing the model to bridge gaps without being trained to generate them |
[CLS] domain tag | Viral/phage sequences are prefixed with [CLS] to signal sequence type to the model |
[SEP] genome boundaries | [SEP] token inserted between genome records during the packing step |
| IUPAC resolution | Ambiguity codes (R, Y, S, W, K, M, B, D, H, V) resolved by random sampling |
| Long-context training | Trained with a 10,240-token packing block size (~50 kbp genomic context) |
DOEJGI/GenomeOcean-4Bcheckpoint-841971import torch
2from transformers import AutoModelForCausalLM, AutoTokenizer
3
4tokenizer = AutoTokenizer.from_pretrained(
5 "DOEJGI/GenomeOcean-4B-v1.2",
6 trust_remote_code=True,
7 padding_side="left",
8)
9model = AutoModelForCausalLM.from_pretrained(
10 "DOEJGI/GenomeOcean-4B-v1.2",
11 trust_remote_code=True,
12 torch_dtype=torch.bfloat16,
13).to("cuda")
14
15sequence = "ATGCGATCGATCGATCGATCG"
16inputs = tokenizer(sequence, return_tensors="pt").to("cuda")
17outputs = model.generate(**inputs, max_new_tokens=100, do_sample=True, temperature=0.8)
18print(tokenizer.decode(outputs[0], skip_special_tokens=True))| Dataset | Type | Source |
|---|---|---|
| Antarctic, GRE, Harvard Forest, Mendota, NEON, Oilcane, Tara, HMP2 | Metagenomic assembly | Internal |
| GTDB r226 representative genomes | Bacterial/Archaeal genomic DNA | https://gtdb.ecogenomic.org/ |
| INPHARED phage genomes (Apr 2025) | Phage/bacteriophage DNA | https://github.com/RyanCook94/inphared |
| Zenodo RNA virus database | RNA virus genomes | https://zenodo.org/records/10989253 |
| IMGVR5 UViG | Uncultivated viral genomes | https://www.meta-virome.org/ |
[CLS]: prepended to viral/phage/RNA chunks to act as a domain tag[SEP]: inserted at genome boundaries during packing[MASK]: used to represent collapsed N-gaps in scaffold sequences[UNK]: should not appear in clean data; IUPAC ambiguity codes are resolved before tokenization1@article{zhou2025genomeocean,
2 title={GenomeOcean: An Efficient Genome Foundation Model Trained on Large-Scale Metagenomic Assemblies},
3 author={Zhou, Zhihan and Riley, Robert and Kautsar, Satria and Wu, Weimin and Egan, Rob
4 and Hofmeyr, Steven and Goldhaber-Gordon, Shira and Yu, Mutian and Ho, Harrison
5 and Liu, Fengchen and others},
6 journal={bioRxiv},
7 pages={2025--01},
8 year={2025},
9 publisher={Cold Spring Harbor Laboratory}
10}