๊ธฐ๋Šฅ ์ƒ์„ธ ๋ณด๊ณ 

09. ADMET ๋ชจ๋“ˆ ์ข…ํ•ฉ ์„ฑ๋Šฅํ‰๊ฐ€ํ‘œ

ํ•ต์‹ฌ ๊ฒฐ๋ก : 7๊ฐœ ADMET ํˆด/๋ชจ๋“ˆ์„ ์‹ค์ œ ์กฐ์‚ฌยท์‹คํ–‰ยทํ‰๊ฐ€ํ–ˆ๋‹ค. ์‹ค์ธก ์‹ ๋ขฐ(HIGH)๋Š” ๋ฌผ์„ฑ descriptor 5์ข…๋ฟ โ€” peptides v0.5.0 ๋Œ€๋น„ GRAVYยทInstabilityยทAliphatic Spearman r=1.0000, Boman 0.9893, pI 0.9684๋กœ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ผ์น˜ ๊ฒ€์ฆ๋จ. ์šฉํ˜ˆ(HC50) ๊ฒŒ์ดํŠธ๋Š” surrogate-์ƒ๋Œ€MED โ€” pepADMET ๋กœ์ปฌ ์ถ”๋ก ์€ D-aa์—์„œ๋งŒ fair(ROC-AUC 0.677~0.727), L-aa๋Š” ์—ญ๋ณ€๋ณ„(AUC 0.146~0.56), cyclic/SS-bond(SST-14 ๊ณ„์—ด)์€ SMILES ํŒŒ์‹ฑ ์‹คํŒจ๋กœ ๊ฒŒ์ดํŠธ ์‚ฌ์‹ค์ƒ ๋ฏธ์ž‘๋™(fail-open). ์™ธ๋ถ€ ์›น ํˆด 2์ข…์€ ๋ธ”๋กœ์ปค๋กœ ๋ฏธ์ ์šฉ โ€” ADMETlab 3.0์€ ์„œ๋ฒ„ ์žฅ์• (/api/admet HTTP 404ยท/api/single/admet HTTP 500), pepADMET ์›น์„œ๋น„์Šค๋Š” HTTP 403. ADMET-AI๋Š” ๋กœ์ปฌ ์‹คํ–‰ ์„ฑ๊ณตํ–ˆ์œผ๋‚˜ ์šฉํ˜ˆ ์ง์ ‘ ์—”๋“œํฌ์ธํŠธ ์—†์Œ(hERG ๋Œ€๋ฆฌ) + D-aaยทcyclic OOD๋กœ ๋ณด์กฐ ํ•„ํ„ฐ ํ•œ์ •.

์ •์ง์„ฑ ์š”์•ฝ: ์„ฑ๋Šฅ ์ˆซ์ž๋Š” ์ „๋ถ€ 2026-06-19 ์‹ค์ œ ์‹คํ–‰ ์‚ฐ๋ฌผ์ด๋ฉฐ, ๋ชป ๋Œ๋ฆฐ ํ•ญ๋ชฉ์€ "๋ฏธํ‰๊ฐ€/์‹คํŒจ+์‚ฌ์œ "๋กœ ๊ธฐ๋กํ•œ๋‹ค(fail-closed). ์ ˆ๋Œ€๊ฐ’์€ ์–ด๋А ๋ชจ๋“ˆ๋„ ๊ฒ€์ฆ ์•ˆ ๋จ(LOW) โ€” ์ƒ๋Œ€ ์ˆœ์œ„๋งŒ ์‚ฌ์šฉํ•œ๋‹ค.


1. ์‹ ๋ขฐ๋“ฑ๊ธ‰ ๋ฒ”๋ก€

๋ฐฐ์ง€ ์˜๋ฏธ
์‹ค์ธกHIGH ์‹ค์ œ ์‹คํ–‰ + ground-truth(๋˜๋Š” ์ฐธ์กฐ ํˆด) ๋Œ€๋น„ ๊ฒ€์ฆ
surrogate-์ƒ๋Œ€MED ์ƒ๋Œ€ ์ˆœ์œ„(home-advantage)๋กœ๋งŒ ์œ ํšจ, ์ ˆ๋Œ€๊ฐ’ ๋ฏธ๊ฒ€์ฆ
์ ˆ๋Œ€LOW ์ ˆ๋Œ€๊ฐ’ ๋ฏธ๊ฒ€์ฆ โ€” ๋‹จ์œ„ยท์Šค์ผ€์ผ ๋ถˆ๋ช…, ์‚ฌ์šฉ ๊ธˆ์ง€
๋ฏธํ‰๊ฐ€ ์‹คํ–‰ ์‹คํŒจ(๋ธ”๋กœ์ปค) โ€” fail-closed, ์ถ”์ • ๊ธˆ์ง€

