नफा:
- रेणूंना नावाने नव्हे तर संरचनेद्वारे ओळखण्याची क्षमता (मानवांसह स्माईल, डेटाबेससह InChI/InChIKey)
- RDKit सह आर्टिफिशियल इंटेलिजेंसने दिलेले प्रत्येक स्माईल पार्स करून, प्रमाणित करून आणि कॅनोनिकल करून अवैध किंवा चुकीच्या रचना शोधण्याची क्षमता
- आण्विक वजन आणि फॉर्म्युला यासारख्या निर्धारक प्रमाण भाषा मॉडेलमधून नव्हे तर नियम-आधारित साधनातून मिळवले पाहिजेत हे समजण्यास सक्षम असणे.
रसायनशास्त्रात AI सुरक्षितपणे वापरण्याची पहिली अट म्हणजे यंत्र आणि मानव दोघांनाही समजेल अशा भाषेत रेणू लिहिणे. तुम्ही "फिनॉल" म्हणता, एआय बरोबर आहे; पण जेव्हा तुम्ही "ॲसिड" म्हणता तेव्हा हजारो शक्यता असतात. नावे संदिग्ध आहेत; रचना सादरीकरण अचूक आहेत. या युनिटमध्ये, आपण रेणूचे मजकूर (SMILES आणि InChI) मध्ये भाषांतर करणाऱ्या दोन मूलभूत नोटेशन्स आणि त्यांना निश्चितपणे सत्यापित करणारे साधन (RDKit) शिकू. आमचे उद्दिष्ट: AI ला रेणू कधीही गैरसमज होणार नाही अशा प्रकारे देणे आणि AI द्वारे तयार केलेल्या संरचनेची साधनाने पुष्टी करणे.
SMILE म्हणजे काय?
SMILES (सरलीकृत आण्विक-इनपुट लाइन-एंट्री सिस्टम) मजकूराच्या एका ओळीत रेणू लिहिण्याचे स्वरूप आहे. अणू अक्षरे, बंध चिन्हांद्वारे आणि अंकांद्वारे रिंगद्वारे दर्शविले जातात. उदाहरणे:
- इथेनॉल: CCO (कार्बन-कार्बन-ऑक्सिजन; हायड्रोजन निहित).
- बेंझिन: c1cccc1 (लोअरकेस "c" सुगंधी कार्बन दर्शवितो; 1 रिंग बंद आहे).
- ऍस्पिरिन: CC(=O)Oc1cccc1C(=O)O.
- कॅफिन: Cn1cnc2c1c(=O)n(C)c(=O)n2C.
स्माइल्सची ताकद अशी आहे की ती संपूर्ण लिंक स्ट्रक्चर एका ओळीत घेऊन जाते; त्याची कमकुवतता अशी आहे की एकाच रेणूमध्ये अनेक वैध SMILES असू शकतात (याला गैर-प्रामाणिकता म्हणतात). आम्ही हे काही क्षणात RDKit सह सोडवू.
इशारा: रेणूसाठी "प्रामाणिक SMILES" हे त्या रेणूसाठी एकल, प्रमाणित स्पेलिंग आहे. दोन स्माइल एकच रेणू आहेत की नाही हे पाहण्यासाठी, त्यांची प्रमाणिकरण करा आणि त्यांची तुलना करा; ते मजकूरदृष्ट्या समान नसावेत, परंतु ते समान रेणू असावेत.
InChI म्हणजे काय?
InChI (इंटरनॅशनल केमिकल आयडेंटिफायर) हा IUPAC द्वारे विकसित केलेला मानक ओळखकर्ता आहे. SMILES मधील फरक हा आहे की समान रेणू नेहमी समान InChI देतो; म्हणजेच, ते निसर्गात प्रामाणिक आहे. हे वाचण्यास लांब आणि कठीण आहे, परंतु डेटाबेस जुळणीसाठी आदर्श आहे. शोधासाठी संक्षिप्त "InChIKey" (27-वर्ण डायजेस्ट) वापरला जातो.
- ऍस्पिरिन InChIKey: BSYNRYMUTXBXSQ-UHFFFAOYSA-N.
नियम: लोक स्माइल्स (वाचा) बोलतात, मशीन आणि डेटाबेस InChI/InChIKey (अचूक) जुळतात. AI ला स्माईल द्या; InChIKey सह डेटाबेसमध्ये पुष्टी करा.
RDKit: निर्धारक सत्यापन इंजिन
RDKit एक ओपन सोर्स केमिनफॉर्मेटिक्स लायब्ररी आहे. भाषा मॉडेलच्या विपरीत, ते नियम-आधारित आहे: SMILES पार्स करते, आण्विक वजनाची गणना करते, प्रामाणिक SMILES जनरेट करते, InChI/InChIKey मिळवते, रेणू काढते. म्हणून RDKit AI "अंदाज" काय "गणना" करते. हे वर्कफ्लोचे हृदय आहे: AI जनरेट करते, RDKit सत्यापित करते.
मूलभूत पडताळणी प्रवाह:
rdkit import Chemfrom rdkit.Chem इंपोर्ट डिस्क्रिप्टर्स, Drawsmiles = "CC(=O)Oc1cccc1C(=O)O" Chem.MolToSmiles(mol)) प्रिंट("मॉलेक्युलर फॉर्म्युला:", Chem.rdMolDescriptors.CalcMolFormula(मोल्युलर प्रिंट:") round(Descriptors.MolWt(mol), 2), "g/mol") प्रिंट("InChIKey:", Chem.MolToInchiKey(mol))
MolFromSmiles ने काहीही न दिल्यास, AI ने तुम्हाला अवैध रेणू दिला आहे; हा एकटाच एक अतिशय मौल्यवान इशारा आहे. वैध असल्यास, तुम्हाला यापुढे आण्विक वजनासाठी भाषा मॉडेल विचारण्याची आवश्यकता नाही; ते निश्चितपणे तुमच्या हातात आहे.
स्टेप बाय स्टेप: AI + RDKit इंटरऑपरेशन
- रेणू ओळखा: AI ला नाव द्या, SMILES साठी विचारा. उदाहरणार्थ, "पॅरासिटामॉलसाठी प्रामाणिक स्माईल सत्यापित करा."
- सत्यापित करा: MolFromSmiles सह येणारे SMILES पार्स करा. जर काही नसेल तर नकार द्या.
- Canonicalize: MolToSmiles सह प्रामाणिक शब्दलेखन पुनर्प्राप्त करा; आतापासून हे नेहमी वापरा.
- संख्यांची गणना करा: AI वरून नव्हे तर RDKit वरून आण्विक वजन, सूत्र, रिंगची संख्या, हायड्रोजन बाँड दाता/स्वीकारकर्त्यांची संख्या इ. मिळवा.
- फिक्स आयडी: InChIKey व्युत्पन्न करा, डेटाबेसमध्ये शोधा (PubChem), रेणू खरोखर तुम्हाला हवे असलेले कंपाऊंड आहे याची पुष्टी करा.
चार कॉपी करण्यायोग्य टेम्पलेट्स
1) स्माईलची विनंती करणे (संज्ञा पासून संरचनेपर्यंत):
कार्य: खालील कंपाऊंडसाठी प्रामाणिक स्माईल द्या. कंपाऊंड: पॅरासिटामोल (ॲसिटामिनोफेन). नियम: फक्त SMILES स्ट्रिंग आणि InChIKey द्या, आणखी स्पष्टीकरण जोडू नका. जर तुम्हाला खात्री नसेल, तर "अनिश्चित" लिहा, मेक अप करू नका.
2) स्माईल प्रमाणीकरण विनंती (संरचनेपासून नियंत्रणापर्यंत):
खालील स्माईलचे परीक्षण करा: CC(=O)Nc1ccc(O)cc1प्रश्न:1) हे वैध स्माईल आहे का? 2) ते कोणत्या कंपाऊंडशी संबंधित आहे (सामान्य नाव)? 3) आण्विक सूत्र काय आहे? टीप: मी RDKit सह अचूक आण्विक वजनाची गणना करेन; तुम्ही फक्त तुमची रचना व्याख्या द्या.
3) दोन प्रतिनिधित्वांची तुलना करणे:
माझ्याकडे दोन स्माईल आहेत: अ) ओसीसीबी) सीसीओटास्क: हे एकच रेणू आहेत की वेगळे? तुमचा युक्तिवाद लिहा. टीप: मी तुमचे उत्तर RDKit मध्ये कॅनॉनिकल करून तपासेन.
4) संरचना स्पष्टीकरण (शिकण्याच्या हेतूंसाठी):
स्माईल: Cn1cnc2c1c(=O)n(C)c(=O)n2CTask: हा स्माईल तुकडा तुकडा वाचा आणि प्रत्येक चिन्हाचा अर्थ (अणू, बंधन, अंगठी, सुगंध) साध्या तुर्कीमध्ये काय आहे ते स्पष्ट करा. ते कोणते कंपाऊंड आहे ते देखील सांगा.
कमकुवत प्रॉम्प्ट / मजबूत प्रॉम्प्ट
कमकुवत:
ॲसिटामिनोफेनचे गुणधर्म द्या.
"वैशिष्ट्य" अस्पष्ट आहे; AI आण्विक वजनापासून ते वितळण्याच्या बिंदूपर्यंत यादृच्छिक संख्या तयार करते, त्यापैकी काही चुकीचे असतील.
मजबूत:
कंपाऊंड: acetaminophen.1) Canonical SMILES आणि InChIKey ver.2) आण्विक सूत्र द्या. नियम: आण्विक वजन, वितळण्याचा बिंदू इ. सारखी संख्यात्मक मूल्ये देऊ नका; मी त्यांना RDKit/PubChem सह मिळवून देईन. फक्त बिल्ड आयडी द्या.
फरक: आम्ही AI ला ते कशावर (संरचना ओळख) मजबूत आहे आणि ते (प्रायोगिक संख्या) काय कमकुवत आहे याकडे निर्देशित केले.
इंप्रेशनची तुलना
वैशिष्ट्य
स्माईल
InChI / InChIKey
वाचनीयता
उच्च (लोकांना अनुकूल)
कमी (मशीन अनुकूल)
प्रामाणिकपणा
बदलाच्या अधीन (कॅनोनायझेशन आवश्यक आहे)
नैसर्गिकरित्या अविवाहित
वापर
मानवी संवाद, रेखाचित्र, इनपुट
डेटाबेस जुळणी, ओळख
स्टिरिओकेमिस्ट्री
समर्थन (@ चिन्हे)
समर्थन (स्तरित)
AI ला देण्यासाठी
आदर्श
पुष्टीकरणासाठी आदर्श
लहान प्रकरणे
केस 1 - दोन नावे, एक रेणू. एका विद्यार्थ्याला वाटले की "N-acetyl-para-aminophenol" आणि "paracetamol" भिन्न संयुगे आहेत आणि दोन स्वतंत्र प्रयोग योजले. जेव्हा RDKit मध्ये त्यांचे स्माईल कॅनॉनिकल केले, तेव्हा ते दोघे CC(=O)Nc1ccc(O)cc1 असल्याचे दिसून आले; तोच रेणू होता. हरवले : नियोजनाचा अर्धा दिवस; लाभ: 2-मिनिटांच्या कॅनोनिकायझेशन तपासणीसह टाळता आले असते.
केस 2 - अवैध SMILES कॅप्चर. AI ने CC(=O)Nc1ccc(O)cc1C( व्हेरिएंटसाठी (कंस बंद केलेले नाहीत) परत केले. विद्यार्थ्याने MolFromSmiles चालवला, तो काहीही नाही आला, लगेच त्रुटी दिसली आणि दुरुस्त केलेल्या SMILES ची विनंती केली. पडताळणी न करता, सदोष रचना सर्व खात्यांमध्ये पसरली असती.
केस 3 - चुकीचे आण्विक वजन. YZ ने ibuprofen (C13H18O2) साठी "आण्विक वजन 214.3 g/mol" म्हटले आहे. RDKit गणनेने 206.28 g/mol दिले. 0.1 mol साठी फरक: YZ सह 21.43 ग्रॅम, प्रत्यक्षात 20.63 ग्रॅम. 3.9% च्या या फरकामुळे स्टोचियोमेट्री आणि उत्पन्नाची गणना व्यत्यय येईल. त्यातून निर्धारवादी कॅल्क्युलस आला.
सामान्य चुका
- रेणू नावाने देणे. समानार्थी/व्यापार नावे गोंधळलेली आहेत. नेहमी SMILE किंवा InChI समाविष्ट करा.
- SMILES ची प्रामाणिकपणा न करता तुलना करणे. OCC आणि CCO मजकूरात भिन्न आहेत परंतु रेणूंमध्ये समान आहेत.
- जीभ मॉडेलला आण्विक वजन विचारणे. ही एक निर्धारक गणना आहे; हे RDKit वरून किंवा स्वहस्ते सूत्राद्वारे केले जाते.
- अवैध SMILES लक्षात येत नाही. MolFromSmiles None चे रिटर्न तपासत नाही आणि चुकीच्या स्ट्रक्चरसह पुढे जात आहे.
- स्टिरिओकेमिस्ट्रीकडे दुर्लक्ष करणे. दोन enantiomers (मिरर प्रतिमा isomers) भिन्न जैविक प्रभाव प्रदर्शित करू शकतात; SMILES मध्ये @/@@ चिन्हे वगळणे.
लक्ष द्या: समान आण्विक सूत्राचा अर्थ भिन्न रेणू नाही. C2H6O इथेनॉल (CCO) आणि डायमिथाइल इथर (COC) दोन्ही आहेत. सूत्राची समानता म्हणजे अस्मितेची समानता नव्हे; ओळखीसाठी InChIKey वापरा.
सारांशात
- नावाने नव्हे तर स्ट्रक्चर नोटेशनद्वारे रेणू ओळखा: मानवासह स्माईल, डेटाबेससह InChI/InChIKey.
- RDKit निर्धारवादी आहे; AI अंदाज लावते, RDKit गणना करते आणि सत्यापित करते.
- MolFromSmiles सह प्रत्येक AI SMILES पार्स करा आणि None तपासा, नंतर कॅनॉनिकल करा.
- RDKit मधून आण्विक वजन आणि फॉर्म्युला यासारखे अंक मिळवा, भाषेच्या मॉडेलमधून नाही.
- सूत्र समानतेचा अर्थ आण्विक ओळख नाही; ओळखीसाठी InChIKey वापरा.
अर्ज कार्य
तीन संयुगे निवडा (उदा. कॅफीन, आयबुप्रोफेन, ग्लाइसिन). प्रत्येकासाठी प्रामाणिक स्माईलसाठी AI ला विचारा. नंतर एक RDKit स्क्रिप्ट लिहा (वरील टेम्पलेट वापरा) आणि तयार करा: प्रामाणिक स्माईल, आण्विक सूत्र, आण्विक वजन, InChIKey. AI ने दिलेले किती SMILE वैध होते? YZ ने आण्विक वजन देखील दिले असल्यास, RDKit मूल्यासह टक्केवारी म्हणून फरक मोजा. तुमचे निष्कर्ष एका लहान टेबलमध्ये प्लॉट करा.
चेकलिस्ट
- [ ] SMILE आणि InChI/InChIKey काय आहेत आणि ते कधी वापरायचे हे मला माहीत आहे.
- [ ] मी AI ने दिलेल्या प्रत्येक स्माईलची MolFromSmiles सह पडताळणी करतो.
- [ ] मी स्माइल्सची तुलना करण्यापूर्वी त्यांना कॅनोनिकलाइझ करतो.
- [ ] मला RDKit वरून आण्विक वजन आणि सूत्र मिळत आहे, भाषेच्या मॉडेलमधून नाही.
- [ ] मी InChIKey सह डेटाबेसमधील रेणू ओळखीची पुष्टी करतो.
- मला अशा परिस्थिती माहित आहेत जिथे स्टिरिओकेमिस्ट्री महत्वाची आहे.