Overview
ChemCrow is a tool-using chemistry agent package intended to support reasoning-intensive chemical tasks through a language-model interface. Built with Langchain, it combines chemical software and information sources, including RDKit, paper-qa, Pubchem and chem-space. Its workflow role is to connect natural-language questions with specialist tools, rather than serve as a standalone predictive model or chemical database.
The README demonstrates a Python interface in which a user creates a ChemCrow instance and submits a question through its run method. Examples cover molecular-weight lookup and reaction-product prediction. Inputs in these examples are natural-language chemical questions; the documented interaction returns an agent response, although the source excerpts do not specify a structured output schema. Configuration includes a language-model choice, temperature and streaming settings. An OpenAI API key is required by the documented setup, while Serp API configuration is optional.
For retrosynthetic planning and reaction-product prediction, ChemCrow uses RXN4Chem by default. The README notes that this service can be slow and requires an API key. It also describes an alternative using pre-made Docker images to self-host those tools and a local_rxn setting to select that route. These integrations are external dependencies, not databases or predictive models developed within ChemCrow itself.
The public package does not include every tool described in the ChemCrow paper because of API usage restrictions, and the README explicitly warns that this repository will not produce the same results as the paper. The supplied packaging source declares Python requirements, but it does not establish tested compatibility or present performance results for this repository.
Key Features
- Langchain-based agent interface for submitting natural-language chemistry questions through ChemCrow.run.
- Integration with RDKit and paper-qa alongside chemical information sources including Pubchem and chem-space.
- RXN4Chem-backed retrosynthetic planning and reaction-product prediction.
- Optional self-hosting of reaction-prediction and retrosynthesis tools using the Docker images documented in the README.
- Configurable language-model selection, temperature, streaming and local reaction-tool routing.
Use Cases
- Intended evaluation: compare responses to molecular-weight questions against independently checked chemical reference values, following the README’s example workflow.
- Intended evaluation: assess reaction-product prediction and retrosynthetic planning on representative cases with known reference outcomes.
- Intended evaluation: explore whether the paper-qa and chemical-database integrations support a chemistry literature-research workflow, checking returned information against original sources.
How to Use
- Read the official README to understand the agent interface and its warning that this package differs from the paper’s tool set.
- Check the declared Python requirements and dependencies in setup.py, then follow the README’s package-installation instructions. Treat these declarations as requirements, not proof of tested compatibility.
- Configure the required OpenAI API key in your environment without placing credentials in shared notebooks or repository files. Add Serp API configuration only if using that optional integration.
- Follow the README’s Python example to create a ChemCrow instance and submit a molecular-weight question. Independently verify the response before using it in scientific work.
- For reaction tools, choose between the default RXN4Chem service and the documented self-hosted Docker route. Consult the README for API access, container setup and the local_rxn setting.
- Compare your evaluation scope with the ChemCrow paper and the linked experiment repository; do not assume the public package reproduces those experiments.