2. ADMET ๋ชจ๋“ˆ ์ข…ํ•ฉ ์„ฑ๋Šฅํ‰๊ฐ€ํ‘œ (7์—ด ร— 7ํ–‰)

๋ชจ๋“  ์…€์€ ์•„๋ž˜ ยง3~ยง5 ์ฆ๊ฑฐ ์ธ์šฉ์œผ๋กœ ๋’ท๋ฐ›์นจ๋œ๋‹ค. file:line์€ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ๋ฃจํŠธ AgenticAI4SCIENCE_pyrosetta_track/repos/ai4sci-kaeri/(์šฐ๋ฆฌ ๋ชจ๋“ˆ) ๋˜๋Š” local_models/ ๊ธฐ์ค€.

| โ‘  ํˆด/๋ชจ๋“ˆ | โ‘ก ์ถœ์ฒ˜ | โ‘ข ์‹คํ–‰ ๊ฒฐ๊ณผ | โ‘ฃ ์ ์šฉ ์—ฌ๋ถ€+์‚ฌ์œ  | โ‘ค ๊ตฌํ˜„ ๋ชจ๋“ˆ(file:line) | โ‘ฅ ์„ฑ๋Šฅ์ง€ํ‘œ(๊ฐ’+์‹ ๋ขฐ๋“ฑ๊ธ‰) | โ‘ฆ ๊ฒฐ๋ก ยท๊ถŒ๊ณ  | |---|---|---|---|---|---|---| | **์šฐ๋ฆฌ ๋ฌผ์„ฑ GRAVY** | Kyte & Doolittle 1982, J Mol Biol 157:105-132 | โœ… ์„ฑ๊ณต (n=15) | **์ ์šฉ** โ€” step04 QC ๋ฌผ์„ฑ๊ฒŒ์ดํŠธ ์‚ฌ์šฉ ์ค‘ | `AG_src/pipeline/pharma_properties.py:285-288` | Spearman r=**1.0000**, MAE 0 `์‹ค์ธกHIGH` | ์™„์ „ ์ผ์น˜. ๋ณด์ • ๋ถˆํ•„์š” | | **์šฐ๋ฆฌ ๋ฌผ์„ฑ Instability** | Guruprasad 1990, Protein Eng 4:155-161 (DIWV 400-entry) | โœ… ์„ฑ๊ณต (n=15) | **์ ์šฉ** | `AG_src/pipeline/pharma_properties.py:303-312` | Spearman r=**1.0000**, MAE 0 `์‹ค์ธกHIGH` | ExPASy ProtParam ๊ณต์‹๊ณผ ๋™์ผ | | **์šฐ๋ฆฌ ๋ฌผ์„ฑ Boman** | Boman 2003, J Intern Med 254:197-215 (RW transfer E) | โœ… ์„ฑ๊ณต (n=15), Pro ์ฒ˜๋ฆฌ ์ฐจ์ด | **์ ์šฉ** โ€” ์ˆœ์œ„ ๊ฒŒ์ดํŠธ์šฉ | `AG_src/pipeline/pharma_properties.py:292-300` | Spearman r=**0.9893**, MAE 0.231 `์‹ค์ธกHIGH` | Pro(-2.54) ํฌํ•จ ์ฐจ์ด๊ฐ€ ์›์ธ; ์ˆœ์œ„ ์ •ํ™•. ์ ˆ๋Œ€ threshold ์‹œ Pro ์ฒ˜๋ฆฌ ์ฃผ์„ ํ•„์š” | | **์šฐ๋ฆฌ ๋ฌผ์„ฑ Aliphatic** | Ikai 1980, J Biochem 88:1895-1898 | โœ… ์„ฑ๊ณต (n=15) | **์ ์šฉ** | `AG_src/pipeline/pharma_properties.py:316-324` | Spearman r=**1.0000**, MAE 0 `์‹ค์ธกHIGH` | ์™„์ „ ์ผ์น˜ | | **์šฐ๋ฆฌ ๋ฌผ์„ฑ pI (๋“ฑ์ „์ )** | Lehninger pKa (Bjellqvist 1993 ๊ธฐ๋ฐ˜), bisection | โœ… ์„ฑ๊ณต (n=15), SS-bond Cys ์ฒ˜๋ฆฌ ์ฐจ์ด | **์ ์šฉ** โ€” SS-bond ์ฒ˜๋ฆฌ๊ฐ€ ์ƒ๋ฌผํ•™์ ์œผ๋กœ ๋” ์ •ํ™• | `AG_src/pipeline/pharma_properties.py:328-351` | Pearson r=**0.9684**, MAE 0.427 `์‹ค์ธกHIGH` | SS-bond Cys ์ด์˜จํ™” ์ œ์™ธ โ†’ pI +1~2; peptides๋ณด๋‹ค ์ •ํ™• | | **pepADMET HC50 ๊ฒŒ์ดํŠธ** (์šฐ๋ฆฌ ๋ž˜ํ•‘, ๋กœ์ปฌ MLR-GAT) | Tan X et al. *J Chem Inf Model* (submitted) โ€” GitHub ifyoungnet/pepADMET [๊ทผ๊ฑฐ: local_models/pepadmet/repo/README.md "Publication"] | โœ… ์„ฑ๊ณต โ€” conda subprocess ์ถ”๋ก , SST-14 hc50=-55.68 ์žฌํ˜„ | **์กฐ๊ฑด๋ถ€ ์ ์šฉ** โ€” HC50 ์—ฐ์†๊ฐ’๋งŒ(๋ฐ”์ด๋„ˆ๋ฆฌ ์ œ์™ธ), `hc50_reliable=True` ์„ ํ˜• ๋ณ€์ด์ฒด ํ•œ์ • | `pyrosetta_flow/pepadmet_infer_script.py:105-170`, `multiobjective.py:206-241`, `pepadmet_toxicity.py:26-43` | ROC-AUC D-aa 16์ข…=**0.727**, D+MIXED 18์ข…=**0.677**, L-aa 32์ข…=**0.146(์—ญ๋ณ€๋ณ„)** `์‹ค์ธกHIGH`; ์ ˆ๋Œ€ HC50 `์ ˆ๋Œ€LOW`; ์ข…ํ•ฉ `surrogate-์ƒ๋Œ€MED` | D-aa ์ƒ๋Œ€ ์ˆœ์œ„๋งŒ ์œ ํšจ. L-aa ์—ญ๋ณ€๋ณ„ยทcyclic(SST-14) fail-open. ์ ˆ๋Œ€๊ฐ’ ํ•ด์„ ๊ธˆ์ง€ | | **pepADMET ๋ฐ”์ด๋„ˆ๋ฆฌ is_toxic** | Tan X et al. pepADMET task_0 (MLR sigmoid) | โœ… ์‹คํ–‰ / โŒ ๋ณ€๋ณ„ ์‹คํŒจ โ€” ์ „ ์„œ์—ด toxic=True (์˜ฅ์‹œํ† ์‹ ยทSST-14 ํฌํ•จ) | **๋ฏธ์‚ฌ์šฉ** โ€” ๋น„๋ณ€๋ณ„, 2026-06-10 ๊ฒŒ์ดํŠธ ์ œ์™ธ | `pyrosetta_flow/pepadmet_infer_script.py:151-160`, ์ œ์™ธ ๊ทผ๊ฑฐ `multiobjective.py:164-165` | ROC-AUC ๋ฏธ์‚ฐ์ถœ(์ „๋ถ€ ๋™์ผ ์˜ˆ์ธก) `์‹ค์ธกHIGH(ํ•œ๊ณ„ ํ™•์ธ)` | ๊ฒŒ์ดํŠธ ์™„์ „ ๋ฐฐ์ œ๊ฐ€ ์˜ฌ๋ฐ”๋ฅธ ๊ฒฐ์ • | | **ADMET-AI v2.0.1** | Swanson et al. Bioinformatics 2024, doi:10.1093/bioinformatics/btae416 | โœ… ์„ค์น˜ยท์‹คํ–‰ ์„ฑ๊ณต โ€” bio-tools env, 104 endpoint, SST-14+๋ฒค์น˜ 20์ข… ์ถ”๋ก  | **์กฐ๊ฑด๋ถ€ ์ ์šฉ ๊ฐ€๋Šฅ(๋ฏธ๊ตฌํ˜„)** โ€” L-aa hERGยทAMES ๋ณด์กฐ ํ•„ํ„ฐ๋งŒ; D-aaยทcyclic OOD | ๋ฏธ๊ตฌํ˜„(๊ถŒ์žฅ ์œ„์น˜ `pipeline_local/admet_ai_wrapper.py`) | ROC-AUC hERG-proxy L-aa=**0.727** `์‹ค์ธกHIGH`; D-aa 0.833 **OOD๋ฌดํšจ**; LD50-proxy L-aa 0.045(์—ญ๋ณ€๋ณ„); ์šฉํ˜ˆ ์ง์ ‘ endpoint **์—†์Œ** | ์†Œ๋ถ„์ž ๋ชจ๋ธ. ์šฉํ˜ˆ ์ง์ ‘ ์˜ˆ์ธก ๋ถˆ๊ฐ€ โ†’ pepADMET ์šฐ์„ , fallback ํ•œ์ • | | **ADMETlab 3.0** | Fu et al. Nucleic Acids Res 2024, 52:W422-W431 (PMC11223840) | โŒ ์‹คํŒจ โ€” `/api/admet` HTTP 404, `/api/single/admet` HTTP 500 (pandas KeyError), `/api/washmol`๋งŒ 200; ์„œ๋ฒ„ ๊ณต๊ฒฉ ํ”ผํ•ด ๊ณต์ง€ ์ค‘ | **๋ฏธ์ ์šฉ** โ€” ํ•ต์‹ฌ ์˜ˆ์ธก ์—”๋“œํฌ์ธํŠธ ๋‹ค์šด, ์ด๋ฉ”์ผ ์ˆ˜๋™ ์ œ์ถœ ๋Œ€์•ˆ๋งŒ | ํ•ด๋‹น ์—†์Œ(์‹คํ–‰ ๋ถˆ๊ฐ€) | **๋ฏธํ‰๊ฐ€** (fail-closed) | ์„œ๋ฒ„ ์ •์ƒํ™” ํ›„ ์žฌ์‹œ๋„ ๊ถŒ๊ณ . D-aa/cyclic OOD ์šฐ๋ ค. ๋Œ€์•ˆ=pepADMET ๋กœ์ปฌ |

