Computational Chemistry · Teaching Note

讀懂 Nico 的 Cas9 變體篩選漏斗(v5 / v6)

用物理人的語言,把每一層在幹嘛、Nico 想往哪走、以及 kinetics 那一維該怎麼談,一次講清楚。

Cas9 分子機器抓住 DNA 與 guide RNA

0 一頁總覽

Nico 這台漏斗,本質是候選削減機,不是「物理真理機」。SpCas9(1368 殘基)的多點突變庫組合爆炸(10⁴–10⁵⁺),濕實驗一輪只做得起 ~10–50 個,所以用便宜、會看核酸、可以有雜訊的篩子在頂層把庫富集,把貴的物理留給少數存活者。

處理量在算什麼你的類比
Phase 1 序列10⁴–10⁵序列合不合理(幾何/親和/演化/摺疊/溶解)便宜 descriptor 初篩
Phase 2 結構100–500 摺疊疊出 all-atom 複合體 + 清座標建結構 + minimize
Phase 3 打分10–100結合能 ΔGbind(三條路)隱溶劑單點 / AIMD 系綜
Phase 4 FEP1–5精確相對 ΔΔGbindRPA / CCSD(T) 級把關
貫穿全文的重點:漏斗每一個定量分數都是「平衡結合自由能 ΔGbind(外加摺疊穩定 ΔΔGfold)。但 Cas9 的專一性由「動力學」決定(HNH 構形檢查點 / kinetic proofreading),而動力學是態函數 ΔG 數學上碰不到的一維。→ 漏斗是很棒的「結合可行性富集器」,但不是專一性引擎

1 名詞速查

PAM:Cas9 動手前先找的短 DNA 標記(NGG)。找到才開始解 DNA。
R-loop:sgRNA 與 target DNA 從 PAM 端像拉鏈配對、頂開另一股,形成的 RNA:DNA 雜合。
RNP:蛋白+核酸複合體。Cas9 = 蛋白+sgRNA+DNA(+Mg²⁺),缺核酸就沒生物學。
Inverse folding:AF 問「序列→結構」;反向摺疊問「給定固定骨架,哪些序列會摺成它」。
ΔΔGfold vs ΔΔGbind(最重要):前者=蛋白自己還折不折得起來;後者=複合體抓不抓得牢。是熱力學循環不同邊、可號相反。
pLDDT / PAE:摺疊器對自己座標的信心(learned error bars),不是實驗準度、不是能量。
隱溶劑 / PB:把顯性水換成介電連續體+離子屏蔽近似溶劑靜電(=VASPsol/COSMO 那套)。
介電 override(pdie 4–10):MM-PBSA 裡溶質內部介電(非溶劑 80),蛋白預設 ~1–2,對帶電骨架調高。是旋鈕不是常數。
Kinetic proofreading:把不可逆的切割藏在慢的構形檢查點後,讓錯基質先脫離。專一性 ∝ kcleave/koff不是 ∝ 1/Kd
I → D state:HNH 核酸酶域要從中間態 docking 進催化活性態才會切。

2 核心問題與設計哲學

為什麼需要漏斗:20 個位點就有 ~10⁵ 雙突變、~10⁷ 三突變,濕實驗做不起百萬個。漏斗唯一的任務:從天文數字的庫裡便宜地挑出「值得真的合成」的 ~10–50 個。

「Information Economy」每往下一層,每個變體更貴、但變體更少,總成本 =(便宜×很多)+(昂貴×很少)有界。一個把 90% 明顯垃圾便宜刷掉的雜訊篩子,就算不準也省下巨量下游成本。
階層篩選漏斗,從很多候選收斂到少數
階層漏斗:頂層便宜工具處理 10⁵ 個變體做富集,底層昂貴物理只跑少數存活者——與你熟的多層 DFT 篩選(PBE 掃全部、HSE/GW 只留給存活者)同構。

三個設計直覺(讀懂 Nico 每個選擇的鑰匙):

  1. 便宜雜訊在前、昂貴精準在後:早期誤殺好變體便宜可容忍;到濕實驗的 false positive 才貴。
  2. 正交多票否決:每個閘門攔不同失敗模式,要全過才前進——不是相加成一個總能量。
  3. 富集不是真理:頂層工具是「提高存活池好貨比例」,不是最終排名。用「有沒有 MD 準」評它就搞錯重點。

3 Phase 1:序列級篩子(10⁴–10⁵ → 100–1000)

全部「只吃序列、不折疊、一次前向推論」。六個正交閘門:

Gate 1a — LigandMPNN 主篩

做什麼:把整個 Cas9+核酸骨架固定,逐殘基問「這位置放這胺基酸合不合理」。關鍵:它的圖包含 DNA/RNA/離子,會懲罰撞到 guide 或 target 的序列。
為什麼 Nico 用:Cas9 是 RNP,最要命的殘基都朝著核酸。v3/v4 的通用 ESM-IF1 對核酸是盲的。換成 LigandMPNN 是 v5 最重要的工具決策。
物理類比:對固定 host lattice(含 adsorbate 原子)打 site-occupancy 分數。ProteinMPNN 像把核酸從 supercell 刪掉再算。
⚠ 它給的是 pseudo-energy / log-likelihood,沒校準到 kcal/mol,只能排序、不能當 ΔG 加總。

Gate 1b — DeePNAP

做什麼:ProNAB 訓練的深度迴歸器,不建結構直接從序列預測結合的變化量 ΔΔGbind / ΔKd(是變化,不是絕對 Kd)。CPU 秒級。
為什麼:唯一直接指名「結合」目標量的、又便宜,當獨立一票。
物理類比:ML surrogate / MLP 取代昂貴能量評估——像用迴歸從組成猜吸附能。
⚠ domain-of-applicability:多點 Cas9 突變很可能遠離 ProNAB 分布,外推像把 MLP 用在沒 fit 過的組態。

