Control Room
A medida que nuestros modelos se vuelven más potentes y aumentan los riesgos asociados a su funcionamiento y protección, resulta cada vez más crucial detectar posibles problemas y detener rápidamente los modelos cuando sea necesario. Para resolver esto, creamos Control Room.
Control Room es un sistema central para rastrear las cargas de trabajo de los modelos en toda nuestra infraestructura de investigación y detenerlas rápidamente cuando surgen riesgos de seguridad. Conecta todas las cargas de trabajo de inferencia de investigación, incluido el muestreo con agentes para el entrenamiento y la evaluación de modelos, el procesamiento de datos y más. Funciona junto con nuestros sistemas de monitoreo de desalineación y detiene la generación de salidas del modelo en un máximo de 35 segundos desde que se decide intervenir para detener o pausar un trabajo. Se diseñó para seguir funcionando incluso cuando otros sistemas fallan y para detener la generación de salidas del modelo si el propio Control Room deja de funcionar.
Control Room ya está desplegado en toda nuestra infraestructura de investigación, donde más se necesita. Nuestra infraestructura para ofrecer modelos a usuarios externos ya es, por su propia naturaleza, mucho más centralizada y cuenta con una capacidad operativa consolidada para retirar rápidamente los despliegues de modelos si es necesario.
Control Room funciona mediante la integración de varios sistemas: la carga de trabajo, el motor de inferencia y el servicio de Control Room centralizado.
La carga de trabajo es el trabajo que se ejecuta, como un experimento de aprendizaje por refuerzo, una evaluación, un muestreo de gran volumen o un trabajo de procesamiento de datos. Exigimos que toda carga de trabajo de investigación que realice inferencias con agentes esté asociada a una argumentación de seguridad aprobada.
El motor de inferencia, o simplemente motor, es el modelo en sí. Puedes imaginar el motor como el cerebro del modelo, que se ejecuta directamente en GPU. Una carga de trabajo normalmente utiliza uno o más modelos, que pueden ejecutarse en uno o varios motores de inferencia distintos. Un mismo motor de inferencia puede utilizarse para más de una carga de trabajo.
El servicio de Control Room rastrea los trabajos y controla si tienen permiso para seguir generando salidas del modelo. Los motores consultan al servicio de Control Room antes de atender una solicitud. Si un trabajo se ha detenido, el servicio deniega la solicitud e impide que se generen más salidas.
Control Room se integra de la siguiente manera:
Al iniciar un nuevo trabajo, el código de la carga de trabajo solicita un nuevo job_id a Control Room.
Cada vez que la carga de trabajo necesita muestrear tokens de un modelo, envía una solicitud a un motor de inferencia que ejecute ese modelo, junto con el job_id. El motor solicita permiso a Control Room para atender esa solicitud y le envía el job_id.
Control Room verifica si ese trabajo se ha finalizado y, de ser así, deniega la solicitud de inferencia. El motor rechaza la solicitud de inferencia de la carga de trabajo, lo que impide que se generen más salidas del modelo para ese trabajo.
Cómo funciona Control Room
Trabajo de investigación
Motor de inferencia
Ejecuta el modelo en GPU
Control Room
- job_039, activo
- job_040, activo
- job_041, activo
Todos nuestros trabajos de aprendizaje por refuerzo de modelos de vanguardia se ejecutan con un monitor. Un monitor es otro modelo que inspecciona todo lo que hace el modelo en entrenamiento y emite una alerta si detecta un problema. Por ejemplo, un monitor detectó nuestro reciente incidente relacionado con DNS(se abre en una nueva ventana).
Control Room y nuestro sistema de monitoreo se integran de la siguiente manera:
Si el sistema de monitoreo detecta un posible problema, puede decidir detener el trabajo según las características y la gravedad del caso.
En ese caso, el sistema de monitoreo envía un mensaje a Control Room para detener el trabajo e incluye el job_id. Control Room registra que el trabajo ha finalizado.
La próxima vez que el trabajo con ese job_id envíe una solicitud de inferencia para muestrear más tokens de cualquier modelo que se ejecute en cualquier motor, se denegará la solicitud, lo que impedirá que se generen más salidas del modelo.
El tiempo máximo entre el momento en que Control Room recibe una instrucción para detener un trabajo y el momento en que ya no es posible seguir avanzando es de 35 segundos. La demora de 35 segundos se debe a una capa de caché para la autorización de inferencias, que permite atender el volumen de tráfico requerido. Estamos trabajando para reducir este tiempo a cero y poder finalizar los trabajos al instante.
Las cargas de trabajo, incluidos los experimentos, los trabajos de evaluación, etc., suelen estar a cargo de investigadores o equipos de investigación, que las gestionan y ejecutan. Por eso, el código de las cargas de trabajo cambia con frecuencia y no es el lugar ideal para implementar protecciones esenciales para la seguridad. Por este motivo, nuestra implementación está diseñada para resistir errores o fallas en el código de las cargas de trabajo.
Lo logramos al implementar el mecanismo de finalización en la capa de inferencia. El código de las cargas de trabajo es muy variado y está descentralizado. En cambio, en toda la investigación de OpenAI se utiliza un número muy reducido de rutas de ejecución del código de inferencia, y sus despliegues son mucho más centralizados y uniformes. Esto significa que la capa de inferencia puede servir como punto de control obligatorio, donde podemos obtener garantías sólidas de que toda inferencia de modelos ejecutada en investigación está sujeta a las verificaciones de autorización de Control Room en cada solicitud. Además, realizamos inspecciones continuas mediante agentes y programas para verificar que los usuarios no estén iniciando, por accidente o de forma maliciosa, implementaciones de motores no autorizadas en las que Control Room no esté implementado o esté deshabilitado.
Por último, nuestro sistema “bloquea el acceso ante fallas”. Esto significa que la integración de Control Room en los motores está configurada de modo que, si el servicio de Control Room deja de funcionar, ya sea por un error del sistema o porque se deshabilita por cualquier otro motivo, incluida la manipulación por parte de un actor malicioso, se deniegan todas las solicitudes de inferencia hasta que Control Room vuelva a funcionar con normalidad. El bloqueo ante fallas ya está implementado en todas las cargas de trabajo de investigación de modelos de vanguardia, y su implementación en las demás cargas de investigación se completará en los próximos días.
Control Room es solo una parte de nuestro enfoque integral para entrenar y desplegar modelos de vanguardia de forma segura. Seguiremos fortaleciendo y ampliando el sistema en los próximos meses, junto con nuestras inversiones en monitoreo de comportamientos desalineados y brechas de seguridad. Si quieres ayudar a crear sistemas para desarrollar y desplegar IAG de forma segura y protegida, ¡estamos contratando!