3. ๋ฌผ์„ฑ Descriptor โ€” ์‹ค์ธก HIGH (์œ ์ผํ•˜๊ฒŒ ์‹ ๋ขฐ ๊ฐ€๋Šฅ)

์ฐธ์กฐ ํˆด peptides v0.5.0 ์„ค์น˜ยท์‹คํ–‰ ํ™•์ธ: ~/miniforge3/envs/bio-tools/bin/python -c "import peptides; print(peptides.__version__)" โ†’ 0.5.0 [๊ทผ๊ฑฐ: TOOL_our_physchem.md:36-41]

  • GRAVY / Instability / Aliphatic: Spearman r=1.0000, MAE 0 (n=15) โ€” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์™„์ „ ์ผ์น˜ [๊ทผ๊ฑฐ: [LOCAL_PATH]]
  • Boman: Spearman r=0.9893, MAE 0.231 โ€” peptides lib๋Š” Pro๋ฅผ Boman ํ•ฉ์‚ฐ์—์„œ ์ œ์™ธ, ์šฐ๋ฆฌ๋Š” P=-2.54 ํฌํ•จ. ์ˆœ์œ„ ์ƒ๊ด€ ๋†’์•„ ๊ฒŒ์ดํŠธ ๋ฌด์˜ํ–ฅ [๊ทผ๊ฑฐ: TOOL_our_physchem.md:23, :93-99]
  • pI: Pearson r=0.9684, MAE 0.427 โ€” ์šฐ๋ฆฌ ๊ตฌํ˜„์€ SS-bond Cys๋ฅผ ์ด์˜จํ™”์—์„œ ์ œ์™ธ(thiol ์—†์Œ โ†’ pKa ๋ถˆ์ฐธ์—ฌ), peptides๋Š” ๋ชจ๋“  Cys ํฌํ•จ. ์šฐ๋ฆฌ ์ฒ˜๋ฆฌ๊ฐ€ ์ƒ๋ฌผํ•™์ ์œผ๋กœ ๋” ์ •ํ™• [๊ทผ๊ฑฐ: TOOL_our_physchem.md:25, :104-112]
  • ๊ธฐ์กด ๋ฒค์น˜(BENCH_admet_descriptors.json, 16์„œ์—ด)์™€ ์ผ๊ด€์„ฑ ํ™•์ธ โ€” GRAVY/Instability/Aliphatic 1.0000 ์žฌํ˜„, Boman 0.97โ†’0.99, pI 0.99โ†’0.97 (n ์ฐจ์ด) [๊ทผ๊ฑฐ: TOOL_our_physchem.md:130-140]
  • D-aa ํ•œ๊ณ„: ์šฐ๋ฆฌ ๋ชจ๋“ˆ์€ VALID_AA L-aa 20์ข…๋งŒ ํ—ˆ์šฉ(raise ValueError), peptides๋„ lowercase๋ฅผ L-aa๋กœ ๊ฐ•์ œ ๊ณ„์‚ฐ(์Šคํ…Œ๋ ˆ์˜ค ์†์‹ค). D-aa ํ•จ์œ  ์„œ์—ด(octreotide ๋“ฑ) ๋ฌผ์„ฑ์€ [๋ฏธ๊ฒ€์ฆ] ํ‘œ๊ธฐ ํ•„์ˆ˜ [๊ทผ๊ฑฐ: TOOL_our_physchem.md:118-124, pharma_properties.py:217]

