Views
No views yet

ibm/biomed.omics.bl.sm.ma-ted-458m requires installing https://github.com/BiomedSciAI/biomed-multi-alignmentpip install git+https://github.com/BiomedSciAI/biomed-multi-alignment.gitibm/biomed.omics.bl.sm.ma-ted-458m:1import torch
2from fuse.data.tokenizers.modular_tokenizer.op import ModularTokenizerOp
3from mammal.model import Mammal
4from mammal.keys import *
5
6# Load Model
7model = Mammal.from_pretrained("ibm/biomed.omics.bl.sm.ma-ted-458m")
8model.eval()
9
10# Load Tokenizer
11tokenizer_op = ModularTokenizerOp.from_pretrained("ibm/biomed.omics.bl.sm.ma-ted-458m")
12
13# Prepare Input Prompt
14protein_calmodulin = "MADQLTEEQIAEFKEAFSLFDKDGDGTITTKELGTVMRSLGQNPTEAELQDMISELDQDGFIDKEDLHDGDGKISFEEFLNLVNKEMTADVDGDGQVNYEEFVTMMTSK"
15protein_calcineurin = "MSSKLLLAGLDIERVLAEKNFYKEWDTWIIEAMNVGDEEVDRIKEFKEDEIFEEAKTLGTAEMQEYKKQKLEEAIEGAFDIFDKDGNGYISAAELRHVMTNLGEKLTDEEVDEMIRQMWDQNGDWDRIKELKFGEIKKLSAKDTRGTIFIKVFENLGTGVDSEYEDVSKYMLKHQ"
16
17# Create and load sample
18sample_dict = dict()
19# Formatting prompt to match pre-training syntax
20sample_dict[ENCODER_INPUTS_STR] = f"<@TOKENIZER-TYPE=AA><BINDING_AFFINITY_CLASS><SENTINEL_ID_0><MOLECULAR_ENTITY><MOLECULAR_ENTITY_GENERAL_PROTEIN><SEQUENCE_NATURAL_START>{protein_calmodulin}<SEQUENCE_NATURAL_END><MOLECULAR_ENTITY><MOLECULAR_ENTITY_GENERAL_PROTEIN><SEQUENCE_NATURAL_START>{protein_calcineurin}<SEQUENCE_NATURAL_END><EOS>"
21
22# Tokenize
23tokenizer_op(
24 sample_dict=sample_dict,
25 key_in=ENCODER_INPUTS_STR,
26 key_out_tokens_ids=ENCODER_INPUTS_TOKENS,
27 key_out_attention_mask=ENCODER_INPUTS_ATTENTION_MASK,
28)
29sample_dict[ENCODER_INPUTS_TOKENS] = torch.tensor(sample_dict[ENCODER_INPUTS_TOKENS])
30sample_dict[ENCODER_INPUTS_ATTENTION_MASK] = torch.tensor(sample_dict[ENCODER_INPUTS_ATTENTION_MASK])
31
32# Generate Prediction
33batch_dict = model.generate(
34 [sample_dict],
35 output_scores=True,
36 return_dict_in_generate=True,
37 max_new_tokens=5,
38)
39
40# Get output
41generated_output = tokenizer_op._tokenizer.decode(batch_dict[CLS_PRED][0])
42print(f"{generated_output=}")@misc{shoshan2024mammalmolecularaligned,
title={MAMMAL -- Molecular Aligned Multi-Modal Architecture and Language},
author={Yoel Shoshan and Moshiko Raboh and Michal Ozery-Flato and Vadim Ratner and Alex Golts and Jeffrey K. Weber and Ella Barkan and Simona Rabinovici-Cohen and Sagi Polaczek and Ido Amos and Ben Shapira and Liam Hazan and Matan Ninio and Sivan Ravid and Michael M. Danziger and Joseph A. Morrone and Parthasarathy Suryanarayanan and Michal Rosen-Zvi and Efrat Hexter},
year={2024},
eprint={2410.22367},
archivePrefix={arXiv},
primaryClass={q-bio.QM},
url={https://arxiv.org/abs/2410.22367},
}