Mirrored by Aurigene AI
Discovery stage: Synthesis planning
Single-step retrosynthesis: product SMILES in, plausible reactants out. Chain it with the forward model to score a proposed route.
Upstream:
sagawa/ReactionT5v2-retrosynthesis- all credit to the original authors; the model card and licence below are theirs.Explore the rest of the catalogue: Molecule Explorer - Protein Target Explorer - Drug Discovery Model Hub
Model Card for ReactionT5v2-retrosynthesis
This is a ReactionT5 pre-trained to predict the reactants of reactions. You can use the demo here.
Model Sources
- Repository: https://github.com/sagawatatsuya/ReactionT5v2
- Paper: https://jcheminf.biomedcentral.com/articles/10.1186/s13321-025-01075-4
- Demo: https://huggingface.co/spaces/sagawa/ReactionT5
Uses
You can use this model for retrosynthesis prediction or fine-tune this model with your dataset.
How to Get Started with the Model
Use the code below to get started with the model.
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
tokenizer = AutoTokenizer.from_pretrained("sagawa/ReactionT5v2-retrosynthesis", return_tensors="pt")
model = AutoModelForSeq2SeqLM.from_pretrained("sagawa/ReactionT5v2-retrosynthesis")
inp = tokenizer('CCN(CC)CCNC(=S)NC1CCCc2cc(C)cnc21', return_tensors='pt')
output = model.generate(**inp, num_beams=1, num_return_sequences=1, return_dict_in_generate=True, output_scores=True)
output = tokenizer.decode(output['sequences'][0], skip_special_tokens=True).replace(' ', '').rstrip('.')
output # 'CCN(CC)CCN=C=S.Cc1cnc2c(c1)CCCC2N'
Training Details
Training Procedure
We used the Open Reaction Database (ORD) dataset for model training. In addition, we used USPTO_50k dataset's test split to prevent data leakage. The command used for training is the following. For more information about data preprocessing and training, please refer to the paper and GitHub repository.
cd task_retrosynthesis
python train.py \
--output_dir='t5' \
--epochs=80 \
--lr=2e-4 \
--batch_size=32 \
--input_max_len=100 \
--target_max_len=150 \
--weight_decay=0.01 \
--evaluation_strategy='epoch' \
--save_strategy='epoch' \
--logging_strategy='epoch' \
--train_data_path='../data/preprocessed_ord_train.csv' \
--valid_data_path='../data/preprocessed_ord_valid.csv' \
--test_data_path='../data/preprocessed_ord_test.csv' \
--USPTO_test_data_path='../data/USPTO_50k/test.csv' \
--pretrained_model_name_or_path='sagawa/CompoundT5'
Results
| Model | Training set | Test set | Top-1 [% acc.] | Top-2 [% acc.] | Top-3 [% acc.] | Top-5 [% acc.] |
|---|---|---|---|---|---|---|
| Sequence-to-sequence | USPTO_50k | USPTO_50k | 37.4 | - | 52.4 | 57.0 |
| Molecular Transformer | USPTO_50k | USPTO_50k | 43.5 | - | 60.5 | - |
| SCROP | USPTO_50k | USPTO_50k | 43.7 | - | 60.0 | 65.2 |
| T5Chem | USPTO_50k | USPTO_50k | 46.5 | - | 64.4 | 70.5 |
| CompoundT5 | USPTO_50k | USPTO_50k | 44,2 | 55.2 | 61.4 | 67.3 |
| ReactionT5 (This model) | - | USPTO_50k | 13.8 | 18.6 | 21.4 | 26.2 |
| ReactionT5 | USPTO_50k | USPTO_50k | 71.2 | 81.4 | 84.9 | 88.2 |
Performance comparison of Compound T5, ReactionT5, and other models in product prediction.
Citation
@article{Sagawa2025,
title = {ReactionT5: a pre-trained transformer model for accurate chemical reaction prediction with limited data},
author = {Sagawa, Tatsuya and Kojima, Ryosuke},
journal = {Journal of Cheminformatics},
year = {2025},
volume = {17},
number = {1},
pages = {126},
doi = {10.1186/s13321-025-01075-4},
url = {https://doi.org/10.1186/s13321-025-01075-4}
}