ํŒ์ •: ๋ฌผ์„ฑ descriptor๋Š” HIGH โ€” ํŒŒ์ดํ”„๋ผ์ธ ์ ์šฉ ์œ ์ง€, ์ถ”๊ฐ€ ๋ณด์ • ๋ถˆํ•„์š”. (๋‹จ D-aa๋Š” ๋ฏธ์ง€์›.)


4. ์šฉํ˜ˆ(HC50) ๋…์„ฑ ๊ฒŒ์ดํŠธ โ€” surrogate-์ƒ๋Œ€MED, L-aa ์—ญ๋ณ€๋ณ„ ์ •์ง

ground-truth: BENCH_admet_v2 ๋ฌธํ—Œ ์šฉํ˜ˆ ๋ผ๋ฒจ. ์ˆ˜์ง‘ 52์ข… ์ค‘ cyclic 2์ข… ์ œ์™ธ ํ›„ ์ฑ„์  50์ข… [๋ฐ์ดํ„ฐ: [LOCAL_PATH]]. ์ฑ„์  run ๊ฒฐ๊ณผ JSON์˜ ๊ถŒ์œ„ ๋ถ„๋ฅ˜๋Š” n_L=32 / n_D=18(D๋Š” D-aa ์ˆœ์ˆ˜ 16 + MIXED 2 ํ•ฉ์‚ฐ) [๋ฐ์ดํ„ฐ: [LOCAL_PATH] โ€” n_L=32, n_D=18, auc_D=[0.677,13,5]]. (BENCH md ํ—ค๋”๋Š” ์ˆ˜์ง‘ ๋‹จ๊ณ„ ๋ผ๋ฒจ "L34/D16/MIXED2"๋ฅผ ์ ์œผ๋‚˜, ์‹ค์ œ ์ฑ„์ ๋œ 50์ข…์˜ ๊ทธ๋ฃน ๋ถ„๋ฅ˜๋Š” ๊ฒฐ๊ณผ JSON ๊ฐ’์„ ๋”ฐ๋ฅธ๋‹ค โ€” ยง4.1 ํ‘œ์™€ ์ผ์น˜.)