Gate 1c — ESM-2 + thermoMPNN v6 新增 + CamSol + EvoEF2

ESM-2:蛋白語言模型,打「演化語法合理性」(只看序列,是 prior 不是 measurement)。
thermoMPNN(v6 新增):Megascale 27 萬筆訓練,預測 ΔΔGfold(摺疊穩定度)。ThermoMPNN-D 做雙突變。
CamSol:溶解度/聚集;EvoEF2:經驗力場式 scaffold 穩定度(thermoMPNN 的非 ML、可解釋兄弟)。
為什麼 v6 加 thermoMPNN:補漏洞——一個突變可以「紙上結合漂亮但根本折不起來」。把「會不會摺」和「結不結合」兩種失敗模式分開
⚠ 鐵則:ΔΔGfold ≠ ΔΔGbind。thermoMPNN 給的是「蛋白自己穩不穩」,不是「抓不抓得牢」。

4 Phase 2:結構級(100–1000 → 100–500 摺疊)

為什麼需要 3D:Phase 1 全是「序列進、分數出」,看不到「這顆突變側鏈實際擺哪、跟哪個 DNA 磷酸撞到」。類比:光有化學式 Fe₃Ni 排不出能量,得先有 POSCAR。

Gate 2a — AlphaFold3 / Chai-1 / Boltz-2(會看核酸的摺疊器)

做什麼:輸入蛋白+sgRNA+DNA+Mg²⁺,吐整個 RNP 的 all-atom 座標 + 信心圖(pLDDT/PAE)。~1–3 min/複合體。
為什麼:AF3 介面最準當 primary;但 AF3 權重非商用、叢集部署有法律摩擦,故備開源退路 Chai-1 / Boltz-2。「primary + 可互換」不被單一授權綁死。
物理類比:學出來的結構生成器(對應你「從頭建初始結構」)。pLDDT/PAE 像收斂/誤差診斷。

Gate 2b — 鬆弛作為「選擇」:FoldX vs Mini-MD v6 改動

做什麼:ML 座標是「生的」,有 clash,直接算連續介質靜電會爆炸。v6 二選一:FoldX(經驗、快轉側鏈、CPU 秒級)或 Mini-MD(OpenMM/GROMACS 最小化+短 NVT,顯式 ff14SB/OL15/OL3 真物理鬆弛)。
物理類比(你的主場):Mini-MD 就是你跑生產 MD 前的 minimize+equilibrate;跳過就像對重疊原子做單點,SCF 不收斂。用 Mini-MD 還能與後面打分共用力場、能量面自洽。

5 Phase 3:打分(10–100)——v6 把物理升為主線

Path A — 靜態 MM-PBSA v6 primary

做什麼:用一張鬆弛快照估結合能:ΔGbind ≈ EMM(Coulomb+vdW) + Gsolv(PB)。能抓 ML 抹平的斷裂鹽橋。
為什麼 v6 升 primary最響亮的訊號——把可解釋、能歸因到殘基的物理能量分解推到預設,把黑盒 DL 降為備選。
物理類比:力場版隱溶劑結合能 = DFT + implicit solvation(VASPsol)算吸附能。單快照的問題跟你算吸附能一樣。
⚠ 對 dense protein-RNA ranking 相關性天花板約 r≈0.56;是「top-20% 粗篩」不是精排。

Path B — PDIScore + AlphaBridge(DL 幾何打分)v6 alternate

做什麼:完全不算物理。PDIScore=graph 讀「原子–核苷酸距離」;AlphaBridge=直接從 AF3 的 PAE/pLDDT 抽介面剛性。極快、可吃 unrelaxed。
物理類比:材料界的 ML descriptor(像用 d-band center 迴歸先排 HEA)。
⚠ PDIScore 論文自報 ranking PCC≈0.50——能刷爛貨、抓大趨勢,不能分辨兩個接近的候選誰較好。

Path C — 系綜 MD + MM-PBSA premium

做什麼:跑 20–50 ns 顯性溶劑 MD,沿途多快照做 MM-PBSA 再平均。對帶電骨架把內部介電 override 到 4–10。
物理類比:單快照 vs 系綜 = 0 K 靜態能量 vs 有限溫度自由能。Path C 像跑 AIMD/TI 取系綜平均,把熵與構型漲落納入。
⚠ 介電 override 一定要做 pdie 2/4/8 敏感度掃描報成誤差棒(等同收斂測試)。

6 Phase 4:Alchemical FEP(1–5)——唯一的精確物理

概念(你會很有共鳴):沿一個非物理的 λ 座標把 WT 側鏈煉金術般 morph 成 mutant,在複合體與 apo 各做一次,靠熱力學循環讓算不出的邊抵消,得到精確 ΔΔGbind = ΔGmut(複合體) − ΔGmut(apo)pmx 建 hybrid 拓撲,MBAR 把所有 λ 窗最優合成一個數+誤差(=WHAM 的 binless 繼承者)。

物理類比:就是你認得的熱力學循環(Hess/Born-Haber)+ TI / adiabatic switching。

⚠ 一個要更正的常見誤解(很重要) v6 明確聲稱它能處理會改變淨電荷的胺基酸突變(例如 Ala→Asp),做法是同時做 co-alchemical 反離子變換維持電中性——也就是說 Nico 已經想到 FEP 最容易出錯的那個 case,不是忽略它
所以對他 push 的不是「你沒做 charge-changing」(他有),而是:「counter-ion co-transformation 對 Cas9 這種中和骨架接觸鹼性殘基的突變,收斂/可靠度到底如何?值得 stress-test。」——更精準、也更站得住。

