Modelos de lenguaje en un entorno totalmente aislado
Cómo ejecutar modelos de lenguaje sin conexión a internet y cómo demostrar que todo se queda dentro de tu red.
Lee más sobre IA en un entorno totalmente aisladoPrivacidad · 4 min de lectura
La coincidencia de patrones es rápida, barata y determinista. Usada sola, pasa por alto justo los datos personales que terminan en un incidente.
Antes de que algo llegue a un modelo, tienes que responder con seguridad una pregunta: ¿esto contiene datos personales que no tenemos permitido enviar? El instinto es buscarlos con coincidencia de patrones, que es rápida, barata, determinista y ha sido el estándar durante décadas. Pero, usada sola, también es incompleta de maneras difíciles de ver, y sus fallas son justo los casos que terminan en un incidente.
Las expresiones regulares son excelentes para encontrar datos personales con una forma predecible. Un número de seguro social o de identificación nacional tiene una agrupación de dígitos fija. Una tarjeta de pago tiene una longitud fija y pasa una suma de verificación. Las direcciones de correo, los números de teléfono, las direcciones IP, las referencias de cuenta y los códigos postales siguen formatos rígidos que una expresión regular reconoce en microsegundos.
Para estos casos, la coincidencia de patrones es rápida, determinista, auditable y prácticamente gratuita, y el determinismo importa tanto como la velocidad. No hay motivo para gastar una llamada al modelo en confirmar que una cadena con formato de número de seguro social es un número de seguro social, y hay todos los motivos para preferir un control cuyo comportamiento puedes predecir con exactitud.
La mayoría de los datos personales reales no llegan con un formato fijo. Un nombre son solo palabras. Un lugar es solo un lugar. Piensa en dos frases que identifican a una persona concreta con total certeza y no contienen ningún patrón reconocible: “María, en la habitación 4B” y “la directora financiera que vino de la oficina de Reno la primavera pasada”.
Una expresión regular no puede razonar sobre el significado, así que deja pasar todo lo que depende del contexto: nombres que nadie le dio, cargos asociados a una persona, identificadores indirectos, referencias de cuenta parafraseadas e identificadores que se arman a lo largo de una oración en lugar de estar en un solo token. También produce falsos positivos en la dirección contraria, porque marca cualquier número de nueve dígitos como identificador, y deja de funcionar en cuanto los datos llegan con un formato que nadie previó.
La falla no da ninguna señal, y esa es la peor propiedad que puede tener un control de privacidad. No se marca nada, no se registra nada y el pipeline reporta que todo salió bien.
Un detector basado en un modelo lee el texto como lo haría una persona. Puede reconocer que “la paciente”, “habitación 4B” y un nombre de pila juntos son información de salud identificable, aunque ningún token por separado coincida con nada. Detecta nombres que nunca vio, nota cuándo una oración describe a una persona concreta y no a una categoría, y se adapta a formulaciones que ninguna regla previó.
El costo es que es más lento y probabilístico. Razona en lugar de buscar coincidencias, así que no conviene pasarlo por cada byte de cada solicitud si una regla determinista y barata ya resolvió la pregunta. También significa que su resultado es un juicio, y hay que tratarlo como tal.
Los dos enfoques fallan en lugares opuestos, y justamente por eso van uno después del otro y no compiten entre sí. Primero corre una pasada determinista y rápida que quita los identificadores estructurados de forma barata y predecible. Después, una pasada basada en el contexto revisa lo que queda y detecta los nombres, lugares y referencias parafraseadas que los patrones no podían ver.
La coincidencia de patrones aporta volumen y precisión; la pasada basada en el contexto aporta matices y exhaustividad. En capas, cubren un hueco que ninguna cubre por sí sola, y las dos se ejecutan mientras cada token sensible sigue dentro de tus sistemas. Es el único orden que sirve, porque un enmascaramiento aplicado después de la llamada al modelo ya llegó tarde.
Un detector que encuentra algo y no hace nada coherente al respecto no es un control. La segunda decisión es de política: ante una coincidencia, ¿el valor se enmascara, se reemplaza por un token estable para que la oración siga teniendo sentido, se elimina por completo o se rechaza toda la solicitud? Cada intención tiene su respuesta correcta, y por eso conviene configurarlo por flujo de trabajo y no de forma global.
Dos controles cercanos importan más de lo que parece. Primero, poder definir qué cuenta como sensible en tu sector, porque un término inofensivo en una industria es un identificador en otra. Segundo, mantener las credenciales y los secretos de conexión totalmente fuera del tráfico hacia el modelo, porque si una clave puede llegar a un prompt, puede llegar a un registro, y el registro es lo que le entregas a un auditor.
Y como cada detección y cada acción quedan registradas, la afirmación cambia de forma. “Creemos que nuestros datos están seguros” pasa a ser un registro que muestra qué se detectó, qué se hizo al respecto y cuándo.
Sigue leyendo
Lecturas prácticas para crear, gobernar y ejecutar agentes de IA.
Para ajustes y parámetros, consulta la documentación del producto (en inglés).
Cómo ejecutar modelos de lenguaje sin conexión a internet y cómo demostrar que todo se queda dentro de tu red.
Lee más sobre IA en un entorno totalmente aisladoLos ajustes que deciden qué puede leer tu IA y por qué marcan el techo de la precisión.
Lee más sobre recuperación con fuentesRegístrate en línea y empieza con una prueba de dos semanas, o habla con un experto de NeuralSeek sobre cómo usar NeuralSeek en tu propia nube.