BALM
1.0.0
該存儲庫包含推理代碼,用於使用生物啟發的抗體語言模型準確預測抗體功能和結構
conda env create -f environment.yml
conda activate BALM
可以從Google Drive鏈接下載脂肪的預訓練。
from modeling_balm import BALMForMaskedLM
from ba_position_embedding import get_anarci_pos
from transformers import EsmTokenizer
import torch
# an antibody sequence example
input_seq = "AVQLQESGGGLVQAGGSLRLSCTVSARTSSSHDMGWFRQAPGKEREFVAAISWSGGTTNYVDSVKGRFDISKDNAKNAVYLQMNSLKPEDTAVYYCAAKWRPLRYSDNPSNSDYNYWGQGTQVTVSS"
tokenizer = EsmTokenizer.from_pretrained("./tokenizer/vocab.txt", do_lower_case=False, model_max_length=168)
tokenizer_input = tokenizer(input_seq, truncation=True, padding="max_length", return_tensors="pt")
# generate position_ids
tokenizer_input.update(get_anarci_pos(input_seq))
with torch.no_grad():
# please download from Google drive link before
model = BALMForMaskedLM.from_pretrained("./pretrained-BALM/")
# on CPU device
outputs = model(**tokenizer_input, return_dict=True, output_hidden_states=True, output_attentions=True)
# final hidden layer representation [batch_sz * max_length * hidden_size]
final_hidden_layer = outputs.hidden_states[-1]
# final hidden layer sequence representation [batch_sz * hidden_size]
final_seq_embedding = final_hidden_layer[:, 0, :]
# final layer attention map [batch_sz * num_head * max_length * max_length]
final_attention_map = outputs.attentions[-1]
Balmfold基於BALM,以預測具有一級序列的抗體三級結構。在Balmfold Server可以免費獲得在線服務器。嘗試一下。 :)
如果您發現我們的模型對您有用,請引用為:
@article{jing2024accurate,
title={Accurate prediction of antibody function and structure using bio-inspired antibody language model},
author={Jing, Hongtai and Gao, Zhengtao and Xu, Sheng and Shen, Tao and Peng, Zhangzhi and He, Shwai and You, Tao and Ye, Shuang and Lin, Wei and Sun, Siqi},
journal={Briefings in Bioinformatics},
volume={25},
number={4},
pages={bbae245},
year={2024},
publisher={Oxford University Press}
}
香脂的體系結構和預訓練過程建立在ESM上,並擁抱面部建模框架。我們非常感謝ESM的工作和擁抱面孔團隊。
此源代碼是根據此源樹的根目錄中的LICENSE文件中發現的MIT許可證的許可。