← Files NVIDIA BioNeMo Agent ToolkitARCHIVED FILE

skills/complexa-binder-design/vendor/ipsae/VENDOR.md

1.78 KB · Sep 30, 2026 · 23:14 UTC

↓ Download file

# Vendored: ipsae.py (Dunbrack lab)

`ipsae.py` is vendored **verbatim, unmodified** so the pipeline's interface score
(ipSAE) comes from the canonical reference implementation rather than a re-derivation.

| | |
|---|---|
| **Source** | https://github.com/DunbrackLab/IPSAE |
| **File** | `https://raw.githubusercontent.com/DunbrackLab/IPSAE/main/ipsae.py` |
| **Version** | v4 (header dated "January 3, 2026: Fixed Boltz2 issues") |
| **Retrieved** | 2026-06-10 |
| **License** | MIT (per the script header: free to modify/redistribute for non-commercial and commercial use, provided the header information is reproduced) |
| **Paper** | Dunbrack, "Rēs ipSAE loquunt: What's wrong with AlphaFold's ipTM score and how to fix it", bioRxiv 2025.02.10.637595 |

## Why this version

v4 explicitly supports **Boltz / Boltz2** outputs in both PDB and mmCIF form and fixed
chain-ID handling for Boltz2 (the header notes the 2026-01-03 Boltz2 fix). The Boltz
invocation is:

```
python ipsae.py <pae.npz> <model.cif> <pae_cutoff> <dist_cutoff>
```

It reads the PAE matrix from the `.npz` key `pae`; the sibling `plddt_*.npz` and
`confidence_*.json` files are **optional** (they only affect the pDockQ and `ipTM_af`
report columns, not the ipSAE value). ipSAE depends only on `pae_cutoff` (paper
default **10**); `dist_cutoff` affects only the interface-residue count columns.

## How the pipeline calls it

`scripts/validate_binders.py` converts each Boltz2 NIM response into the file trio
ipsae.py expects (`<name>.cif`, `pae_<name>.npz`, optional `confidence_<name>.json`),
runs ipsae.py as a subprocess, and parses the `*_<pae>_<dist>.txt` output. For a
binder↔target complex it takes **`ipsae_min` = min(asym A→B, asym B→A)** of the
`ipSAE` (d0res) column. Do not edit `ipsae.py` here; re-vendor from upstream to update.

SHA-256: 16fb90415c27788505608b7dd6eaa8b47358ad5e324d74948244e5dc0752aa81