4.1 ROC-AUC (2026-06-19 ์žฌ์‹คํ–‰, score=-hc50)

๊ทธ๋ฃน n pos(์šฉํ˜ˆ) ROC-AUC ์‹ ๋ขฐ๋“ฑ๊ธ‰ ํŒ์ •
D-aa ์ˆœ์ˆ˜ 16 11 0.727 ์‹ค์ธกHIGH โœ… ์–‘์˜ ๋ณ€๋ณ„ (fair)
D-aa+MIXED 18 13 0.677 ์‹ค์ธกHIGH โœ… ์–‘์˜ ๋ณ€๋ณ„ (์ €์žฅ๊ฐ’ ์žฌํ˜„)
L-aa 32 24 0.146 ์‹ค์ธกHIGH โŒ ์—ญ๋ณ€๋ณ„ โ€” ์‚ฌ์šฉ ๋ถˆ๊ฐ€
์ „์ฒด 50 37 0.32 ์‹ค์ธกHIGH L/D ํ˜ผ์žฌ๋กœ ์‹ ํ˜ธ ์ƒ์‡„

[๊ทผ๊ฑฐ: [LOCAL_PATH] ยท TOOL_pepadmet.md:127-131]

  • L-aa ์—ญ๋ณ€๋ณ„ ์›์ธ: ๋น„์šฉํ˜ˆ ์–‘์ „ํ•˜ ํ—ฌ๋ฆญ์Šค(Cecropin A hc50=-823, LL-37 hc50=-1003)๋ฅผ ์šฉํ˜ˆ์„ฑ(Melittin hc50=-293)๋ณด๋‹ค ๋” ๋…์„ฑ์œผ๋กœ ์˜ˆ์ธก โ€” pepADMET ํ•™์Šต ํŽธํ–ฅ ์ถ”์ • [๋ฏธ๊ฒ€์ฆ โ€” ์ถ”๊ฐ€ ์‹คํ—˜ ํ•„์š”] [๊ทผ๊ฑฐ: TOOL_our_hc50.md:48-52]
  • ๋กœ์ปฌ vs ์›น์„œ๋น„์Šค ๋ถˆ์ผ์น˜: ๋กœ์ปฌ(๋…์„ฑ ๋ชจ๋ธ ๋‹จ์ผ) ์ „์ฒด AUC 0.47 vs ์›น์„œ๋น„์Šค(19-endpoint ์•™์ƒ๋ธ” ์ถ”์ •) 0.32. D-aa๋Š” ๋กœ์ปฌ 0.40 < ์›น 0.677 โ€” ์›น์˜ ๋ณ„๋„ ์ „์ฒ˜๋ฆฌ ๊ฐ€๋Šฅ์„ฑ ์‹œ์‚ฌ [๋ฏธ๊ฒ€์ฆ] [๊ทผ๊ฑฐ: TOOL_pepadmet.md:133-141]

