Coverage Before Control: Route-Instruction Grounding and Steering for Controllable Retrosynthesis
Organizations: The Chinese University of Hong Kong, Shenzhen
Abstract
Single-step retrosynthesis models are commonly evaluated by their ability to recover recorded reactions. In practice, chemists may need to choose among several precursor sets for the same product, for example to preserve a particular motif. Recovering a recorded answer alone does not establish this ability to follow a preference. Satisfying such requests requires both coverage of relevant alternatives and control over which alternatives are favored. We introduce Route-Instruction Grounding and Steering (RIGS), a two-stage framework for instruction-conditioned retrosynthesis. Stage A trains a language projector, teaching it which alternatives an instruction favors or discourages. Stage B uses the projector learned in Stage A to steer a frozen generative model through lightweight residual adapters. We construct nested one-to-many training supports by pairing each product with increasing numbers of candidate precursor sets. Extensive experiments demonstrate that broader support helps the model generate a wider range of alternatives, and RIGS can learn to guide generation according to instructions. The relationship between coverage and control is consistent across model scales but non-monotone.
Figures & tables
| Reference | Absolute P@1 (%) | Matched–Shuffled (pp) | Matched–Reference (pp) | ||||||||
| Support | Pooled recovery | Reference | Matched | ||||||||
| GraphDiT-8M | |||||||||||
| USPTO-MR | 2,348 | 8.48 | 8.98 | +0.08 | +2.03 | +0.74 | +1.37 | +0.51 | +1.91 | +0.86 | +2.54 |
| Top15 | 12,880 | 30.16 | 34.10 | +4.10 | +1.37 | +3.83 | +4.65 | +3.95 | +0.27 | +4.06 | +5.16 |
| Top30 | 16,922 | 30.20 | 40.20 | +12.89 | +10.70 | +14.06 | +18.52 | +10.00 | -0.66 | +18.24 | +27.73 |
| Top45 | 17,370 | 29.84 | 40.63 | +14.18 | +9.53 | +14.06 | +18.79 | +10.78 | +2.62 | +15.20 | +24.92 |
| Matched–Shuffled (pp) | Matched–Reference (pp) | |||||
| Reaction data | Guidance | Backbone | P@1 | N@10 | P@1 | N@10 |
| Pistachio | RDKit5 | 65M | +1.52 | +7.19 | +0.98 | +13.59 |
| USPTO | Structure | 8M | +3.55 | +3.43 | +5.54 | +10.57 |
| 65M | +8.09 | +18.44 | +14.74 | +35.79 | ||
| USPTO | Metric4 | 8M | +5.37 | +7.41 | +4.07 | +8.04 |
| 65M | +15.78 | +21.92 | +13.44 | +27.52 | ||
Appendix figures & tables34 assets
Supplementary material from the paper’s appendix.
Appendix
| Guided model ID | Stage-B epoch | |
|---|---|---|
| USPTO–Guide(RDKit5)–8M–USPTO-MR | 14 | .50 |
| USPTO–Guide(RDKit5)–8M–Top15 | 6 | .20 |
| USPTO–Guide(RDKit5)–8M–Top30 | 12 | .50 |
| USPTO–Guide(RDKit5)–8M–Top45 | 14 | .50 |
| USPTO–Guide(RDKit5)–8M–Top60 | 6 | .25 |
| USPTO–Guide(RDKit5)–65M–USPTO-MR | 14 | .50 |
| Support | Hit@1 | Hit@100 | Pooled | Unique valid /group | Validity | Duplicate rate |
|---|---|---|---|---|---|---|
| GraphDiT-8M | ||||||
| USPTO-MR | 6.17 | 59.30 | 2,348 | 37.475 | 63.49 | 26.01 |
| Top15 | 21.91 | 80.82 | 12,880 | 44.044 | 68.38 | 24.34 |
| Top30 | 18.91 | 82.89 | 16,922 | 53.074 | 68.09 | 15.01 |
| Top45 | 16.56 | 83.24 | 17,370 | 55.828 | 67.36 | 11.53 |
| Top60 | 14.77 | 82.77 | 17,378 | 57.067 | 66.14 | 9.07 |
| Support | P@1 | P@10 | N@1 | N@10 |
|---|---|---|---|---|
| GraphDiT-8M | ||||
| USPTO-MR | ||||
| Top15 | ||||
| Top30 | ||||
| Top45 | ||||
| Top60 | ||||
| Support | Arm | P@1 | P@10 | N@1 | N@10 | Validity |
|---|---|---|---|---|---|---|
| GraphDiT-8M | ||||||
| USPTO-MR | Reference | 8.477 | 25.547 | 8.555 | 25.391 | 63.488 |
| Matched | 8.984 | 27.461 | 7.695 | 22.852 | 60.816 | |
| Shuffled | 8.906 | 25.430 | 8.438 | 24.219 | 60.913 | |
| Top15 | Reference | 30.156 | 58.789 | 30.117 | 58.242 | 68.382 |
| Matched | 34.102 | 59.062 | 26.055 | 53.086 | 67.084 | |
| Support | P@1 | P@10 | N@10 |
|---|---|---|---|
| GraphDiT-8M | |||
| USPTO-MR | |||
| Top15 | |||
| Top30 | |||
| Top45 | |||
| Top60 | |||
| Support | Selected B (coord.) | P@1 | N@1 | ||
|---|---|---|---|---|---|
| 8M | |||||
| Top15 | 58,730 (14) | ||||
| Top30 | 33,560 (8) | ||||
| Top45 | 50,340 (12) | ||||
| Top60 | reused | ||||
| 65M | |||||
| Reference | Guidance | Shuffled | (pp) | |||||
|---|---|---|---|---|---|---|---|---|
| Reverse | Cov. | Acc. | Cov. | Acc. | Cov. | Acc. | Cov. | Acc. |
| 1 | 63.00 | 63.00 | 71.00 | 71.00 | 57.50 | 57.50 | ||
| 3 | 76.50 | 59.50 | 75.00 | 62.83 | 73.50 | 56.83 | ||
| 5 | 79.00 | 57.90 | 76.50 | 57.90 | 76.00 | 52.60 | ||
| 10 | 80.00 | 51.25 | 80.00 | 47.85 | 77.00 | 42.90 | ||
| Support | P@1 | P@10 | N@1 | N@10 | |
|---|---|---|---|---|---|
| USPTO-MR | +0.04 | +0.63 | -0.16 | -1.25 | -0.04 |
| Top15 | +4.73 | +2.27 | -4.69 | -5.00 | -0.05 |
| Top30 | +4.80 | +3.28 | -4.22 | -8.67 | -0.08 |
| Top45 | +6.60 | +4.41 | -6.37 | -9.61 | +0.01 |
| Top60 | +5.63 | +4.88 | -5.94 | -8.36 | +0.00 |
| Matched–Shuffled | Matched–Reference | Validity | ||||
| Support | ||||||
| GraphDiT-8M | ||||||
| USPTO-MR | [-1pt] | [-1pt] | [-1pt] | [-1pt] | [-1pt] | [-1pt] |
| Top15 | [-1pt] | [-1pt] | [-1pt] | [-1pt] | [-1pt] | [-1pt] |
| Top30 | [-1pt] | [-1pt] | [-1pt] | [-1pt] | [-1pt] | [-1pt] |
| Top45 | [-1pt] | [-1pt] | [-1pt] | [-1pt] | [-1pt] | [-1pt] |
| Capacity | P@1 | P@10 | N@1 | N@10 | Validity | |
|---|---|---|---|---|---|---|
| 8M | ||||||
| 65M |
| Metric | RIGS M | RIGS S | Direct M | Direct S | RIGS M S | Direct M S | Direct RIGS DiD [95% CI] |
|---|---|---|---|---|---|---|---|
| P@1 | 24.80 | 12.03 | 23.26 | 11.31 | [ ] | ||
| P@3 | 37.09 | 21.56 | 34.70 | 21.27 | [ ] | ||
| P@5 | 39.83 | 25.11 | 37.74 | 25.36 | [ ] | ||
| P@10 | 42.60 | 29.37 | 41.39 | 28.73 | [ ] | ||
| N@1 | 2.93 | 13.62 | 5.08 | 12.74 | [ ] | ||
| N@3 | 5.46 | 22.42 | 9.76 | 22.49 | [ ] |
| (a) Literal-prefix proposal support | ||||
|---|---|---|---|---|
| Proposal | Hit@ | Unique valid | Duplicate rate | |
| Reference | 5 | 24.38 | 3.40 | 1.55 |
| Reference | 25 | 50.98 | 15.68 | 6.08 |
| Reference | 100 | 64.80 | 53.53 | 15.23 |
| Matched | 5 | 18.44 | 2.64 | 0.62 |
| Matched | 25 | 45.35 | 12.59 | 2.42 |
| Proposal | Head seed | Selected epoch | P@1 | N@1 | RDKit regret |
|---|---|---|---|---|---|
| Reference | 42 (primary) | 3 | 22.23 | 3.32 | 0.510 |
| Reference | 43 | 1 | 23.05 | 9.22 | 0.895 |
| Reference | 44 | 2 | 22.38 | 5.94 | 0.677 |
| Matched (e12) | 42 (primary) | 3 | 19.06 | 0.62 | 0.588 |
| Matched (e12) | 43 | 1 | 21.37 | 1.13 | 0.814 |
| Matched (e12) | 44 | 2 | 19.88 | 0.86 | 0.689 |
| Arm | P@1 | P@3 | P@5 | P@10 |
|---|---|---|---|---|
| USPTO–Guide(Struct)–8M–Top30 e22, | ||||
| Reference | 30.554 | 49.674 | 57.079 | 64.114 |
| Matched | 35.382 | 53.525 | 58.960 | 63.181 |
| Shuffled | 32.065 | 49.348 | 54.902 | 59.775 |
| USPTO–Guide(Struct)–65M–Top30 e26, | ||||
| Reference | 31.117 | 51.466 | 59.064 | 66.558 |
| Metric | 8M, e22, | 65M, e26, |
|---|---|---|
| P@1 | +3.554 [2.491, 4.598] | +8.089 [6.910, 9.243] |
| P@10 | +3.769 [2.939, 4.573] | +5.003 [4.155, 5.853] |
| N@1 | +3.908 [3.082, 4.755] | +7.799 [6.878, 8.753] |
| N@10 | +3.434 [2.525, 4.341] | +18.444 [17.245, 19.651] |
| Validity | +0.051 [-0.086, +0.190] | -0.035 [-0.278, +0.212] |
| Capacity | Support | Validity | |||
|---|---|---|---|---|---|
| 8M | USPTO-MR | ||||
| 8M | Top15 | ||||
| 8M | Top30 | ||||
| 8M | Top45 | ||||
| 8M | Top60 | ||||
| 65M | USPTO-MR |
| Preferred recovery | Disfavored recovery | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Arm | Hit | P@1 | P@3 | P@5 | P@10 | N@1 | N@3 | N@5 | N@10 | Validity |
| Reference | 35.59 | 3.48 | 7.89 | 11.52 | 18.52 | 3.83 | 7.77 | 10.51 | 18.63 | 73.82 |
| Matched | 35.63 | 4.45 | 10.47 | 14.80 | 21.29 | 0.66 | 1.99 | 3.20 | 5.04 | 69.39 |
| Shuffled | 23.91 | 2.93 | 5.90 | 7.97 | 12.62 | 2.42 | 6.13 | 8.83 | 12.23 | 69.26 |
| Matched–Shuffled | Matched–Reference | ||||
| Support | P@1 | N@10 | P@1 | Validity | |
| GraphDiT-8M | |||||
| USPTO-MR | |||||
| Top15 | |||||
| Top30 | |||||
| Top45 | |||||
| Unit | Definition |
|---|---|
| Product/case | One split-local canonical target product and its candidate pool. |
| Graph route | One candidate precursor set that survives canonicalization, mapping, graph-capacity, and route-binding checks. |
| Semantic group | One case–instruction–polarity comparison over several routes. |
| Paired family | The two opposite-polarity semantic groups for one case and axis. |
| Candidate occurrence | A route appearing inside a semantic group; not a distinct base route. |
| Support | Products | Precursor sets | Avg./ product |
|---|---|---|---|
| USPTO-MR | 32,584 | 77,110 | 2.37 |
| Top15 | 31,912 | 470,308 | 14.74 |
| Top30 | 31,912 | 922,977 | 28.92 |
| Top45 | 31,912 | 1,360,737 | 42.64 |
| Top60 | 31,912 | 1,788,168 | 56.03 |
| Dataset | Support | Scale(s) | Train P/R | Validation P/R | Test P/R | Total P/R |
|---|---|---|---|---|---|---|
| USPTO | USPTO-MR | Both | 19,022 / 41,488 | 6,098 / 14,740 | 7,464 / 20,882 | 32,584 / 77,110 |
| USPTO | Top15 | Both | 18,595 / 274,018 | 5,975 / 88,142 | 7,342 / 108,148 | 31,912 / 470,308 |
| USPTO | Top30 | Both | 18,595 / 537,777 | 5,975 / 172,969 | 7,342 / 212,231 | 31,912 / 922,977 |
| USPTO | Top45 | Both | 18,595 / 793,099 | 5,975 / 254,984 | 7,342 / 312,654 | 31,912 / 1,360,737 |
| USPTO | Top60 | Both | 18,595 / 1,042,205 | 5,975 / 335,110 | 7,342 / 410,853 | 31,912 / 1,788,168 |
| Pistachio | Top30 | 65M | 36,931 / 1,189,822 | 391 / 13,142 | 3,516 / 17,549 | 40,838 / 1,220,513 |
| Suite | Signal | Construction and software | Two canonical examples |
|---|---|---|---|
| Structure | Product-local structural motifs, connectivity, fragment count, and retain/avoid criteria. | RDKit extracts candidate evidence; a frozen LLM listwise annotator proposes at most five relative criteria and route preferences. Deterministic filtering forms prefer/avoid views; RXNMapper ( Schwaller et al., 2021 ) and RDKit bind surviving routes to executable graphs. | Prefer precursors that already contain the imidazole ring directly attached to the propyl chain. Avoid precursors containing heteroatoms other than bromine and oxygen. |
| Metric4 | mosyn.synthetic_complexity_delta , mosyn.procurement_burden , rdkit.halogen_atom_count , and rdkit.ring_count . | MOSYN joins deterministic route metrics; SCScore supplies molecular complexity and ASKCOS buyables data supplies procurement inputs. RDKit computes the two structural counts. Pool-normalized signed tails create the two polarities. | Choose disconnections that deliver a larger reduction in synthetic complexity. Choose precursor sets with a lighter procurement burden. |
| RDKit5 | RDKit halogen-atom, carbonyl-group, total-ring, aromatic-ring, and heterocycle counts. | RDKit atom/ring APIs and fixed SMARTS compute each descriptor over the complete precursor set. Pool-normalized, tie-safe signed tails produce labels; deterministic rule-authored templates produce wording. | Choose precursor sets with fewer halogen atoms. Choose precursor sets with more aromatic rings. |
| Dataset | Support | Train G/R | Validation G/R | Test G/R |
|---|---|---|---|---|
| RDKit5 | ||||
| USPTO | USPTO-MR | 60,404 / 41,488 | 20,610 / 14,740 | 25,598 / 20,882 |
| USPTO | Top15 | 82,912 / 261,905 | 26,644 / 84,436 | 32,370 / 103,112 |
| USPTO | Top30 | 130,880 / 528,659 | 42,116 / 170,286 | 51,522 / 208,613 |
| USPTO | Top45 | 99,548 / 768,621 | 31,970 / 247,495 | 39,110 / 303,070 |
| USPTO | Top60 | 134,226 / 1,046,897 | 43,100 / 336,212 | 52,564 / 410,175 |
| Case universe / view | Cases | Raw route records | Graph-resolved route keys | Paired families | Signed groups |
|---|---|---|---|---|---|
| Up-to-100 source test universe | 7,342 | 733,017 | 666,086 | 29,320 | 58,640 |
| Five-axis graph-bound execution view | 7,269 | 725,812 | 659,056 | 29,314 | 58,628 |
| Exact-100 eligible universe | 7,320 | 732,000 | 665,146 | 29,262 | 58,524 |
| Strict-Top100 formal cohort | 1,201 | 120,100 | 107,801 | 1,280 | 2,560 |
| Guided experiments | Route encoder | Dimension |
|---|---|---|
| USPTO 8M Top30: RDKit5, Metric4, and Structure | Pretrained reaction-pair encoder (Top30) | 256 |
| USPTO 8M Top15/Top45/Top60: RDKit5 and Metric4 | Pretrained reaction-pair encoder (Top60) | 256 |
| USPTO-MR 8M: RDKit5 and Metric4 | Native | 256 |
| USPTO 65M: all RDKit5/Metric4 supports and Top30 Structure | Native | 512 |
| Pistachio 65M Top30: RDKit5 | Native | 512 |
| Symbol | Definition |
|---|---|
| Support and supervision | |
| Product graph and candidate precursor-set graph. | |
| Product, instruction, indexed pool, and supervision record. | |
| Labeled groups for training and validation. | |
| Nominal support size, realized size, and retained ordered template-expansion prefix. | |
| Preferred/avoided index sets; listwise target distribution. | |
| Suite / scale | Training epochs Stage A / B | Stage-A selected epoch | Stage-B test |
|---|---|---|---|
| Structure / 8M | 30 / 30 | 28 | |
| Structure / 65M | 20 / 30 | 20 |