MatSX is an AI-powered platform for similarity search and anomaly detection in materials. This repository is a prototype project developed during the 2025 KRICT ChemDX Hackathon.
AI Agent demo video here.
We are proud to announce that our team won 1st place at the 2025 KRICT ChemDX Hackathon!
The winning team celebrating our victory at KRICT 2025
- Seongho
- Seonhye
- Youngtak
- Hyunsoo
- Ry
This repository contains a comprehensive materials science platform that combines interactive visualisation with AI-powered analysis. The system integrates Materials Project and MatDX databases to provide advanced materials discovery capabilities through multiple interfaces:
- Web Application: Interactive 3D visualisation with Dash
- AI Agent: Intelligent materials analysis with OpenAI integration
- Command Line Interface: KRICTHACK for rapid materials search
- Computes embeddings (Magpie for composition, MACE for structure) from material inputs.
- Applies dimensionality reduction methods (PCA, UMAP, Adversarial Autoencoder).
- Identifies similar materials from the Materials Project database by calculating Euclidean distances in the reduced embedding space.
- Interactive 3D scatter plots for materials space exploration
- Crystal structure viewer with nearest neighbour display
- Support for multiple embedding methods (Magpie composition-based, MACE structure-based)
- Dimensionality reduction techniques (PCA, UMAP, AAE)
- Intelligent similarity search for materials
- Natural language queries for materials discovery
- Interactive chat mode with conversation memory
- Integration with Materials Project API for real-time data
- Pre-computed embeddings from H5 files for rapid search
- Support for both composition and structure-based similarity
- Advanced embedding techniques including adversarial autoencoders
Create a .env file and add the following content:
MP_API_KEY='your-materials-project-key' # For materials project
OPENAI_MDG_API_KEY='your-openai-key' # For AI analysis# Main Dash application (port 8050)
python app.py
# With custom settings
python app.py --debug --port 8080# Search for similar materials
kricthack search "Fe2O3"
kricthack search "battery cathode materials"
# Interactive chat mode
kricthack chat
# System diagnostics
kricthack setupGreat thanks to KRICT for hosting the hackathon and providing the research opportunity.

