Ganancias:
- Capacidad de identificar moléculas no por su nombre sino por su representación estructural (SMILES con humanos, InChI/InChIKey con base de datos)
- Capacidad de detectar estructuras inválidas o incorrectas analizando, validando y canonicalizando cada SONRISA proporcionada por inteligencia artificial con RDKit
- Ser capaz de comprender que cantidades deterministas como el peso molecular y la fórmula deben obtenerse de la herramienta basada en reglas, no del modelo de lenguaje.
La primera condición para utilizar la IA de forma segura en química es escribir la molécula en un lenguaje que tanto la máquina como el ser humano puedan entender. Dices "fenol", la IA lo hace bien; pero cuando dices "ácido" hay miles de posibilidades. Los nombres son ambiguos; Las representaciones estructurales son precisas. En esta unidad aprenderemos las dos notaciones básicas que traducen la molécula a texto (SMILES e InChI) y la herramienta que las verifica de forma determinista (RDKit). Nuestro objetivo: entregar la molécula a la IA de una manera que nunca la malinterprete y confirmar la estructura producida por la IA con una herramienta.
¿Qué son las SONRISAS?
SMILES (Sistema simplificado de entrada de líneas de entrada molecular) es un formato para escribir una molécula en una sola línea de texto. Los átomos se representan con letras, los enlaces con símbolos y los anillos con números. Ejemplos:
- Etanol: CCO (carbono-carbono-oxígeno; hidrógenos implícitos).
- Benceno: c1ccccc1 (la "c" minúscula indica carbono aromático; los 1 cierran el anillo).
- Aspirina: CC(=O)Oc1ccccc1C(=O)O.
- Cafeína: Cn1cnc2c1c(=O)n(C)c(=O)n2C.
El poder de SMILES es que lleva toda la estructura de enlaces en una sola línea; Su debilidad es que una misma molécula puede tener múltiples SONRISAS válidas (esto se llama no canonicalidad). Resolveremos esto con RDKit en un momento.
Pista: Las "SONRISAS canónicas" para una molécula son la única ortografía estándar para esa molécula. Para ver si dos SONRISAS son la misma molécula, canonicalízalas y compáralas; No deberían ser iguales textualmente, pero sí deberían ser moléculas iguales.
¿Qué es el InChi?
InChI (Identificador químico internacional) es un identificador estándar desarrollado por la IUPAC. La diferencia con SMILES es que la misma molécula siempre da el mismo InChI; es decir, es de naturaleza canónica. Es largo y difícil de leer, pero es ideal para comparar bases de datos. Para la búsqueda se utiliza la abreviatura "InChIKey" (resumen de 27 caracteres).
- Aspirina InChIKey: BSYNRYMUTXBXSQ-UHFFFAOYSA-N.
Regla: La gente habla SONRISAS (leer), las máquinas y las bases de datos coinciden con InChI/InChIKey (exacta). Dale SONRISAS a la IA; Confirmar en la base de datos con InChIKey.
RDKit: motor de verificación determinista
RDKit es una biblioteca de quimioinformática de código abierto. A diferencia del modelo de lenguaje, se basa en reglas: analiza SMILES, calcula el peso molecular, genera SMILES canónicos, devuelve InChI/InChIKey, dibuja la molécula. Entonces RDKit "calcula" lo que la IA "predice". Este es el corazón del flujo de trabajo: la IA genera, RDKit verifica.
Un flujo de verificación básico:
from rdkit import Chemfrom rdkit.Chem import Descriptores, Drawsmiles = "CC(=O)Oc1ccccc1C(=O)O" Chem.MolToSmiles(mol)) print("Fórmula molecular:", Chem.rdMolDescriptors.CalcMolFormula(mol)) print("Peso molecular:", round(Descriptors.MolWt(mol), 2), "g/mol") print("InChIKey:", Chem.MolToInchiKey(mol))
Si MolFromSmiles devuelve Ninguno, la IA le ha proporcionado una molécula no válida; Esto por sí solo es una advertencia muy valiosa. Si es válido, ya no es necesario preguntarle al modelo de lenguaje el peso molecular; Está en tus manos de forma determinista.
Paso a paso: interoperación AI + RDKit
- Identifica la molécula: dale el nombre a la IA, pide SONRISAS. Por ejemplo, "verifique las SONRISAS canónicas para el paracetamol".
- Verificar: analizar las SONRISAS entrantes con MolFromSmiles. Si no hay ninguno, rechace.
- Canonicalize: recupere la ortografía canónica con MolToSmiles; Utilice siempre esto a partir de ahora.
- Calcule números: obtenga el peso molecular, la fórmula, el número de anillos, el número de donantes/aceptores de enlaces de hidrógeno, etc. de RDKit, no de AI.
- ID de reparación: genere InChIKey, busque en la base de datos (PubChem), confirme que la molécula es efectivamente el compuesto que desea.
Cuatro plantillas copiables
1) Solicitar SONRISAS (del sustantivo a la estructura):
Tarea: Da las SONRISAS canónicas para el siguiente compuesto. Compuesto: paracetamol (acetaminofén). Regla: Dé solo la cadena SMILES y InChIKey, no agregue ninguna explicación adicional. Si no está seguro escriba "NO SEGURO", no invente.
2) Solicitud de validación de SMILES (de estructura a control):
Examine los SMILES a continuación: CC(=O)Nc1ccc(O)cc1Preguntas:1) ¿Es este un SMILES válido?2) ¿A qué compuesto corresponde (nombre común)?3) ¿Cuál es la fórmula molecular?Nota: Calcularé el peso molecular exacto con RDKit; Simplemente das la interpretación de tu estructura.
3) Comparando dos representaciones:
Tengo dos SONRISAS:A) OCCB) CCOTask: ¿Son estas la misma molécula o diferentes? Escribe tu razonamiento. Nota: verificaré tu respuesta canonicalizándola en RDKit.
4) Explicación de la estructura (con fines de aprendizaje):
SONRISAS: Cn1cnc2c1c(=O)n(C)c(=O)n2CTarea: Lea estas SONRISAS pieza por pieza y explique qué significa cada símbolo (átomo, enlace, anillo, aromaticidad) en turco simple. Indique también de qué compuesto se trata.
Aviso débil / Aviso fuerte
Débil:
Dar las propiedades del paracetamol.
"Característica" es vaga; La IA genera números aleatorios desde el peso molecular hasta el punto de fusión, algunos de los cuales serán incorrectos.
Fuerte:
Compuesto: acetaminofén.1) Canonical SMILES e InChIKey ver.2) Dar la fórmula molecular.Regla: NO DAR valores NUMÉRICOS como peso molecular, punto de fusión, etc.; Los conseguiré con RDKit/PubChem. Simplemente proporcione el ID de compilación.
Diferencia: Dirigimos la IA hacia aquello en lo que es fuerte (identidad de estructura) y lejos de aquello en lo que es débil (números experimentales).
Comparación de impresiones
característica
SONRISAS
InChI / InChIKey
Legibilidad
Alto (amigable con la gente)
Bajo (compatible con máquinas)
canonicidad
Sujeto a cambios (necesita canonización)
naturalmente soltero
Uso
comunicación humana, dibujo, entrada
Coincidencia de base de datos, identidad
estereoquímica
Soportes (@ símbolos)
Soportes (en capas)
para darle a la IA
ideal
Ideal para confirmación
mini casos
Caso 1: Dos nombres, una molécula. Un estudiante pensó que el "N-acetil-para-aminofenol" y el "paracetamol" eran compuestos diferentes y planificó dos experimentos separados. Cuando canonicalizaron sus SONRISAS en RDKit, ambos resultaron ser CC(=O)Nc1ccc(O)cc1; Era la misma molécula. Perdido: medio día de planificación; ganancia: podría haberse evitado con una prueba de canonicalización de 2 minutos.
Caso 2: captura de SMILES no válida. La IA devolvió CC(=O)Nc1ccc(O)cc1C( para una variante (los corchetes no están cerrados). El estudiante ejecutó MolFromSmiles, devolvió Ninguno, inmediatamente vio el error y solicitó SMILES corregidos. Sin verificación, la estructura defectuosa se habría extendido a todas las cuentas.
Caso 3: peso molecular incorrecto. YZ dijo "peso molecular 214,3 g/mol" para el ibuprofeno (C13H18O2). El cálculo del RDKit arrojó 206,28 g/mol. Diferencia para 0,1 mol: 21,43 g con YZ, en realidad 20,63 g. Esta diferencia del 3,9% alteraría la estequiometría y el cálculo del rendimiento. Trajo cálculo determinista.
Errores comunes
- Dando la molécula por su nombre. Se confunden sinónimos/nombres comerciales. Incluya siempre SMILES o InChI.
- Comparando SONRISAS sin canonicalizarlas. OCC y CCO son diferentes en texto pero iguales en moléculas.
- Preguntar el peso molecular al modelo de lengua. Este es un cálculo determinista; Se hace desde RDKit o manualmente desde la fórmula.
- No notar SONRISAS inválidas. No comprobar la devolución de MolFromSmiles None y continuar con la estructura incorrecta.
- Despreciando la estereoquímica. Los dos enantiómeros (isómeros de imagen especular) pueden exhibir diferentes efectos biológicos; Saltarse los signos @/@@ en SMILES.
Atención: la misma fórmula molecular no significa moléculas diferentes. C2H6O es tanto etanol (CCO) como dimetiléter (COC). La igualdad de fórmula no es igualdad de identidad; Utilice InChIKey para identificación.
En resumen
- Identifique moléculas por notación estructural, no por nombre: SMILES con humano, InChI/InChIKey con base de datos.
- RDKit es determinista; La IA predice, RDKit calcula y verifica.
- Analice cada AI SMILES con MolFromSmiles y verifique Ninguno, luego canonicalice.
- Obtenga números como el peso molecular y la fórmula de RDKit, no del modelo de lenguaje.
- La igualdad de fórmulas no significa identidad molecular; Utilice InChIKey para identificación.
Tarea de aplicación
Elija tres compuestos (por ejemplo, cafeína, ibuprofeno, glicina). Pídele a la IA SONRISAS canónicas para cada uno. Luego escriba un script RDKit (use la plantilla anterior) y genere: SONRISAS canónicas, fórmula molecular, peso molecular, InChIKey. ¿Cuántas de las SONRISAS dadas por la IA fueron válidas? Si YZ también proporcionó el peso molecular, calcule la diferencia como porcentaje con el valor de RDKit. Trace sus hallazgos en una tabla pequeña.
lista de verificación
- [ ] Sé qué son SMILES e InChI/InChIKey y cuándo usarlos.
- [] Verifico cada SONRISA dada por AI con MolFromSmiles.
- [ ] Canonicalizo las SONRISAS antes de compararlas.
- [] Obtengo el peso molecular y la fórmula de RDKit, no del modelo de lenguaje.
- [ ] Confirmo la identidad de la molécula en la base de datos con InChIKey.
- [] Conozco situaciones en las que la estereoquímica es importante.