Web application for predicting nominal-mass 70 eV electron-impact spectra from a SMILES, compound name, or CAS Registry Number. Names and CAS numbers are resolved through PubChem PUG REST; prediction uses Google's released trained NEIMS bidirectional model, not a heuristic spectrum generator.
Run
Docker is recommended because the official checkpoint depends on TensorFlow 1.x:
docker compose up --build
Open http://localhost:8000. The first build downloads the official source and pretrained model weights (roughly 350 MB) and can take several minutes. Internet access is also needed at runtime for PubChem name/CAS resolution.
API
bash
1curl -X POST http://localhost:8000/api/predict \2 -H "Content-Type: application/json"\3 -d '{"query":"58-08-2"}'
The response includes resolved PubChem metadata and normalized {mz, intensity} peaks. The browser can export the result as an MSP record.
Model choice
RASSP FormulaNet reports higher published accuracy than NEIMS, but its public local environment is brittle, its hosted API is currently unavailable, and its model limits structures to 48 atoms. NEIMS is therefore the best reproducible trained model for this application today: official weights are downloadable, inference is fast, and the input limit is 100 atoms. The adapter is isolated in get_predictor() so RASSP can replace it when a maintained checkpoint/runtime becomes available.
Predictions are computational estimates and should not be represented as measured reference spectra.