Downloads · 30 days
282
100% of all-time downloads
Aurigene-AI/ReactionT5v2-forward
ReactionT5v2-forward is a text generation model from Aurigene-AI. Use it when you need the model to write or continue text. It is set up for transformers. The card lists the license as mit.
Mirrored by Aurigene AI Discovery stage: Synthesis planning Predicts reaction products from reactants and reagents. Trained on the Open Reaction Database, so it generalises to unseen chemistry without fine-tuning. Ups…
Downloads · 30 days
282
100% of all-time downloads
All-time downloads
282
Public
Parameters
199M
795 MB on disk
Likes
0
Public
Click a slice to open those files.
.safetensors795 MB · 100%
From the Hugging Face model README
Mirrored by Aurigene AI
Discovery stage: Synthesis planning
Predicts reaction products from reactants and reagents. Trained on the Open Reaction Database, so it generalises to unseen chemistry without fine-tuning.
Upstream:
sagawa/ReactionT5v2-forward- 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
This is a ReactionT5 pre-trained to predict the products of reactions. You can use the demo here.
You can use this model for forward reaction prediction or fine-tune this model with your dataset.
Use the code below to get started with the model.
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
tokenizer = AutoTokenizer.from_pretrained("sagawa/ReactionT5v2-forward", return_tensors="pt")
model = AutoModelForSeq2SeqLM.from_pretrained("sagawa/ReactionT5v2-forward")
inp = tokenizer('REACTANT:COC(=O)C1=CCCN(C)C1.O.[Al+3].[H-].[Li+].[Na+].[OH-]REAGENT:C1CCOC1', 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 # 'CN1CCC=C(CO)C1'
We used the Open Reaction Database (ORD) dataset for model training. In addition, we used USPTO_MIT 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_forward
python train.py \
--output_dir='t5' \
--epochs=100 \
--lr=1e-3 \
--batch_size=32 \
--input_max_len=150 \
--target_max_len=100 \
--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_MIT/MIT_separated/test.csv' \
--disable_tqdm \
--pretrained_model_name_or_path='sagawa/CompoundT5'
| Model | Training set | Test set | Top-1 [% acc.] | Top-2 [% acc.] | Top-3 [% acc.] | Top-5 [% acc.] |
|---|---|---|---|---|---|---|
| Sequence-to-sequence | USPTO_MIT | USPTO_MIT | 80.3 | 84.7 | 86.2 | 87.5 |
| WLDN | USPTO_MIT | USPTO_MIT | 80.6 (85.6) | 90.5 | 92.8 | 93.4 |
| Molecular Transformer | USPTO_MIT | USPTO_MIT | 88.8 | 92.6 | – | 94.4 |
| T5Chem | USPTO_MIT | USPTO_MIT | 90.4 | 94.2 | – | 96.4 |
| CompoundT5 | USPTO_MIT | USPTO_MIT | 86.6 | 89.5 | 90.4 | 91.2 |
| ReactionT5 (This model) | - | USPTO_MIT | 92.8 | 95.6 | 96.4 | 97.1 |
| ReactionT5 | USPTO_MIT | USPTO_MIT | 97.5 | 98.6 | 98.8 | 99.0 |
Performance comparison of Compound T5, ReactionT5, and other models in product prediction.
@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}
}