⚠ 範圍是蛋白胺基酸突變(不做 DNA/RNA 鹼基 alchemy)。而且它是 end-state 平衡量:再精確,對速率、障礙、構形檢查點一無所知

7 v3/v4 → v5 → v6:讀出 Nico 的意圖

版本動作透露的意圖
v3/v4通用工具(ESM-IF1)+ 有 off-target specificity MD tier泛用 + 有嘗試碰專一性
v5換核酸感知工具、模組化打分、AF3 primary;拿掉 specificity tier;DL 推論當 primary「現代化、快、模組化」——但唯一碰專一性的層消失了
v6thermoMPNN;Gate 2b 做成 FoldX/Mini-MD 選擇;把 靜態 MM-PBSA 升為 primary預設越來越物理——把物理邊界往漏斗上方推
讀出的核心Nico 是個熱力學腦、會自我修正的設計者——ML 在頂層負責通量,物理在底層負責信任唯一一直沒回來的,是「專一性 / 判別」這一維:這不是疏忽,是這台「熱力學優先」漏斗依它自己一致的邏輯,留下未量的那一軸。(v6 的「geometric specificity」只是目標宣示、沒有對應模組。)

8 最關鍵的一維:kinetics(構形檢查點)

Cas9 不是「結合=切」的開關,是多步機器。辨識 on/off-target 主要發生在第 3 步(構形檢查點),不是結合那步:

1. PAM 辨識找到 NGG 2. R-loop逐鹼基配對 3. 構形檢查點HNH docking (I→D)rate-limiting · 對 mismatch 敏感 4. 切割到位才切 5. 釋放 On-target:HNH docking → 切k_cleave 快 Off-target:HNH 卡住 → 先脫離k_off 贏過 k_cleave
辨識 on/off-target 主要發生在第 3 步(構形檢查點),不是第 1–2 步(結合)。
HNH 域 on-target docking 切割 vs off-target 卡住脫離
左:完全配對時 HNH 域 docking 進活性態、切割(綠)。右:有 mismatch 時同一個域卡在抬起的不活性態、切不下去而脫離(紅)。高保真變體對 on/off-target 的結合都跟野生型差不多,靠的正是這一步的差別(Chen 2017;Dagdas 2017)。
一句話講死:ΔGbind態函數,只看 end-state「已結合 vs 未結合」的差,數學上不含任何「路徑上的障礙高度」。所以無論 FEP 收斂到多化學精度,都變不出 HNH docking 的活化能障 ΔG——這是結構性的不可能,不是精度不夠。就像你無法從 ΔGreaction 反推速率。
深井(結合)與高障礙(動力學)的能量地景
funnel 算的是井深(ΔGbind);Cas9 成敗由障礙高度(ΔG,HNH docking)決定。off-target 是被困在深井裡的 kinetic trap——穩定結合=深井,但跨不過障礙去切。MM-PBSA 算井深,不算障礙。
為什麼這麼容易被漏(對任何人都一樣)可觀測性偏誤:結合看得見摸得著,直覺「抓得牢=作用強」。② 工具成熟度落差:平衡結合工具鏈幾十年成熟、可高通量;kinetic barrier 沒有現成高通量工具。③ 歷史包袱:v3/v4 那個 specificity tier 被 v5 拿掉,而它剛好是唯一碰專一性的層。
就像早期只用 ΔGads 當 HER descriptor(好算、可掃),但真正限速常是 barrier——NEB 又貴又難自動化。Cas9 funnel 走的是一模一樣的路。

我們實際跑了什麼(把漏斗上游接上真硬體)

前面都在講「該怎麼讀這台漏斗」。這一節是進度:漏斗上游的幾個閘門,我們已經在國網 Nano5 GPU 上實際跑起來了。更關鍵的是——Gate 2a 摺出來的結構,剛好給了上一節 kinetics 論點一個我們自己算出來的證據

你在國網跑的真軌跡 — WT SpCas9 的 2 ns MD(Cα trace,40 幀,H100)。顏色=該殘基的 RMSF(藍=剛硬 → 紅=最會動)。紅色那一團就是 HNH 檢查點域,明顯比其餘骨架更會擺動。可拖曳旋轉;apo 蛋白,動作幅度是上限。

Gate 1c — ESM-2(演化適應度)已跑 ✓

算了什麼:14 個變體面板(催化殘基 + eSpCas9 + HF1 + HypaCas9)逐一打演化分,外加 REC3 區(660–700)整段 site-saturation 掃描(779 變體)+ 熱圖。
結果:催化殘基最保守(−10 ~ −13,動不得,符合預期);eSpCas9 的 K1003A/R1060A、HypaCas9 的 H698A 最可容忍(−4 ~ −6)→ 演化上不介意,是好候選。本機 CPU 與 H100 叢集逐位元完全重現
物理類比:先用便宜 descriptor 把明顯不合理的組成刷掉——是 prior,不是 measurement。

Gate 1a — LigandMPNN(核酸感知的序列打分)已跑 ✓

算了什麼:把整個 RNP(蛋白+sgRNA+DNA)餵進去,對蛋白逐位打分,graph 裡含核酸當 context——這正是 ESM-2 看不到的那一塊。跟 ESM-2 同一批變體對照。
結果:兩者都抓到催化殘基該罰(sanity check 過);工程專一性變體被判「結構上可容忍」(同 thermoMPNN)。誠實修正:我原本猜「它看得到 DNA → 會更罰 nt-groove 突變」——沒成立,因為它量的是「序列對骨架的契合」,不是「DNA 結合強度」;拿掉一個接觸 DNA 的 Lys 不會讓蛋白 fold 變差。
⚠ 印證教材前面說的:LigandMPNN 的加值是「不會設計出撞到 guide/target 的序列」,不是直接量結合。

