Files
assay-transfer-tool/README.md

58 lines
1.8 KiB
Markdown
Raw Permalink Normal View History

---
license: apache-2.0
base_model: jiosephlee/Intern-S1-mini-lm
pipeline_tag: text-generation
tags:
- chemistry
- drug-discovery
- admet
- assay-transfer
- smiles
library_name: transformers
---
# assay-transfer-tool
A full-parameter SFT of the `Qwen3ForCausalLM` Intern-S1-mini language backbone
(`jiosephlee/Intern-S1-mini-lm`) for **binary assay-transfer prediction** on
small molecules. Given a molecule (SMILES) and a paired-choice prompt, the model
answers with `(A)` or `(B)`.
The model uses the Intern SMILES-aware tokenizer, so load with
`trust_remote_code=True`.
## Training
- **Base model:** `jiosephlee/Intern-S1-mini-lm` (Qwen3ForCausalLM, vocab 153216)
- **Dataset:** `jiosephlee/assay-transfer-intern` (158,429 train rows)
- **Regime:** full-parameter BF16, packing + padding-free, gradient checkpointing,
Liger fused linear cross-entropy, `paged_adamw_8bit`
- **Chat template:** enabled, thinking disabled; completions are `(A)` / `(B)`
- **LR:** 2e-5 base, with SMILES input-embedding rows trained at 1.5x
- **Max length:** 4096, 1 epoch
This checkpoint is the best-validation snapshot (step 50), promoted by the
assay-transfer callback on binary macro-F1.
## Validation metrics (source_value split, n=1703)
| Metric | Value |
| --- | --- |
| Binary macro-F1 | 0.6612 |
| Binary accuracy | 0.7046 |
| Parse rate | 1.00 |
| assay_concept group-avg macro-F1 | 0.6321 |
| tanimoto_bucket group-avg macro-F1 | 0.6316 |
Per-assay macro-F1: Fa 0.532, Fg 0.593, Fh 0.704, oral_bioavailability 0.600,
oral_exposure 0.732. Per-Tanimoto-bucket macro-F1: high 0.664, low 0.600.
## Usage
```python
from transformers import AutoModelForCausalLM, AutoTokenizer
tok = AutoTokenizer.from_pretrained("jiosephlee/assay-transfer-tool", trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained("jiosephlee/assay-transfer-tool", torch_dtype="bfloat16")
```