4.2 cyclic/SS-bond ๋ธ”๋กœ์ปค โ€” ๊ฒŒ์ดํŠธ fail-open

  • SST-14(AGCKNFFWKTFTSC, Cys3-Cys14)๋ฅผ ํฌํ•จํ•œ ๋ชจ๋“  SST-14 ๋ณ€์ด์ฒด๋Š” SMILES ํŒŒ์‹ฑ ์‹คํŒจ โ†’ graph_note=linear_sequence_fallback โ†’ hc50_reliable=False โ†’ ๋…์„ฑ ๊ฒŒ์ดํŠธ ์ž๋™ skip [๊ทผ๊ฑฐ: TOOL_our_hc50.md:14, :67-75, pepadmet_toxicity.py:26-43]
  • ์„ค๊ณ„ ์˜๋„=fail-open(๊ฐ€์งœ ๋…์„ฑ ํŒ์ • ๋ฐฉ์ง€). ์‹ค์งˆ์ ์œผ๋กœ SSTR2 ์ฃผ์š” ํ›„๋ณด๊ตฐ์— ๋…์„ฑ ๊ฒŒ์ดํŠธ๊ฐ€ ๋ฏธ์ž‘๋™ [๊ทผ๊ฑฐ: TOOL_our_hc50.md:142]

4.3 ๊ฒŒ์ดํŠธ ๋™์ž‘ (apply_toxicity_to_extra, ์‹ค์ธก)

  • native baseline hc50=-55.68 ๋Œ€๋น„ home-advantage ํŽ˜๋„ํ‹ฐ: hc50=-65โ†’factor 0.978, hc50=-300โ†’0.40(ํ•˜ํ•œ), ์•ˆ์ „(hc50=-14.5)โ†’ํŽ˜๋„ํ‹ฐ ์—†์Œ [๊ทผ๊ฑฐ: TOOL_our_hc50.md:23, :118-128, multiobjective.py:206-241]
  • ํŒŒ๋ผ๋ฏธํ„ฐ _HC50_NATIVE_TOLERANCE=5.0, _HC50_PENALTY_SCALE=200.0, _TOXIC_ADMET_PENALTY=0.4 [๊ทผ๊ฑฐ: multiobjective.py:163-167]
  • ๋ฐฐ์น˜ ๋ž˜ํผ ์‘๋‹ต 16์„œ์—ด ~10-15์ดˆ(conda subprocess), graceful fail(๋ฏธ์„ค์น˜/timeout ์‹œ ๋นˆ dict) [๊ทผ๊ฑฐ: TOOL_our_hc50.md:24, pepadmet_runner.py:36-99]

ํŒ์ •: HC50 ๊ฒŒ์ดํŠธ๋Š” surrogate-์ƒ๋Œ€MED โ€” D-aa ์ƒ๋Œ€ ์ˆœ์œ„์—๋งŒ ์œ ํšจ, L-aa ์—ญ๋ณ€๋ณ„ยทcyclic ๋ฏธ์ž‘๋™, ์ ˆ๋Œ€ HC50 ๋‹จ์œ„ ๋ฏธ๊ฒ€์ฆ(์ ˆ๋Œ€LOW, ํ•ด์„ ๊ธˆ์ง€).


5. ์™ธ๋ถ€ ์›น/์†Œ๋ถ„์ž ํˆด โ€” ๋ธ”๋กœ์ปค ์ •์ง ๊ธฐ๋ก

