Introduction

What is RXN for Chemistry?

Use AI to predict outcomes of chemical reactions, retrosynthesis pathways, and experimental procedures. All using infrastructure that performs analyses quickly and securely.

Our tool is based on molecular transformer models trained on 2.5 million chemical reactions. This class of models is flexible, non-rule-based, and scalable. Users never have to wait in queues, resulting in faster results and better uptime.

  • A visual drawing editor allows you to add your own chemical structures and explore RXN’s features.

  • Create projects and collaborate on complex multi-step reaction syntheses or novel chemical reaction designs.

  • Simple APIs allow you to run predictions at scale without worrying about provisioning, managing, and monitoring backend resources.

  • Integrate these API calls into your own workflows with minimal setup.

  • AI models generate results without human bias, creating new discovery opportunities.

Tools Available in RXN for Chemistry

Below are the tools available in the RXN for Chemistry platform.

Tool

Description

Ref.

Predict retrosynthesis

Predict possible retrosynthetic routes given a target molecule

1, 2

Predict product

Predict the product of a chemical reaction given the starting materials

3

Predict reagents

Predict the reagents needed to convert a given starting material to a given product

N/A

Plan a synthesis

Plan a synthesis starting from a target molecule, a retrosynthetic route, or an experimental procedure

4, 5

Atom mapping

Map atoms from starting materials to products

6

Text to procedure

Translate your reaction procedures from text to exact steps to follow

5

Reaction digitization

Convert images of reaction schemes to machine-readable format

N/A

Please refer to the references below for methodological details of the AI models. If you use RXN for Chemistry in your projects, please consider citing the relevant article(s).

  1. “Predicting retrosynthetic pathways using transformer-based models and a hyper-graph exploration strategy.” Schwaller, P.; , Petraglia, R.; Zullo, V.; Nair, V. H.; Haeuselmann, R. A.; Pisoni, R.; Bekas, C.; Iuliano, A.; Laino, T. Chem. Sci., 2020, 11, 3316. [link]

  2. “Biocatalysed synthesis planning using data-driven learning” Probst, D.; Manica, M.; Nana Teukam, Y. G.; Castrogiovanni, A.; Paratore, F.; Laino, T. Nat. Commun. 2022, 13, 964. [link]

  3. “Molecular Transformer: A Model for Uncertainty-Calibrated Chemical Reaction Prediction.” Schwaller, P.; Laino, T.; Gaudin, T.; Bolgar, P.; Hunter, C. A.; Bekas, C.; Lee, A. A. ACS Cent. Sci. 2019, 5, 1572. [link]

  4. “Inferring experimental procedures from text-based representations of chemical reactions.” Vaucher, A. C.; Schwaller, P.; Geluykens, J.; Nair, V. H.; Iuliano, A.; Laino, T. Nat. Commun. 2021, 12, 2573. [link]

  5. “Automated extraction of chemical synthesis actions from experimental procedures.” Vaucher, A. C.; Zipoli, F.; Geluykens, J.; Nair, V. H.; Schwaller, P.; Laino, T. Nat. Commun. 2020, 11, 3601. [link]

  6. “Extraction of organic chemistry grammar from unsupervised learning of chemical reactions.” Schwaller, P.; Hoover, B; Reymond, J.-L.; Strobelt, H.; Laino, T. Sci. Adv. 2021, 7, eabe4166. [link]

Additional Resources

For a full set of features, consult the the online documentation.

There are tutorials available for the web-based user interface of RXN for Chemistry.

RXN for Chemistry API and Python Wrapper

API access

Users in the free tier of RXN for Chemistry have UI access only. For programmatic access to RXN for Chemistry, users need an Individual or Team subscription. These plans feature full API access with no rate limitations. You can view subscription options here.

Python Wrapper

For ease of programming we provide a Python wrapper that may be used to access the API for RXN for Chemistry. Use of the wrapper greatly eases the task of coding for access to the REST API.

This documentation contains sample Python code illustrating the use of each of the functions in the Python wrapper. All of the code snippets in this documentation are available in a single Jupyter notebook.

The Python wrapper for RXN for Chemistry may be obtained from the following source: https://github.com/rxn4chemistry/rxn4chemistry/tree/main

Instantiating the Python wrapper

Set up the wrapper using a valid API key. If you have an Individual or Teams subscription, your API key can be found on the RXN for Chemistry profile page.

from rxn4chemistry import RXN4ChemistryWrapper

api_key = "YOUR_API_KEY"
rxn = RXN4ChemistryWrapper(api_key=api_key)

Jupyter Notebook of Code Examples

All of the code snippets in this documentation are available in a single Jupyter notebook.

Projects in RXN for Chemistry

What is a Project?

The artifacts and results from the four RXN tools listed below can be saved to a project. Projects help to organize analyses, enable collaboration, and may be shared with colleagues.

  • Predict retrosynthesis

  • Predict product

  • Predict reagents

  • Plan a synthesis

Special note for on-premise installations (uncommon)

For those with an on-premise installation of RXN for Chemistry, you must refer to your on-premise installation via an environment variable:

export RXN4CHEMISTRY_BASE_URL="https://some.other.rxn.server"

Or by setting a different host in your python code:

# uncomment the line below to set a different host
# rxn.set_base_url('https://some.other.rxn.server')

Create a new project

To create a project, run the create_project function.

This step can be skipped if you want to use a project that you have created previously.

rxn.create_project("rxn4chemistry_tour")
rxn.set_project(rxn.project_id)
print(f"The project ID is {rxn.project_id}")

Choose an existing project

If you have already created the project, you can work within it by running set_project.

rxn.set_project("YOUR_PROJECT_ID")