Model reference · open weights
mist-48kpooqf-odour is an open-weight embedding model from mist-models. AxForge deploys and operates it for you on dedicated EU-owned hardware — with the licence handled where one is required.
Available as managed deployment — configured and operated for you on dedicated EU hardware, quoted per deployment.
What it is
| Released by | mist-models |
|---|---|
| Type | Embedding models |
| Task | Embeddings |
| Parameters (lead) | 27M |
| Runs with | transformers |
| Released | 2025-11-14 |
| Popularity | 13k downloads / month |
| Licence | Open weights |
About
MIST is a family of molecular foundation models for molecular property prediction. The models were pre-trained on SMILES strings from the Enamine REAL Space dataset using the Masked Language Modeling (MLM) objective, then fine-tuned for downstream prediction tasks. Further information is available in our pre-print on arXiv.
This fine-tuned MIST variant consists of the MIST-28M encoder finetuned on the Olfaction dataset from application dataset. Fine-tuned MIST models consist of the pretrained MIST model (the encoder), followed by a task network. The task networks consist of a two-layer MLP with Gaussian Error Linear Units (GELU) activations and dropout. The final hidden state vectors for all tokens in the sequence are pooled to produce a single embedding vector. Consistent with prior works, the encoder hidden states were pooled by taking the hidden state of the first token.
mist-28M-ti624ev1Create a virtual environment and install dependencies:
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
pip install -r requirements.txt
Note: SMIRK tokenizers require Rust to be installed. See the Rust installation guide for details.
from transformers import AutoModel
from smirk import SmirkTokenizerFast
# Load the model
model = AutoModel.from_pretrained(
"path/to/model",
trust_remote_code=True
)
# Make predictions for odor descriptors
smiles_batch = [
"CCO", # Ethanol
"CC(=O)O", # Acetic acid
"C1=CC=CC=C1" # Benzene
]
# Returns unnormalized logits for binary labels for 135 possible scent descriptors
results = model.predict(smiles_batch)
Model weights are provided as-is for research purposes only, without guarantees of correctness, fitness for purpose, or warranties of any kind.
Pretraining We use the the Enamine REAL Space dataset to pretrain MIST models. At time of writing, Enamine REAL Space is the largest database of commercially available compounds. The dataset was constructed using forward synthetic analysis: experimentally validated building blocks were converted into synthons annotated with reactivity features. Enamine REAL Space was selected as the pretraining dataset since it was the largest database of molecular SMILES at the time of training, it is easily accessible for academic use and molecules relevant to downstream tasks, such as drug candidates, electrolytes, fragrances, live in synthetically accessible regions of chemical space.
Finetuning The Olfaction dataset was used, consisting of 4,983 molecules collected by Lee et al. As an arbitrary number of scent labels can be applied to any molecule, the task was framed as a multi-label multi-class binary classification task, with 135 possible scent labels.
Dataset was split 80/10/10 using a random split.
AUROC (Area Under the Receiver Operator Curve) averaged across all 135 scent labels
RoBERTa-PreLayerNorm encoder with 8 layers, a hidden size of 512, intermediate size of 2048, 8 attention heads and maximum sequence length of 2048.deepspeed.ops.lamb.FusedLAMBtorch.optim.AdamWThis model was pre-trained on 2 NVIDIA A100-SXM4-80GB GPUs in 12 hours 15 minutes. It was finetuned on 1 NVIDIA A100 GPU.
This model was trained with PyTorchLightning using the DeepSpeed strategy for data distributed parallelism. Model are exported in a Safetensors format.
If you use this model in your research, please cite:
@online{MIST,
title = {Foundation Models for Discovery and Exploration in Chemical Space},
author = {Wadell, Alexius and Bhutani, Anoushka and Azumah, Victor and Ellis-Mohr, Austin R. and Kelly, Celia and Zhao, Hancheng and Nayak, Anuj K. and Hegazy, Kareem and Brace, Alexander and Lin, Hongyi and Emani, Murali and Vishwanath, Venkatram and Gering, Kevin and Alkan, Melisa and Gibbs, Tom and Wells, Jack and Varshney, Lav R. and Ramsundar, Bharath and Duraisamy, Karthik and Mahoney, Michael W. and Ramanathan, Arvind and Viswanathan, Venkatasubramanian},
date = {2025-10-20},
eprint = {2510.18900},
eprinttype = {arXiv},
eprintclass = {physics},From the published model card. Full card on the HuggingFace links in the sidebar.
Using it via the API
Once AxForge deploys mist-48kpooqf-odour for you, it answers on the OpenAI-compatible API — the same base URL and keys as every other model. (mist-48kpooqf-odour below is illustrative; you get the exact model name on deployment.)
$ curl -sS https://api.axforge.ai/v1/embeddings \
-H "Authorization: Bearer $AXFORGE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"mist-48kpooqf-odour","input":"text to embed"}'
Create an account — your API key is available in the console. 3M free tokens every 30 days with every new account.