Views
No views yet
1from transformers import AutoTokenizer, AutoModelForMaskedLM
2import numpy as np
3import torch
4
5# Import the tokenizer and the model
6tokenizer = AutoTokenizer.from_pretrained("InstaDeepAI/isoformer", trust_remote_code=True)
7model = AutoModelForMaskedLM.from_pretrained("InstaDeepAI/isoformer",trust_remote_code=True)
8
9protein_sequences = ["RSRSRSRSRSRSRSRSRSRSRL" * 9]
10rna_sequences = ["ATTCCGGTTTTCA" * 9]
11sequence_length = 196_608
12rng = np.random.default_rng(seed=0)
13dna_sequences = ["".join(rng.choice(list("ATCGN"), size=(sequence_length,)))]
14
15torch_tokens = tokenizer(
16 dna_input=dna_sequences, rna_input=rna_sequences, protein_input=protein_sequences
17)
18dna_torch_tokens = torch.tensor(torch_tokens[0]["input_ids"])
19rna_torch_tokens = torch.tensor(torch_tokens[1]["input_ids"])
20protein_torch_tokens = torch.tensor(torch_tokens[2]["input_ids"])
21
22torch_output = model.forward(
23 tensor_dna=dna_torch_tokens,
24 tensor_rna=rna_torch_tokens,
25 tensor_protein=protein_torch_tokens,
26 attention_mask_rna=rna_torch_tokens != 1,
27 attention_mask_protein=protein_torch_tokens != 1,
28)
29
30print(f"Gene expression predictions: {torch_output['gene_expression_predictions']}")
31print(f"Final DNA embedding: {torch_output['final_dna_embeddings']}")
32