Pep2Tcr GRATCR
This repository contains relevant information of our research article 'Leveraging contrastive learning for conditional and robust TCR sequence generation'.
Fuente del modelo
- Tipo
- Other
- Tamaño del archivo
- 682 MB
- Modelo base
- keiwoo/RoBERTpep
- Versión
- vRevision 43e3250
- Actualizado
- 4 oct 2026
- Publicador
- @keiwoo
- Descargas
- 10
- Tareas
- Generación de texto
- Fuente
- Hugging Face
Descripción de la fuente
This repository contains relevant information of our research article 'Leveraging contrastive learning for conditional and robust TCR sequence generation'.
Transformers
You can use Pep2Tcr trained on GRATCR dataset with Transformers. To get started, install the necessary dependencies to setup your environment:
pip install -U transformers torch
2. Run the generation
from transformers import EncoderDecoderModel, AutoTokenizer
import torch
torch.cuda.manual_seed_all(42)
device = torch.device('cuda:1')
model_name = 'keiwoo/Pep2Tcr-GRATCR'
model = EncoderDecoderModel.from_pretrained(
model_name,
dtype=torch.float16, # If your device does not support `BF16` precision mode
# (GPU based on NVIDIA's Ampere and its subsequent architectures), you should comment this line.
).to(device)
model.eval()
tokenizer = AutoTokenizer.from_pretrained(model_name, do_lower_case=False)
sample_kwargs = {
'do_sample': True,
'top_k': 9,
'top_p': 0.93,
'temperature': 0.9,
'num_return_sequences': 16,
'repetition_penalty': 1.1,
'no_repeat_ngram_size': 3,
'max_new_tokens': 24,
}
beam_kwargs = {
'num_beams': 16,
'num_return_sequences': 16,
'repetition_penalty': 1.1,
'no_repeat_ngram_size': 3,
'max_new_tokens': 24,
}
inputs = "AAGIGILTV"
tokenized = tokenizer(" ".join(inputs), return_tensors="pt", ).to(device)
outputs = model.generate(**tokenized, **sample_kwargs) # If you want different sequences every generation, uncomment this line.
# outputs = model.generate(**tokenized, **beam_kwargs) # If you want same sequences every generation (most possible sequence the model think), uncomment this line.
tcr = tokenizer.batch_decode(outputs, skip_special_tokens=True)
tcr = [i.replace(' ', '') for i in tcr]
print(tcr)
# ['CASSQEGLAGGTDTQYF', 'CASSQEGLAGGYNEQFF', 'CASSQDPGLAGGYNEQFF', ...]
3. Reproduce the model
Please refer to https://github.com/keiwoo/Pep2Tcr
Fuentes
1 fuente
Fuentes
1 fuenteVerificado 4 oct
Artefactos del modelo
1 artefacto
Artefactos del modelo
1 artefactoExtractos de fuentes
3 extractos
Extractos de fuentes
3 extractos--- license: apache-2.0 base_model: - keiwoo/RoBERTpep - keiwoo/RoBERTtcr pipeline_tag: text-generation --- This repository contains relevant information of our research article *'Leveraging contrastive learning for conditional and robust TCR sequence generation'*. #### Transformers You can use Pep2Tcr trained on [GRATCR dataset](https://doi.org/10.1109/JBHI.2024.3514089) with Transformers. To get started, install the necessary dependencies to setup your environment: ``` pip install -U transformers torch ``` ### 2. Run the generation ``` from transformers import EncoderDecoderModel, AutoTokenizer import torch torch.cuda.manual_seed_all(42) device = torch.device('cuda:1') model_name = 'keiwoo/Pep2Tcr-GRATCR' model = EncoderDecoderModel.from_pretrained( model_name, dtype=torch.float16, # If your device does not support `BF16` precision mode # (GPU based on NVIDIA's Ampere and its subsequent architectures), you should comment this line. ).to(device) model.eval() tokenizer = AutoTokenizer.from_pretrained(model_name, do_lower_case=False) sample_kwargs = { 'do_sample': True, 'top_k': 9, 'top_p': 0.93, 'temperature': 0.9, 'num_return_sequences': 16, 'repetition_penalty': 1.1, 'no_repeat_ngram_size': 3, 'max_new_tokens': 24, } beam_kwargs = { 'num_beams': 16, 'num_return_sequences': 16, 'repetition_penalty': 1.1, 'no_repeat_ngram_size': 3, 'max_new_tokens': 24, } inputs = "AAGIGILTV" tokenized = tokenizer(" ".join(inputs), return_tensors="pt", ).to(device) outputs = model.generate(**tokenized, **sample_kwargs) # If you want different sequences every generation, uncomment this line. # outputs = model.generate(**tokenized, **beam_kwargs) # If you want same sequences every generation (most possible sequence the model think), uncomment this line. tcr = tokenizer.batch_decode(outputs, skip_special_tokens=True) tcr = [i.replace(' ', '') for i in tcr] print(tcr) # ['CASSQEGLAGGTDTQYF', 'CASSQEGLAGGYNEQFF', 'CASSQDPGLAGGYNEQFF', ...] ``` ### 3. Reproduce the model Please refer to [https://github.com/keiwoo/Pep2Tcr](https://github.com/keiwoo/Pep2Tcr)
Source context: 10 downloads · 0 likes · Pipeline text-generation · Repo keiwoo/Pep2Tcr-GRATCR
Source context: 105 downloads · 0 likes · Pipeline text-generation · Repo keiwoo/Pep2Tcr-GRATCR
