MolSC: Leveraging Substituent Contributions to Enhance Fine-grained Molecular Understanding in LLMs
Organizations: Department of Artificial Intelligence, Korea University, Seoul, Republic of Korea · Department of Computer Science and Engineering, Korea University, Seoul, Republic of Korea
Abstract
Recent advances in natural language processing have led to molecular Large Language Models (LLMs) with strong performance across diverse chemistry tasks. However, they still struggle to capture fine-grained structure-property relationships, particularly how small, localized modifications alter a molecule's behavior. To address this limitation, we introduce MolSC, a dataset of substituent contributions, defined as property changes induced by attaching specific substituents to molecular scaffolds. Curated from manually annotated bioactivity records, MolSC spans structural-alert liability, target-specific bioactivity, and physicochemical descriptors, and contains 181K substituent-level examples for training. We further propose MolSC-Bench, a held-out evaluation benchmark of 1,541 examples disjoint from MolSC at the scaffold, substituent, and molecule levels. Our experiments show that existing molecular LLMs and strong proprietary models such as GPT-5.2 and Gemini-3-Flash show limited reliability in substituent contribution prediction. In contrast, training on MolSC substantially improves this ability and achieves strong performance across diverse downstream molecular tasks. These results highlight substituent contribution learning as a key component of fine-grained molecular understanding.
Figures & tables
| MolSC | MolSC-Bench | |
|---|---|---|
| Contributions | 181,098 | 1,541 |
| Unique scaffolds | 100,076 | 1,541 |
| Unique substituents | 20,541 | 1,541 |
| Unique molecules | 164,650 | 1,518 |
| Instructions | 149,232 | 1,541 |
| Method | Task 1: Property Profiling | Task 2: Substituent Contribution Prediction | |||||||
| SR (%) | propMAE | alertAcc | bioMAE | SR (%) | propMAE | alertAcc | bioMAE | dirAcc | |
| Mol-Instruction-8B ( 2023 ) | 0 40.6 | 24.019 | 0.667 | – | 0 65.1 | 9.263 | 0.075 | 0.735 | 0.454 |
| ChemLLM-20B ( 2024 ) | 0 99.0 | 15.854 | 0.700 | 6.326 | 100.0 | 8.300 | 0.049 | 0.960 | 0.146 |
| ChemDFM-v2-14B ( 2025 ) | 0 98.8 | 5.627 | 0.627 | 7.312 | 100.0 | 7.928 | 0.068 | 0.804 | 0.199 |
| Gemini-3-Flash | 100.0 | 9.013 | 0.667 | 1.480 | 100.0 | 2.535 | 0.100 | 0.799 | 0.722 |
| GPT-5.2 | 100.0 | 10.531 | 0.517 | 0.657 | 100.0 | 3.519 | 0.219 | 2.471 | 0.706 |
| Method | # Params | Modality | Exact | BLEU | Lev | RDK | MAC | Mor | Validity |
| Forward Reaction Prediction | |||||||||
| Mol-Instructions ( Fang et al., 2023 ) | 8B | 1D | 0.503 | 0.883 | 13.410 | 0.756 | 0.863 | 0.708 | 1.000 |
| InstructMol ( Cao et al., 2025 ) | 7B | 1D + 2D | 0.536 | 0.967 | 10.851 | 0.776 | 0.878 | 0.741 | 1.000 |
| HIGHT ( Chen et al., 2025 ) | 7B | 1D + 2D | 0.037 | 0.869 | 23.759 | 0.590 | 0.394 | 0.340 | 0.993 |
| UniMoT ( Guo et al., 2025 ) | 7B | 1D + 2D | 0.611 | 0.980 | 8.297 | 0.836 | 0.911 | 0.807 | 1.000 |
| Omni-Mol ( Hu et al., 2025 ) | 2B | 1D + 2D | 0.733 | 0.980 | 5.550 | 0.895 | 0.947 | 0.870 | 1.000 |
| Method | HOMO | LUMO | Avg | |
|---|---|---|---|---|
| Mol-Instruction ( 2023 ) | 0.0210 | 0.0210 | 0.0203 | 0.0210 |
| InstructMol ( 2025 ) | 0.0048 | 0.0050 | 0.0061 | 0.0050 |
| HIGHT ( 2025 ) | 0.0056 | 0.0065 | 0.0077 | 0.0066 |
| UniMoT ( 2025 ) | 0.0042 | 0.0047 | 0.0055 | 0.0049 |
| Omni-Mol ( 2025 ) | 0.0038 | 0.0047 | 0.0049 | 0.0044 |
| KnowMol ( 2025 ) | 0.0031 | 0.0037 | 0.0035 | 0.0034 |
| Method | BACE | BBBP | ACNet | Avg |
|---|---|---|---|---|
| Llama-3.2-1B-Instruct | 83.50 | 71.00 | 74.12 | 76.21 |
| Ours w/o SC, w/o dual-view | 85.98 | 73.12 | 77.32 | 78.81 |
| Ours w/o dual-view | 88.59 | 70.71 | 77.93 | 79.08 |
| Ours w/o SC | 82.42 | 70.81 | 77.30 | 76.84 |
| Ours-1B | 86.58 | 72.01 | 79.89 | 79.49 |
| Model | Single | Interaction | Comparison |
|---|---|---|---|
| Mol-Instructions-8B ( 2023 ) | 0.107 | 0.059 | 0.469 |
| ChemLLM-7B ( 2024 ) | 0.233 | 0.235 | 0.250 |
| LlaSMol-Mistral-7B ( 2024a ) | 0.387 | 0.298 | 0.239 |
| Qwen2.5-7B ( 2025 ) | 0.590 | 0.396 | 0.664 |
| nach0-base ( 2024 ) | 0.606 | 0.543 | 0.041 |
| Llama-3.2-1B-Instruct ( 2024 ) | 0.677 | 0.655 | 0.662 |
| Model | Direction acc. | Conflict-pair acc. |
|---|---|---|
| GPT-5.2 | 0.610 | 0.145 |
| Ours-1B | 0.804 | 0.582 |
Appendix figures & tables20 assets
Supplementary material from the paper’s appendix.
Appendix
| mean | median | std | min | p95 | max | |
|---|---|---|---|---|---|---|
| Substituents per scaffold | 1.810 | 1 | 1.391 | 1 | 5 | 10 |
| Contributions per scaffold | 9.611 | 6 | 8.255 | 0 | 27 | 111 |
| Axis | Sub-axis | Mean | Std | % increase | % decrease |
|---|---|---|---|---|---|
| Physicochemical | PSA | 22.98 | 22.91 | 83.2 | 16.8 |
| ALogP | 0.87 | 1.03 | 78.2 | 21.8 | |
| HBD | 0.43 | 1.19 | 63.3 | 36.7 | |
| QED | 0.15 | 0.14 | 9.1 | 90.9 | |
| NP-likeness | 0.08 | 0.36 | 40.2 | 59.8 | |
| Bioactivity | IC50 | 0.07 | 0.85 | 53.7 | 46.3 |
| Axis | Sub-axis | Ratio (%) | |
|---|---|---|---|
| Physicochemical | 728,054 | 75.7 | |
| ALogP | 179,768 | 18.7 | |
| QED | 177,893 | 18.5 | |
| NP-likeness | 177,598 | 18.5 | |
| PSA | 131,952 | 13.7 | |
| HBD | 60,843 | 6.3 |
| Axis | Sub-axis | std | Opp.-sign (%) | # eligible |
|---|---|---|---|---|
| Physicochemical | PSA | 1.382 | 4.2 | 7,424 |
| ALogP | 0.087 | 4.6 | 7,657 | |
| HBD | 0.025 | 0.0 | 4,474 | |
| QED | 0.081 | 25.8 | 7,642 | |
| NP-likeness | 0.210 | 46.6 | 7,617 | |
| Bioactivity | IC50 | 0.463 | 58.0 | 13,385 |
| Task | Model | Exact | BLEU | Lev | RDK | MAC | Mor | Validity |
|---|---|---|---|---|---|---|---|---|
| Forward Reaction Prediction | Llama-3.2-1B-Instruct | 0.778 | 0.986 | 4.993 | 0.906 | 0.950 | 0.889 | 1.000 |
| Retrosynthesis | Llama-3.2-1B-Instruct | 0.574 | 0.962 | 8.707 | 0.858 | 0.909 | 0.825 | 1.000 |
| Reagent Prediction | Llama-3.2-1B-Instruct | 0.206 | 0.685 | 16.196 | 0.480 | 0.587 | 0.466 | 1.000 |
| Model | HOMO | LUMO | Avg | |
|---|---|---|---|---|
| Llama-3.2-1B-Instruct | 0.0036 | 0.0038 | 0.0045 | 0.0040 |
| Method | Forward | Retro | ||
|---|---|---|---|---|
| Exact | Lev | Exact | Lev | |
| Ours-1B w/o | 0.917 | 1.333 | 0.658 | 6.192 |
| Ours-1B | 0.927 | 1.281 | 0.674 | 5.588 |
| Method | # Params | Modality | Exact | BLEU | Lev | RDK | MAC | Mor | Validity |
| Forward Reaction Prediction | |||||||||
| Text+Chem T5 ( Christofidellis et al., 2023 ) | 223M | 1D | 0.239 | 0.782 | 20.413 | 0.705 | 0.789 | 0.652 | 0.762 |
| BioT5+ ( Pei et al., 2024 ) | 252M | 1D | 0.864 | 0.993 | 3.403 | 0.949 | 0.975 | 0.935 | 1.000 |
| Ours-1B | 1B | 1D | 0.927 | 0.990 | 1.281 | 0.977 | 0.986 | 0.969 | 1.000 |
| Ours-3B | 3B | 1D | 0.948 | 0.995 | 0.760 | 0.984 | 0.992 | 0.979 | 1.000 |
| Retrosynthesis | |||||||||
| Method | # Params | Modality | HOMO | LUMO | Avg | |
|---|---|---|---|---|---|---|
| MoLFormer-XL ( Ross et al., 2022 ) | 48M | 1D | 0.0061 | 0.0063 | 0.0094 | 0.0073 |
| MolBridge ( Park et al., 2025 ) | 48M | 1D | 0.0064 | 0.0058 | 0.0087 | 0.0070 |
| Ours-1B | 1B | 1D | 0.0033 | 0.0030 | 0.0045 | 0.0034 |
| Ours-3B | 3B | 1D | 0.0029 | 0.0031 | 0.0039 | 0.0033 |
| Method | Exact | BLEU | Lev | RDK | MAC | Mor |
|---|---|---|---|---|---|---|
| Ours-1B w/o SC, w/o dual-view | 0.201 0.009 | 0.690 0.018 | 16.36 0.46 | 0.484 0.008 | 0.584 0.006 | 0.458 0.005 |
| Ours-1B w/o dual-view | 0.206 0.005 | 0.702 0.006 | 15.75 0.24 | 0.497 0.006 | 0.592 0.002 | 0.469 0.004 |
| Ours-1B w/o SC | 0.230 0.002 | 0.726 0.008 | 14.61 0.28 | 0.506 0.011 | 0.605 0.006 | 0.489 0.007 |
| Ours-1B | 0.235 0.007 | 0.732 0.004 | 14.27 0.12 | 0.516 0.002 | 0.612 0.001 | 0.495 0.001 |
| Method | HOMO | LUMO | Avg | |
|---|---|---|---|---|
| Ours w/o SC, w/o dual-view | 0.00333 0.00009 | 0.00380 0.00033 | 0.00400 0.00012 | 0.00370 0.00015 |
| Ours w/o dual-view | 0.00340 0.00002 | 0.00350 0.00008 | 0.00402 0.00030 | 0.00361 0.00013 |
| Ours w/o SC | 0.00271 0.00002 | 0.00273 0.00003 | 0.00322 0.00007 | 0.00287 0.00002 |
| Ours-1B | 0.00276 0.00003 | 0.00299 0.00035 | 0.00335 0.00016 | 0.00303 0.00016 |
| Model | # Params | Pre-downstream stage | Data scale |
|---|---|---|---|
| InstructMol ( Cao et al., 2025 ) | 7B | Pretraining | 264K |
| HIGHT ( Chen et al., 2025 ) | 7B | Pretraining | 295K |
| UniMoT ( Guo et al., 2025 ) | 7B | Pretraining | 324K |
| Omni-Mol ( Hu et al., 2025 ) | 2B | Pretraining | 310K |
| KnowMol ( Yang et al., 2025 ) | 7B | Instruction tuning | 100K |
| Ours | 1B | Instruction tuning | 149K |
| Turn | Paraphrasings |
|---|---|
| T0 (human) Profile request | (1) Predict the full molecular properties, structural alerts, and bioactivity of this molecule: {mol} . (2) What are the molecular properties, structural alerts, and target bioactivity of {mol} ? (3) For the molecule {mol} , give a complete profile of its physicochemical properties, alert hits, and bioactivity. (4) I have a molecule: {mol} . Provide its properties, alerts, and bioactivity profile. (5) Describe the molecular properties, structural alerts, and bioactivity of {mol} . |
| T1 (model) Profile response | (1) Properties: {props} . Structural alerts: {alerts} . Bioactivity: {bio} . (2) Property profile - {props} . Alert flags - {alerts} . Bioactivity - {bio} . (3) Physicochemical: {props} . Alerts: {alerts} . Activity: {bio} . (4) Here is the full profile. Properties: {props} . Alerts: {alerts} . Bioactivity: {bio} . (5) Computed properties: {props} . Structural alert hits: {alerts} . Measured bioactivity: {bio} . |
| T2 (human) Attachment request | (1) Apply substituent {sub} to the scaffold and tell me the resulting combined molecule. For the affected property axes ( {affected_props} ) and bioactivity stypes ( {affected_bio} ), report the signed change as combined scaffold. For every alert set (PAINS, Glaxo, BMS, Dundee, MLSMR), state whether it was introduced, removed, or preserved. (2) Attach fragment {sub} to the scaffold and give me the combined molecule. For each affected property axis ( {affected_props} ) and each affected bioactivity stype ( {affected_bio} ), list the signed change combined scaffold. Report the 3-way direction (introduced / removed / preserved) for all five alert sets. (3) Bond fragment {sub} onto the scaffold and write out the combined molecule. Give the signed change (combined scaffold) for: {affected_props} . Do the same for these bioactivity stypes: {affected_bio} . For each of the five alert sets, say introduced, removed, or preserved. (4) Combine the scaffold with fragment {sub} and output the resulting molecule. For each affected property axis ( {affected_props} ) and bioactivity stype ( {affected_bio} ), report combined scaffold. Finish with the 3-way direction for all five alert sets. (5) Take the scaffold, attach {sub} , and describe the resulting combined molecule. For the affected property axes ( {affected_props} ) and bioactivity stypes ( {affected_bio} ), give the signed difference combined scaffold. For every alert set, state whether the fragment introduced it, removed it, or preserved it. |
| T3 (model) Attachment response | (1) Combined molecule: {cm} . Effect: {chg} (2) After attachment, the molecule is {cm} . Effect: {chg} (3) The combined molecule is {cm} . Per-axis effect: {chg} (4) Result: {cm} . Per-axis effect: {chg} (5) Combined: {cm} . Effect: {chg} |
| Turn | Paraphrasings |
|---|---|
| T0 (human) Profile request | (1) Predict the full molecular properties, structural alerts, and bioactivity of this molecule: {mol} . (2) What are the molecular properties, structural alerts, and target bioactivity of {mol} ? (3) For the molecule {mol} , give a complete profile of its physicochemical properties, alert hits, and bioactivity. (4) I have a molecule: {mol} . Provide its properties, alerts, and bioactivity profile. (5) Describe the molecular properties, structural alerts, and bioactivity of {mol} . |
| T1 (model) Profile response | (1) Properties: {props} . Structural alerts: {alerts} . Bioactivity: {bio} . (2) Property profile — {props} . Alert flags — {alerts} . Bioactivity — {bio} . (3) Physicochemical: {props} . Alerts: {alerts} . Activity: {bio} . (4) Here is the full profile. Properties: {props} . Alerts: {alerts} . Bioactivity: {bio} . (5) Computed properties: {props} . Structural alert hits: {alerts} . Measured bioactivity: {bio} . |
| T2 (human) Decomposition request | (1) Find a scaffold + fragment decomposition for this molecule and tell me what each piece is. For the affected property axes ( {affected_props} ) and bioactivity stypes ( {affected_bio} ), report the signed change as combined scaffold. For every alert set (PAINS, Glaxo, BMS, Dundee, MLSMR), state whether it was introduced, removed, or preserved. (2) Decompose this molecule into scaffold and fragment. List the signed change (combined scaffold) for each affected property axis ( {affected_props} ) and each affected bioactivity stype ( {affected_bio} ). Report the 3-way direction for all five alert sets. (3) Break this molecule into a scaffold and a fragment. Give the signed change combined scaffold for: {affected_props} . Do the same for these bioactivity stypes: {affected_bio} . For each of the five alert sets, say introduced, removed, or preserved. (4) Identify a scaffold + fragment decomposition for this molecule and write both out. For each affected property axis ( {affected_props} ) and bioactivity stype ( {affected_bio} ), give combined scaffold. Finish by reporting all five alert sets as introduced, removed, or preserved. (5) Split this molecule into a scaffold and a fragment. Give the signed difference combined scaffold for the affected property axes ( {affected_props} ) and the affected bioactivity stypes ( {affected_bio} ). For every alert set, state whether the fragment introduced it, removed it, or preserved it. |
| T3 (model) Decomposition response | (1) Scaffold: {sc} . Fragment: {sub} . Effect: {chg} (2) The scaffold is {sc} and the fragment is {sub} . Effect: {chg} (3) After decomposition: scaffold {sc} , fragment {sub} . Per-axis effect: {chg} (4) Decomposition — scaffold: {sc} ; fragment: {sub} . Effect: {chg} (5) Decomposed: scaffold {sc} , fragment {sub} . Per-axis effect: {chg} |
| Axis | Property | Unit / Range | Description |
| Physicochemical descriptors | PSA | Å 2 | Topological polar surface area. |
| ALogP | log unit | Atom-based octanol-water partition coefficient. | |
| HBD | count | Hydrogen bond donor count. | |
| QED | [0, 1] | Quantitative estimation of drug-likeness. | |
| NP-likeness | [ , ] | Natural-product-likeness score. | |
| HBA | count | Hydrogen bond acceptor count. |
| Label | Structure | Textual Representation |
|---|---|---|
| Substituent | SMILES: C1COCCN1 SELFIES: [C][C][O][C][C][N][Ring1][=Branch1] | |
| Scaffold A | SMILES: CN1Cc2ccccc2C(c2cc3ccccc3s2)C1 SELFIES: [C][N][C][C][=C][C][=C][C][=C][Ring1][=Branch1][C][Branch1][=C][C][=C][C][=C][C][=C][C][=C][Ring1][=Branch1][S][Ring1][=Branch2][C][Ring2][Ring1][Ring1] | |
| Scaffold B | SMILES: O=C(Nc1ccccc1)c1cn2ccccc2n1 SELFIES: [O][=C][Branch1][#Branch2][N][C][=C][C][=C][C][=C][Ring1][=Branch1][C][=C][N][C][=C][C][=C][C][Ring1][=Branch1][=N][Ring1][=Branch2] | |
| Scaffold C | SMILES: O=c1c(-c2cccs2)nc2cncnc2n1-c1ccccc1 SELFIES: [O][=C][C][Branch1][Branch2][C][=C][C][=C][S][Ring1][Branch1][=N][C][=C][N][=C][N][=C][Ring1][=Branch1][N][Ring1][#C][C][=C][C][=C][C][=C][Ring1][=Branch1] | |
| Scaffold D | SMILES: COc1ccccc1Nc1nc(Nc2ccccc2S(=O)(=O)C(C)C)c2cc[nH]c2n1 SELFIES: [C][O][C][=C][C][=C][C][=C][Ring1][=Branch1][N][C][=N][C][Branch2][Ring1][=Branch1][N][C][=C][C][=C][C][=C][Ring1][=Branch1][S][=Branch1][C][=O][=Branch1][C][=O][C][Branch1][C][C][C][=C][C][=C][NH1][C][Ring1][Branch1][=N][Ring2][Ring1][=Branch1] |
Molecular Property Prediction
Molecular property prediction estimates chemical, physical, and biological properties from molecular structure and context.
See all 201 papers