Gate 2a — Chai-1(摺 WT RNP)已跑 ✓

算了什麼:把完整 WT SpCas9 + sgRNA + target/nontarget DNA(1526 tokens)一起摺成 all-atom 結構,H200 上跑,5 個 model、零 inter-chain clash,逐域做 pLDDT 品管。
結果(兩極):scaffold 很硬 —— REC lobe / RuvC 核心 pLDDT 78–85、sgRNA 75;但 HNH 域只有 63、target DNA 只有 64,最低信心片段是 HNH 的 L1 linker(765–809,pLDDT 46)。
這就是給 kinetics 論點的證據:摺疊器最沒把握的地方(HNH 域 + L1/L2 linker + target DNA),正好就是上一節那個構形檢查點的機械。換句話說——一張靜態摺出來的結構,本身就解不出 HNH 檢查點該長怎樣。這不是模型爛,是「檢查點是動力學、不是單一構型」的直接體現:你要補的那一維,連摺疊器自己都告訴你它不確定。

Gate 1c — thermoMPNN(ΔΔGfold已跑 ✓

結果:全 27,360 條突變掃完。所有文獻高保真變體(eSpCas9 / HF1 / HypaCas9)的 ΔΔGfold 都 < ~1 kcal/mol——全部 fold-neutral、都通過穩定度閘(本來就該如此,它們是真實可用的變體)。最去穩定的高信心突變 D499P/V/K(+4.6)也合理。
一個呼應主軸的點:thermoMPNN 無法區分這幾個變體(全擠在 0~+1)——穩定度跟結合 ΔG 一樣,不是判別專一性的那一維。它正確地讓它們全過閘,真正的差別在動力學。
⚠ 鐵則不變:這給的是 ΔΔGfold(會不會摺),不是 ΔΔGbind、更不是專一性。

Gate 2b + 短 MD — OpenMM(2 ns, H100)已跑 ✓

結果:WT 蛋白 scaffold 顯式溶劑 MD(ff14SB/TIP3P,235k atoms,2 ns)。HNH 是最會動的域(Cα RMSF 1.86 Å,其餘域 0.8–1.3);逐殘基 RMSF 與 pLDDT 反相關(Spearman −0.36)——越低信心的地方越軟。
第三條獨立證據:ESM-2 說 HNH 演化上可容忍、Chai 說它結構信心低、MD 說它最會動——三個獨立方法指向同一件事:HNH 檢查點區域本質上是動態的,正是 kinetics 那一維的機械。
⚠ 誠實 caveat:這是 apo 蛋白(沒放核酸),完整 RNP 會束縛部分運動,絕對 RMSF 是上限;但相對模式(HNH 最柔)與文獻一致。完整 RNP 建置要 tleap 處理核酸端點,是下一步。

Phase 1 共識篩 — 三個序列閘門合起來(全長 25,992 突變)已跑 ✓

問的問題:教材前面(§2)說漏斗靠「正交多票否決」。那這些閘門真的正交嗎?把 ESM-2 + LigandMPNN + thermoMPNN 在全 1368 位點 × 19 突變(25,992 個)上合起來,實測它們的一致度。
結果:三者中度正相關(Spearman 0.32–0.64)——共享一個「這突變破不破壞」的訊號,但沒到冗餘。兩個結構型的(LigandMPNN/thermoMPNN)最像(0.64);演化型的 ESM-2 最獨立(0.32–0.40)。→ 「正交」要修正成「互補」:不是完全獨立,但每個都帶不同資訊,多票確實有意義。
方法教訓:一開始只用 14 個變體看,得到 ρ≈0.13(看似完全不相關)——那是小樣本騙人。放大到 25,992 個突變才看到真相 0.4。這正是「統計 finding 在 robustness check 之前別下結論」的活教材。
漏斗吐出的實際名單:三票都放行的可改位點(F1037、H420、S297… 表面/柔性);三票都否決的不變核心(W883 在 HNH、埋在核心的 Leu→帶電… 結構錨點)。域層次上,REC1/REC3(DNA 辨識葉)最保守、最動不得,PI/CTD 最可改——跟生物學完全一致。這就是漏斗 Phase 1 真正該吐出的東西:一張可改性地圖。

真實數據(不是示意圖)

每殘基 RMSF
MD 每殘基柔性 — 2 ns 軌跡的 Cα RMSF。HNH 域(橘底)明顯高出其餘域;越柔的地方,正是 Chai 摺疊信心最低處。
RMSF vs pLDDT
兩個獨立方法收斂 — 每殘基 MD 柔性 vs Chai 結構信心,反相關 Spearman ρ=−0.36。物理(會動)與 ML(沒把握)指向同一批殘基=HNH 檢查點區。
thermoMPNN 專一性面板
thermoMPNN 專一性面板 — 所有文獻高保真變體的 ΔΔG_fold 都擠在 0~+1 kcal/mol、全部 fold-neutral。穩定度分不出它們=穩定度不是判別軸。
ESM-2 REC3 掃描熱圖
ESM-2 REC3(660–700)逐位掃描 — 779 個單點變體的演化適應度熱圖。這段正是 HF1/Hypa 專一性突變聚集處。
每域可改性
全長每域可改性 — 三閘門共識容忍度(全 25,992 突變)。差異其實不大(0.47–0.55),但 REC1/REC3(DNA 辨識葉)最保守、PI/CTD 與 bridge helix 最可改——設計時該避開 vs 可動的域一目了然。

相關上線頁:OpenMM GPU MD demo · 為什麼結合自由能漏斗量錯了東西(kinetics 論點)。所有圖為國網 Nano5 實算輸出,非示意。

★★ 補完那個 caveat:把核酸放回去,跑「完整三元複合體」

§★ 的 apo MD 有一句誠實 caveat:「這是沒放核酸的單獨蛋白,完整 RNP 會束縛部分運動」。這一節就是去補它——把 sgRNA + 目標 DNA 放回去,跑真正的三元複合體(Cas9 + RNA + DNA),在國網 Nano5 H100 上跑了 8 條、每條約 93.5 ns 的軌跡。結論先講:HNH 綁上完整 RNP 之後,仍然是最會動的域——這是指向「HNH=動力學檢查點」的又一條、也是最完整的證據線(完整複合體實測)

🧬 生物背景速成(給只做過 MD、沒碰過生物的你)
Cas9 是什麼:一台「可程式化的 DNA 剪刀」蛋白。你給它一段引導 RNA(sgRNA,約 100 個字母,其中約 20 個是可自訂的定位序列 spacer),它去基因組裡找跟這 20 個字母配對、且旁邊帶有短「PAM」訊號(SpCas9 認 NGG)的 DNA,切斷——沒 PAM 就算完全配對也不切。CRISPR 編輯就靠它。
三元複合體蛋白(Cas9)+ 引導(sgRNA)+ 受質(雙股 DNA)三個分子黏在一起的複合體。MD 類比:就像你的「觸媒+受質」體系,只是受質是帶大量負電的核酸。
target / non-target 股:DNA 是雙股。一股跟 sgRNA 鹼基配對(target 股,被辨識),另一股被擠出來、晃在外面(non-target 股 / 位移股)。這個被撐開的結構叫 R-loop
HNH 域:Cas9 內部負責切 target 股的那把「剪刀」(另一把 RuvC 切 non-target 股)。關鍵:HNH 要先擺動就位(docking)貼到 DNA 上才會切——這個「就位」就是前幾節講的動力學檢查點。off-target 時 HNH 卡住、切不下去。

一句話:整台機器切不切、切得準不準,取決於 HNH 這把剪刀能不能擺到定位——而「能不能擺、擺多快」是動力學,不是結合強度。所以我們一直在問:MD 裡 HNH 是不是真的特別會動?

真實三元 MD 軌跡 — 完整 Cas9+sgRNA+DNA,replica 1 的 40 幀(Cα+核酸磷酸 trace,H100,~93.5 ns 中抽出)。蛋白顏色=該殘基 4-replica 平均 RMSF(藍=剛硬 → 紅=最會動),金色=non-target 位移股,灰色=sgRNA/target DNA。紅/橘那一團就是 HNH 檢查點域,即使綁著整個 RNP 仍明顯在擺。可拖曳旋轉;已修週期邊界(unwrap)。

↗ 看靜態互動版(3D+4-replica 疊圖)↗ 看全螢幕動畫版

A. 系統怎麼建的(參數詳解,你的主場)

這一段把每個設定攤開講,因為對你這種 MD 背景的人,「參數對不對」比「結果漂不漂亮」更該先看。整體就是一套標準的顯式溶劑生產 MD,只是分子大、且要處理核酸端點。

設定物理類比 / 為什麼
起始結構Chai-1 預測的 RNP(不是晶體)要「現在就能上機」+ AI 模型完整含 R-loop。代價:介面偏鬆(AI 摺的接觸不夠緊)→ 只有大效應能冒出雜訊。
核酸 5′ 端處理剝掉首殘基 P/OP1/OP2 → 5′-OHamber14 沒有「5′-磷酸端」的 residue template。就像 VASP 要選對 POTCAR——力場每個端點都要有對應模板,否則 OpenMM 直接報 template not found。
盒子 / 溶劑14.22 nm 立方、272,791 atoms(WT;eSpCas9 273,014)、TIP3P 顯式水標準週期性水盒。原子數大是因為完整複合體+足夠水層。
離子0.15 M NaCl(中和+生理離子強度)核酸帶大量負電,必須中和;0.15 M 對齊生理條件。
力場amber14 = ff14SB(蛋白)+ OL15(DNA)+ OL3(RNA)就像 DFT 選 functional:蛋白/DNA/RNA 各有各的參數集,要相容。這組是核酸 MD 的主流選擇。
平衡restrained 多階段(Skeens 式)先 minimize(對溶質重原子加 k=300 kcal/mol/Ų 諧振約束);再分段升溫 0→100→200→300 K,約束 100→25→5→0 逐步鬆綁;最後 ~5 ns 定密度。就是你生產 MD 前的 minimize+equilibrate,只是對「AI 摺的鬆結構」加位置約束逐步釋放,避免一放開就炸。
生產300 K、NPT(MonteCarlo barostat 1 bar)、Langevin 恆溫標準有限溫度系綜。NPT 讓密度自洽。
時間步4 fs + HMR(氫質量重分配 ×1.5)HMR 把氫的質量勻一點給鄰接重原子、放慢高頻 X–H 振動,讓時間步能拉大(保留平衡熱力學,只放慢含氫模態)=近乎免費加速。⚠ 誠實 flag:這裡 H 質量只設 1.5 amu,對 4 fs 偏輕(慣例 ~4 amu 才配 4 fs;apo run 同樣 1.5 amu 只敢用 2 fs)。實測穩定(RMSD 收斂 ~2.7 Å)故先導可接受,但這步偏積極,嚴格版建議 H 用 ~3–4 amu。
replica4 條,seed = 1/2/3/4seed 餵初始速度(Maxwell–Boltzmann 抽)+ Langevin 隨機力+ barostat。MD 是混沌的,起始差一點點幾 ps 後就發散 → 4 條 = 4 次獨立抽樣 → 誤差棒。判斷突變效應真偽要「Δ 大於 replica 散布」。
長度 / 算力每條 ~93.5 ns(4678 幀 × 20 ps)目標本是 100 ns,被 SLURM wall-time 切在 93.5(可 checkpoint 續跑)。8 條共 ~87 H100-GPU-小時,速度 ~207 ns/day。
為什麼跑 4 條而不是 1 條? 因為要判斷一個突變到底有沒有效,得看「WT 和變體的差 Δ 有沒有大過 replica 之間本來就有的散布」。1 條軌跡沒有誤差棒、你不知道看到的差是真的還是隨機。這個判準等一下就用來裁定 eSpCas9。

B. 結果 ①:HNH 綁上 RNP 仍最會動 = 第 4 個獨立證據

把 4 條軌跡的逐殘基 Cα RMSF(每個殘基在軌跡裡晃多大)平均起來、再按結構域分組,客觀排下來:

完整三元複合體逐域 RMSF,HNH 最高
完整三元的逐域平均 RMSF(4 replica)。HNH 1.61 Å(中位數 1.58)明顯高於次高的 PI 1.29 / REC 1.26;全蛋白平均 1.26,HNH 高出 +28%。虛線是 §★ apo 蛋白的 HNH(1.86 Å)。
比 apo 更有說服力的地方:apo 時 HNH RMSF 是 1.86 Å,放回完整 RNP 後降到 1.61 Å——RNP 確實束縛了一部分運動(證明 §★ 那句 caveat 是對的、不是嘴上說說)。但 HNH 依然穩居第一名。這正好反駁了「apo 蛋白 HNH 亂動只是因為少了核酸夾著它的假象」——即使被整個核酸複合體綁住,HNH 還是最柔的那一塊。四條相互佐證的線索(ESM-2 演化 → Chai 結構信心 → apo MD → 完整三元 MD)都指向:HNH 檢查點區本質上是動態的。
誠實揭露:這四條不是完全獨立——兩條 MD 用同一套力場、又都從 Chai 結構起跑(跟「Chai 信心」那條有輕微循環),apo 還只有單一 replica。但「完整三元的 HNH 仍居首(1.61 vs 全蛋白均值 1.26;apo 1.86→1.61 而排名不變)」這個反駁「apo 亂動只是少了 RNP」的邏輯本身站得住;外部文獻(Sternberg 2015 / Dagdas 2017)也獨立支持 HNH 是動態檢查點。

C. 結果 ②:eSpCas9 偵測力測試 —— 誠實的 null

光看 WT 還不夠。我們想知道:這套 pipeline 有沒有能力「看到」一個已知的突變效應?於是拿現成的高保真變體 eSpCas9(1.1)(三個突變 K848A / K1003A / R1060A,中和抓住位移股的正電凹槽)跑同一套流程、4 條 replica,算 Δ(eSpCas9 − WT)。預期:eSpCas9 應該讓 non-target 股更鬆、RMSF 更高。

eSpCas9 vs WT 三指標比較,全部落在雜訊內
eSpCas9 vs WT,三個指標全落在 replica 散布內。關鍵讀數 non-target 股 RMSF:WT 2.18±0.18 vs eSpCas9 2.02±0.10 → Δ = −0.16(合併散布 ±0.20),不但不顯著,方向還相反。
⚠ 為什麼是 null?三個原因(都不代表「eSpCas9 沒效應」)
  1. 靈敏度地板:Chai 預測的介面本來就鬆(各 replica 的接觸殘基集各跑各的=鐵證)+ 93.5 ns 只是先導+沒放活性位 Mg²⁺ → 細微效應被雜訊淹掉。
  2. 底物可能是 on-target:eSpCas9 的設計本意就是「on-target 幾乎不變、只削弱錯配(off-target)」。如果我們的 DNA 是完全配對的 on-target,那 null 反而是正確的生物學,不是 pipeline 壞掉。(待查 Chai 模型的 DNA 序列。)
  3. 接觸指標瞄錯股(程式碼層確定):分析裡的「介面接觸」是算「蛋白 vs target DNA」,但這三個突變抓的是 non-target 股(K1003/R1060 根本不在接觸表上)→ 這個指標按定義就看不到突變。唯一瞄對的是 non-target RMSF,而它也是 null。
null 也是資訊(方法教訓) 這呼應本頁一貫的精神:統計 finding 要先過 robustness check 再下結論。這個 null 量化了先導設定的靈敏度極限——它不動搖 HNH 那條四證據線(那是穩健的相對模式),但明確告訴我們:要真的解析單一突變的細微效應,得 ①換錯配底物 ②換更緊的基準(完整 R-loop 晶體)+更長取樣 ③加一個瞄準 non-target 股凹槽的讀數。三點現有 pipeline 都還沒到位——這就是下一步。
這節在整個論證裡的位置:§★ 用 apo MD 給了 HNH 動態的第 3 個證據,但留了「沒放核酸」的尾巴。這節把核酸放回去、補完那個 caveat,讓 HNH 論點從「apo 上限值」升級成「完整複合體實測」——funnel 上游現在不只有序列/結構閘門,還有一條真正跑起來的完整複合體動力學線。而 eSpCas9 的 null 則老實標出:這條線目前的靈敏度還不足以當「變體排名器」,它現在的價值是驗證機制(HNH 動態),不是排變體

本節所有數據為國網 Nano5 H100 上 8 條 ~93.5 ns 三元 MD 的實算輸出(非示意)。互動 3D 由 3Dmol.js 繪製。

MD Nico 的 MD benchmark:在信任 MD 之前,先讓它重現「已知答案」

§★ 是「我們已經跑的上游閘門」(apo 蛋白)。這一節是 Nico 剛傳來的兩份文件——一份 07-07 會議整理,一份給你的 MD benchmark protocol(對齊 Skeens 2024)。一句話:在拿 MD 去排「未知的」設計變體之前,先用它重現「已知答案」的系統,確認參數是對的。這正是你熟的——選 functional 前先算已知 lattice constant / formation energy 對標。

A. 核心邏輯:先驗證(benchmark),再設計

不能一開始就用 MD 去排你不知道答案的新變體——你怎麼知道它算得準?protocol 的作法是:先跑一批文獻上答案很清楚的 Cas9 專一性變體(eSpCas9 / HF1 / HypaCas9 / evoCas9),它們都有已發表的 MD + 實驗結果。如果我們的 MD 能重現這些已知趨勢 → 參數可信 → 才拿去算新的設計變體。

MD 方法驗證的校準迴圈
protocol 的骨架=一個校準迴圈:先對「已知答案」的專一性變體重現趨勢,過了才相信參數、拿去設計新變體。跟你 DFT 先對已知量校 functional 一模一樣。

B. 兩條軸(最重要的觀念,直接接上 §8 kinetics)

protocol 一開頭就把要量的東西切成兩條軸,而且明說要分清楚:

Cas9 MD 的兩條驗證軸
Axis A(HNH 動力學 / fidelity):HNH 域大幅、慢速的構形擺動——就是 §8 那個構形檢查點。對齊 Skeens 2024 + smFRET,但(要 multi-µs)。右 Axis B(介面 engagement):R-loop 穩定度、non-target 股外露、介面接觸——局部、快(數百 ns 收斂),是 base / prime editing 設計真正要的軸。
量什麼快慢對這專案
Axis A
HNH 動力學
HNH 大幅構形擺動、allosteric network(對齊 Skeens 2024 + smFRET):multi-µs(Skeens ~16 µs/系統)只當參數校準;你的預算通常到不了
Axis B
介面 engagement
R-loop 穩定度、non-target 股外露、介面接觸:~數百 ns 收斂設計真正要的軸(BE / PE engagement)
接回 §8 的關鍵:Axis A 就是你之前講的 kinetics / HNH 構形檢查點那一維——慢、難、要 µs。Axis B 是介面 / 結合,快、可做。所以 Nico 這份 protocol 其實是務實地承認「kinetics(Axis A)短 MD 抓不到」,先在介面軸(Axis B)把 MD 做扎實。短 MD 重現不了 Axis A 是意料中、可接受的——因為設計本來就靠 Axis B。

C. 要算的系統(benchmark mutation set)——這就是「在算啥」

protocol 的核心是一張對標突變清單:每個系統都有明確功能、已發表的 MD/實驗、和要看的觀測量。FAST=介面 / 局部,數百 ns 可得;SLOW=HNH allostery,要 multi-µs。

系統突變(域)機制/要驗的(文獻)快慢
WT基準:複合體穩定度、R-loop 完整、HNH 構形(Palermo 2017 / Skeens 2024 / smFRET)both
eSpCas9K848A / K1003A / R1060A(non-target 股溝槽)中和穩定被頂開 non-target 股的正電溝槽 → 去穩 off-target R-loop(Slaymaker 2016)FAST · BE 相關
SpCas9-HF1N497A / R661A / Q695A / Q926A(Rec3+HNH 旁)移除對 target 股骨架的氫鍵 → 去掉「多餘結合能」→ 較不容忍 mismatch(Kleinstiver 2016)FAST
HypaCas9N692A / M694A / Q695A / H698A(Rec3 α37)Rec3 / α37 突變 → allosteric 降低 HNH 柔性 → 增強 proofreading(Chen 2017)SLOW
evoCas9M495V / Y515N / K526E / R661Q(Rec3)高專一性但 HNH 動力學 ≈ WT(不同機制)→ 當鑑別對照(Casini 2018)SLOW
WT + PAM-distal mismatchDNA 端 protospacer 18–20 錯配(非蛋白突變)off-target R-loop 去穩 → 你的 Δ(on−off) engagement 軸(Singh 2016)FAST-ish
dCas9D10A + H840A(催化死)結合 / 形 R-loop 如 WT,只是不切 → 穩定度對照FAST

建議跑序(protocol §6,先做便宜 FAST 的):① WT(必須先過)→ ② eSpCas9 & HF1(介面 benchmark)→ ③ WT+mismatch(Δ on−off)→ ④ dCas9 / nickase(穩定度對照)→(預算到 µs 才做)⑤ HypaCas9 + evoCas9(重現 Skeens 的 HNH 柔性模式)。

D. Protocol 要點(怎麼算)

起始結構4UN3(Anders 2014 晶體,HNH 在 checkpoint 態,Skeens 就用這個)。不要用 4OO8(HNH inactive、R-loop 不完整)。→ 要跟廖庭尉拿這個結構+補 loop。
力場:要跟 Skeens apples-to-apples 用 ff99SBnmr2(NMR-tuned backbone);一般用 ff19SB 也行。核酸:RNA OL3、DNA bsc1 或 OL15(先從 Skeens SI 確認哪個);水 TIP3P;離子 Joung–Cheatham;active site 放 Mg²⁺
平衡:restrained 分段(固定溶質、放水鬆弛 → 慢慢升溫、約束慢慢放)→ production 前 ~200 ns 當額外平衡丟掉(Skeens 對這種大系統的明確 cutoff)。
取樣(你負擔不起 µs 時):多條短 replica(4–8 × 250–500 ns)而非一條長跑;報 Δ(變異−WT) + replica 誤差棒——差異要大於 replica 散布才可信。
觀測量:穩定度(RMSD、R-loop、RNA:DNA hybrid 配對);Axis B(介面接觸/氫鍵佔據、non-target 股 RMSF/SASA、per-residue MM-GBSA);Axis A(HNH ΔRMSF、Jensen–Shannon distance、PCA)。
通過標準=重現「相對趨勢的方向」,不是絕對數字WT 穩、eSpCas9 non-target 溝槽接觸變弱、HF1 target 骨架接觸變弱、WT+mismatch R-loop 較不穩。方向對就算過。

E. 我們現在正在算什麼

§★ 那條 MD 是 apo 蛋白(沒核酸)。現在照這份 protocol,我已經把 WT 三元複合體(system #1,正對照)建好、在國網 Nano5 上跑起來了:

WT Cas9–sgRNA–DNA 三元 MD 已上機 ✓

建了什麼:從完整 WT RNP(蛋白+sgRNA+target/non-target DNA,完整 R-loop)出發,泡水(TIP3P+0.15 M NaCl)、amber14(ff14SB+OL15+OL3)→ 272,791 個原子。解掉了之前卡住的 RNA 5′ 端力場模板問題(把懸空的 5′ 磷酸改成 5′-OH)。本機先建好+最小化+跑 300 步驗證穩定,才上機。
怎麼跑:restrained 分段平衡 → NPT 300 K production,4 條 replica 平行(perturbed seeds),可 checkpoint 續跑。
會得到:complex/介面 RMSD、逐殘基 RMSF、介面接觸佔據率 → 先確認 WT 穩(RMSD 進平台、R-loop 沒散),過了才上 mutant 做 Δ(變異−WT)。
⚠ 誠實 caveat:起始用 Chai 摺的結構(不是 4UN3 晶體)、沒放 active-site Mg²⁺、先跑 100 ns 當穩定度先導。正式 Skeens benchmark 要換 4UN3+補 loop、擴到 250–500 ns × replica。
所以我可以怎麼回 Nico(他問 "any support helpful?") 你現在看得懂這兩份文件了,可以這樣回:
確認理解:「protocol 讀懂了——先用 Skeens 的已知專一性變體對標 MD、分 Axis A(HNH, µs)/Axis B(介面, ns) 兩軸,我先在 Axis B 做。」
報進度:「WT 三元已建好、在 Nano5 上跑 4 條 replica(順手解掉 RNA 5′ 端力場模板問題)。」
亮出你的優勢:「Nano5 的 H100 很空、幾乎不排隊——replica/掃參數這種需要大量平行的計算,我這邊跑很快。」(這正是你在合作裡的實質貢獻。)
問幾個關鍵澄清:(a) Skeens SI 裡 DNA 到底用 bsc1 還是 OL15?(b) 第一輪設計要不要先只靠 Axis B(介面)、Axis A 之後再補?(c) 4UN3 需不需要廖庭尉那邊先補好 loop 的版本?

9 怎麼跟 Nico 講(先肯定 → 說好終點 → 共構側枝)

  1. 真心肯定 funnel:它把 10⁵→10–50 的濾漏做得又快又物理,v6 往 static MM-PBSA 主線漂移是往更嚴謹的正確方向。這層要留、做得好。
  2. 提案 a:pre-register 驗證終點:濕實驗前先講好「拿什麼當成功判準」。若讀的是編輯專一性(on/off cleavage ratio、GUIDE-seq 這類 kinetic/functional 終點),就明確承認 ΔΔGbind 排名是必要非充分條件
  3. 提案 b:加一條可選 kinetic 側枝:不打掉重來,只跑漏斗底部 ~10–50 個候選:算 HNH I→D docking 的能障 ΔG(NEB/string/metadynamics),或用 MSM 估構形轉換速率。等於用現代工具把 v3/v4 被拿掉的 specificity tier 低成本接回來。

為什麼對方難拒絕:pre-register 是攤開假設的好習慣;側枝是加法、可選、只跑少數候選(成本可控、不動主流程)。而且把對話錨定在你最強的主場——free energy、barrier、MD、MSM。你是來「貢獻缺的那塊物理」的合作者,不是來挑錯的。

附帶:這個「binding vs kinetics 的 scoring-axis」在 AI-Protein-Interface dashboard 裡已被登記成一個待裁決的 open decision(D-006/H-011,待 T-011)——你開這話題,是接一個已經在桌上的問題。

10 可直接照唸的講稿

「你的 funnel 我很欣賞——v5 換成會看核酸的工具、v6 又把靜態 MM-PBSA 升為主打分,方向完全對,它是一台很好的結合可行性富集器,能把 10⁵ 個突變體有效壓到能做的幾十個。

我想補的是它結構上看不到、但恰好是 Cas9 成敗關鍵的一維:專一性其實由動力學決定——off-target 會穩穩結合卻切不下去(HNH 構形檢查點),高保真變體 on/off 的結合都跟 WT 一樣,靠的是結合後的速率步驟。所以 ΔΔGbind 排名相近的兩個變體,真實專一性可以差很多。態函數 ΔG 數學上不含 barrier,再精確的 FEP 也補不出來。

兩個小提案,都不動你的主流程:(a) 濕實驗前先講好我們比的是編輯專一性(kinetic/functional 終點),把 ΔGbind 定位成必要非充分;(b) 只在漏斗底部 10–50 個候選掛一條可選側枝算 HNH docking 的能障 / 用 MSM 估速率——等於把 v3/v4 那個被拿掉的 specificity tier 用現代工具低成本接回來。這塊正好是我的物理本行,我來做。」