5.1 ADMETlab 3.0 โ€” ์„œ๋ฒ„ ์žฅ์• ๋กœ ๋ฏธํ‰๊ฐ€ (fail-closed)

  • POST /api/admet โ†’ HTTP 404(๋ผ์šฐํŒ… ๋ฏธ๋“ฑ๋ก), POST /api/single/admet โ†’ HTTP 500(api.py:307 pandas KeyError, ์ž…๋ ฅ ์ข…๋ฅ˜ ๋ฌด๊ด€ ์„œ๋ฒ„ ๋ฒ„๊ทธ), /api/washmol๋งŒ HTTP 200 [๊ทผ๊ฑฐ: [LOCAL_PATH]]
  • ๊ณต์‹ ๊ณต์ง€: ์ง€์†์  ๊ณต๊ฒฉ์œผ๋กœ ์„œ๋ฒ„ ์ž์› ๋ถ•๊ดด, ๋Œ€๋Ÿ‰ ๊ณ„์‚ฐ์€ minddance@163.com ์ˆ˜๋™ ์ œ์ถœ ์•ˆ๋‚ด [์ถœ์ฒ˜: https://admetlab3.scbdd.com/apis/two.md] [๊ทผ๊ฑฐ: TOOL_admetlab.md:96-100]
  • 119๊ฐœ ADMET ํ•ญ๋ชฉ ํฌ๊ด„์ ์ด๋‚˜ D-aa/cyclic OOD ์šฐ๋ ค. SMILES ๋ณ€ํ™˜(RDKit MolFromSequence)์€ ์„ฑ๊ณตํ–ˆ์œผ๋‚˜ SS-bond ๋ฏธํ‘œํ˜„ [๊ทผ๊ฑฐ: TOOL_admetlab.md:56-62]
  • ์„ฑ๋Šฅ ๋ฏธํ‰๊ฐ€ โ€” ์‹คํ–‰ ์‹คํŒจ๋กœ ๋ฒค์น˜ ๋น„๊ต ๋ถˆ๊ฐ€(์ถ”์ • ๊ธˆ์ง€). ์„œ๋ฒ„ ์ •์ƒํ™” ํ›„ ์žฌ์‹œ๋„ ๊ถŒ๊ณ  [๊ทผ๊ฑฐ: TOOL_admetlab.md:108, :156]

5.2 ADMET-AI v2.0.1 โ€” ์‹คํ–‰ ์„ฑ๊ณต, ์šฉํ˜ˆ ์ง์ ‘ endpoint ์—†์Œ

  • ์„ค์น˜ยท์‹คํ–‰ ์„ฑ๊ณต(pip install admet-ai, rdkit 2026.3.3, PyRosetta ํ˜ธํ™˜), 104 endpoint, SST-14+๋ฒค์น˜ 20์ข… ์ถ”๋ก  ์™„๋ฃŒ [๊ทผ๊ฑฐ: [LOCAL_PATH], :60-64]
  • ์šฉํ˜ˆ ์ง์ ‘ ์—”๋“œํฌ์ธํŠธ ์—†์Œ โ†’ hERG๋ฅผ ๋Œ€๋ฆฌ ์ง€ํ‘œ๋กœ ์‚ฌ์šฉ: ROC-AUC L-aa=0.727 ์‹ค์ธกHIGH(๋‹จ ์ง์ ‘ ์šฉํ˜ˆ ํ›ˆ๋ จ ์•„๋‹˜, ์šฐ์—ฐ ์ผ์น˜ ๋ฐฐ์ œ ๋ถˆ๊ฐ€), D-aa 0.833์€ OOD ๋ฌดํšจ, LD50-proxy L-aa 0.045(์—ญ๋ณ€๋ณ„) [๊ทผ๊ฑฐ: TOOL_admet_ai.md:19, :90-99]
  • ์†Œ๋ถ„์ž ์•ฝ๋ฌผ ๋ชจ๋ธ(TDC, MW<900) โ€” ํŽฉํƒ€์ด๋“œ MW>1000 OOD ์œ„ํ—˜, D-aa(rdkit L-isomer๋งŒ ์ƒ์„ฑ)ยทSS-cyclic ๋ฏธ์ง€์› [๊ทผ๊ฑฐ: TOOL_admet_ai.md:44-52]
  • SST-14 ์˜ˆ์ธก hERG=0.841(์œ„ํ—˜ ์‹ ํ˜ธ) ๋“ฑ์€ SS-cyclic ๋ฏธ๋ฐ˜์˜ ์„ ํ˜• SMILES โ€” [๋ฏธ๊ฒ€์ฆ] ์ ˆ๋Œ€๊ฐ’ ์‹ ๋ขฐ ๊ธˆ์ง€ [๊ทผ๊ฑฐ: TOOL_admet_ai.md:75-81]
  • ํŒ์ •: ์กฐ๊ฑด๋ถ€ ์ ์šฉ ๊ฐ€๋Šฅํ•˜๋‚˜ ๋ฏธ๊ตฌํ˜„(๋ž˜ํผ ์—†์Œ). pepADMET ๋กœ์ปฌ ๋ณต๊ตฌ ์šฐ์„ , ์‹คํŒจ ์‹œ L-aa hERG fallback [๊ทผ๊ฑฐ: TOOL_admet_ai.md:18, :120]

5.3 pepADMET ์›น์„œ๋น„์Šค โ€” HTTP 403 (๋กœ์ปฌ์€ ์šฐํšŒ ์„ฑ๊ณต)

  • ์›น์„œ๋น„์Šค https://pepadmet.ddai.tech/ HTTP 403 ์ฐจ๋‹จ ์œ ํšจ. ๋‹จ ๋กœ์ปฌ ๋ชจ๋ธ(local_models/pepadmet/repo/model/toxicity_early_stop.pth)๋กœ ์šฐํšŒ ์ถ”๋ก  ์„ฑ๊ณต(51/51 ์„œ์—ด, ~6-16๋ถ„ CPU) [๊ทผ๊ฑฐ: [LOCAL_PATH], :94-98, :191-199] โ€” ์„ฑ๋Šฅ์€ ยง4 ์ฐธ์กฐ

6. ์ข…ํ•ฉ ๊ฒฐ๋ก ยท๊ถŒ๊ณ 

  1. ์‹ ๋ขฐ ๊ฐ€๋Šฅํ•œ ADMET ์‹ ํ˜ธ๋Š” ๋ฌผ์„ฑ descriptor 5์ข…(HIGH)๋ฟ โ€” GRAVYยทInstabilityยทAliphaticยทBomanยทpI. ํŒŒ์ดํ”„๋ผ์ธ ์ ์šฉ ์œ ์ง€ [๊ทผ๊ฑฐ: ยง3]
  2. ์šฉํ˜ˆ ๊ฒŒ์ดํŠธ๋Š” D-aa ์ƒ๋Œ€ ์ˆœ์œ„์—๋งŒ ์ œํ•œ ์‚ฌ์šฉ(MED) โ€” L-aa ์—ญ๋ณ€๋ณ„, cyclic(SST-14) fail-open์ด๋ฏ€๋กœ ์ฃผ์š” ํ›„๋ณด๊ตฐ์—” ์‚ฌ์‹ค์ƒ ๋ฏธ์ž‘๋™. ์ ˆ๋Œ€ HC50 ํ•ด์„ ๊ธˆ์ง€ [๊ทผ๊ฑฐ: ยง4]
  3. ์™ธ๋ถ€ ์›น ํˆด ์˜์กด ๊ธˆ์ง€ โ€” ADMETlab ์„œ๋ฒ„ ์žฅ์• ยทpepADMET ์›น 403. ๋กœ์ปฌ ์ž์›(pepADMET ๋กœ์ปฌ, ADMET-AI)์œผ๋กœ๋งŒ ์šด์šฉ [๊ทผ๊ฑฐ: ยง5]
  4. ๋ชจ๋“  ๋ชจ๋“ˆ ๊ณตํ†ต ํ•œ๊ณ„: D-aaยทcyclic/SS-bond ์ž…์ฒดํ™”ํ•™์„ RDKit MolFromSequence๊ฐ€ ํ‘œํ˜„ ๋ชป ํ•จ โ†’ SSTR2 ํ•ต์‹ฌ ํ›„๋ณด(SST-14 ๊ณ„์—ด)์—์„œ ADMET ์˜ˆ์ธก ์‹ ๋ขฐ๋„ ๋‚ฎ์Œ. ํ–ฅํ›„ SS-bond SMILES ์ˆ˜๋™ ์ƒ์„ฑ ๋˜๋Š” ์ž…์ฒดํ™”ํ•™ ์ธ์ง€ ๋ชจ๋ธ ํ•„์š” [๊ทผ๊ฑฐ: ยง4.2, ยง5.2]
  5. ๊ฐœ์„  ๊ถŒ๊ณ : โ‘  pepADMET cyclic SMILES ๋นŒ๋” ๋ณด๊ฐ•(hc50_reliable=True ํ™•๋Œ€), โ‘ก L-aa ์—ญ๋ณ€๋ณ„ ํ•™์Šต ํŽธํ–ฅ ์›์ธ ๊ทœ๋ช…, โ‘ข ADMET-AI ๋ž˜ํผ(pipeline_local/admet_ai_wrapper.py) ์‹ ์„ค๋กœ fallback ์ด์ค‘ํ™” [๊ทผ๊ฑฐ: ยง4.2, ยง5.2]

7. ์›์‹œ ์‚ฐ๋ฌผยท์ฆ๊ฑฐ ๊ฒฝ๋กœ (์ถ”์ ์„ฑ)

ํ•ญ๋ชฉ ๊ฒฝ๋กœ
๋ฌผ์„ฑ ์ฆ๊ฑฐ _workspace/report_site2/_evidence/TOOL_our_physchem.md
HC50 ๊ฒŒ์ดํŠธ ์ฆ๊ฑฐ _workspace/report_site2/_evidence/TOOL_our_hc50.md
pepADMET ๋กœ์ปฌ ์ฆ๊ฑฐ _workspace/report_site2/_evidence/TOOL_pepadmet.md
ADMET-AI ์ฆ๊ฑฐ _workspace/report_site2/_evidence/TOOL_admet_ai.md
ADMETlab ์ฆ๊ฑฐ _workspace/report_site2/_evidence/TOOL_admetlab.md
์šฉํ˜ˆ ๋ฒค์น˜ ground-truth _workspace/report_site/_analysis/BENCH_admet_v2.md (์ˆ˜์ง‘ 52์ข…) ยท ์ฑ„์  run ๊ฒฐ๊ณผ BENCH_admet_v2_results.json (์ฑ„์  50์ข…, n_L=32 / n_D=18[D-aa+MIXED])
pepADMET ์ถ”๋ก  ๊ฒฐ๊ณผ local_models/pepadmet/repo/model/toxicity_early_stop.pth, scratchpad/pepadmet_full_results.json

raw vs meta ์ฃผ: ๋ณธ ํŽ˜์ด์ง€๋Š” ADMET(์šฉํ˜ˆยท๋ฌผ์„ฑ) ํ‰๊ฐ€์ด๋ฉฐ ๋ฐ˜๊ฐ๊ธฐ raw/meta ๋™๊ธ‰๋น„๊ต ์ด์Šˆ๋Š” ํ•ด๋‹น ์—†์Œ(๋ฐ˜๊ฐ๊ธฐ๋Š” 10๋ฒˆ Serum Stability ํŽ˜์ด์ง€) [๊ทผ๊ฑฐ: GOAL_SIM_MODULES_2026-06-18.md ยง3.2-5].