An LLM system for the ultra-accurate (TPR=98.8%) prediction of the synthesizability and precursors of crystal structures.
This is the repository for the paper "Is Large Language Model All You Need to Predict the Synthesizability and Precursors of Crystal Structures?" https://arxiv.org/abs/2407.07016 The code will be released soon.
The GUI example of using CSLLM
CSLLM is a powerful tool that leverages three specialized large language models to predict crystal structure synthesis:
- synthesis_llm: Predicts whether a given crystal structure can be synthesized
- method_llm: Recommends methods for synthesizing the crystal structure
- precursor_llm: Suggests precursors for the synthesis process
- Upload and analyze CIF or POSCAR crystal structure files
- Visualize structures using VESTA
- Get combined predictions from multiple specialized LLMs
- Interactive chat interface
All three models can be downloaded from the HuggingFace repository: https://huggingface.co/zhilong777/csllm
The repository contains the following models:
synthesis_llm: For synthesizability predictionmethod_llm: For synthesis method recommendationprecursor_llm: For precursor suggestion
All required dependencies are specified in the environment.yml file. You can create the conda environment using:
conda env create -f environment.yml
conda activate csllmDownload the three specialized models from HuggingFace:
# Install git-lfs if you haven't already
git lfs install
# Clone the models repository
git clone https://huggingface.co/zhilong777/csllmAlternatively, you can download each model individually from the HuggingFace platform at https://huggingface.co/zhilong777/csllm.
Install VESTA for structure visualization:
- Download from VESTA website
- Update the path in
gui.pyif necessary
To use all three specialized models for comprehensive crystal synthesis analysis:
python gui.py \
--model_paths ./csllm/synthesis_llm,./csllm/method_llm,./csllm/precursor_llm \
--device cuda \--model_paths: Comma-separated paths to the three model directories (synthesis_llm,method_llm,precursor_llm)--device: Device to run models on (cudaorcpu)
