Chemlactica-125M

Chemlactica-125M is a 125M-parameter causal language model for molecular generation, property conditioning, property prediction, and optimization. It continues pretraining from Galactica-125M on PubChemForLM: 40 billion tokens describing more than 110 million PubChem molecules, computed properties, and molecular similarities.

Model details

  • Architecture: OPTForCausalLM; 12 layers, hidden size 768, 12 attention heads
  • Context length: 2,048 tokens
  • Training objective: causal language modeling
  • Training-data cutoff: January 26, 2023
  • Molecular preprocessing: RDKit-canonicalized SMILES; numeric properties rounded to two decimals

Prompt format

Chemlactica prompts begin with </s>. Generate a molecule by ending a structured property prefix with [START_SMILES]:

</s>[SAS]2.25[/SAS][SIMILAR]CC(=O)OC1=CC=CC=C1C(=O)O 0.62[/SIMILAR][START_SMILES]

The similarity field is reference SMILES, a space, then the target ECFP Tanimoto similarity. To predict a property, provide the molecule and open the desired property tag:

</s>[START_SMILES]CC(=O)OC1=CC=CC=C1C(=O)O[END_SMILES][SAS]

Common trained tags include [SAS], [QED], [WEIGHT], [TPSA], [CLOGP], [FORMULA], [RINGCOUNT], and [SIMILAR]. Use only tags present in the training format; arbitrary natural-language instructions or oracle names are unsupported.

Usage

from transformers import AutoModelForCausalLM, AutoTokenizer

model_id = "yerevann/chemlactica-125m"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
    model_id, device_map="auto", torch_dtype="auto"
)

prompt = "</s>[QED]0.80[/QED][START_SMILES]"
inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
outputs = model.generate(
    **inputs, max_new_tokens=128, do_sample=True, temperature=0.8, top_p=0.95
)
print(tokenizer.decode(outputs[0], skip_special_tokens=False))

For optimization, use the Mol-E implementation and canonical PMO prompt registry. In the five-seed PMO-10K reproduction, this checkpoint obtains summed Top-10 AUC scores of 16.944598 (task-agnostic) and 20.429421 (task-informed) across 23 tasks.

Intended use and limitations

This checkpoint is intended for research on small-molecule language modeling and optimization. Generated strings may be invalid, duplicated, chemically implausible, difficult to synthesize, unsafe, or outside the requested property range. Reported properties are predictions or optimization-oracle outputs, not experimental measurements. PubChem-derived data may contain errors or biases, and the model has no knowledge of changes after the cutoff date. Do not use it for clinical decisions or as a substitute for experimental and expert review.

Resources and license

The checkpoint is released under CC BY-NC 4.0. Users must also comply with applicable terms of the base model and source data.

Downloads last month
540
Safetensors
Model size
0.1B params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for yerevann/chemlactica-125m

Finetuned
(2)
this model

Collection including yerevann/chemlactica-125m

Paper for yerevann/chemlactica-125m