# Iupac Name Identification Biot5

> Identify the IUPAC name of a molecule using BioT5 question answering model. Use this skill when: (1) User wants to find the IUPAC name of a molecule, (2) User asks "What is the IUPAC name?" or "What's the systematic name?", (3) User provides a SMILES string and wants the IUPAC nomenclature.

- Skill: `pharmolix/iupac-name-identification-biot5` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add pharmolix/iupac-name-identification-biot5`
- Raw SKILL.md: https://api.skillmd.com/api/skills/pharmolix/iupac-name-identification-biot5/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- License: MIT
- Author: pharmolix (https://skillmd.com/u/pharmolix)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/pharmolix/iupac-name-identification-biot5

---


# IUPAC Name Identification (BioT5)

This skill identifies the IUPAC name of a molecule using the BioT5 question answering model.

## When to Use

- User asks for the IUPAC name of a molecule
- User provides a SMILES string and wants systematic nomenclature
- User asks "What is the IUPAC name?" or "What's the systematic name?"

## Workflow

### Step 1: Get the Molecule

**If user provides a molecule name** (e.g., "aspirin"):
```python
from open_biomed.tools.tool_registry import TOOLS

tool = TOOLS["molecule_name_request"]
result, message = tool.run(accession="aspirin")
molecule = result[0]  # Returns a list of molecules
```

**If user provides a SMILES string**:
```python
from open_biomed.data import Molecule

molecule = Molecule.from_smiles("CC(=O)OC1=CC=CC=C1C(=O)O")
```

### Step 2: Ask for IUPAC Name

Use the molecule question answering tool:
```python
from open_biomed.data import Text
from open_biomed.tools.tool_registry import TOOLS

qa_tool = TOOLS["molecule_question_answering"]
question = Text.from_str("What's the IUPAC name of this molecule?")
result, message = qa_tool.run(molecule=molecule, text=question)
print(result)  # IUPAC name
```

## Expected Outputs

| Input | Output | Description |
|-------|--------|-------------|
| SMILES or molecule name | IUPAC name string | Systematic chemical nomenclature |

## Example Usage

**Input**: "What is the IUPAC name of aspirin?"

**Workflow**:
1. Retrieve aspirin molecule from PubChem
2. Ask BioT5: "What's the IUPAC name of this molecule?"
3. Return the IUPAC name

**Expected output**: "2-acetyloxybenzoic acid" or similar systematic name

## Model Options

The `molecule_question_answering` tool supports multiple models:

| Model | Description |
|-------|-------------|
| `biot5` (default) | BioT5 model for biomedical QA |
| `molt5` | MolT5 model specialized for molecules |

## Error Handling

### Molecule Not Found

**Symptom**: PubChem request fails for molecule name.

**Solution**: Ask user for SMILES string directly.

### QA Model Fails

**Symptom**: No IUPAC name returned.

**Solution**:
- Try alternative question phrasing
- Use RDKit's MolToIUPACName as fallback:
```python
from rdkit.Chem import MolToIUPACName
iupac = MolToIUPACName(molecule.rdmol)
```

## Notes

- IUPAC names generated by the model may not be the most standard form
- For complex molecules, the model may provide simplified names
- Cross-reference with PubChem or ChemDraw for verification

