Control Room
A mesura que els nostres models es tornen més potents i augmenten els riscos associats de seguretat i protecció, és cada cop més important poder detectar possibles problemes i aturar els models ràpidament quan calgui. Per donar resposta a aquesta necessitat, hem creat Control Room.
Control Room és un sistema central per fer el seguiment de les càrregues de treball dels models a tota la nostra infraestructura de recerca i aturar-les ràpidament quan sorgeixen problemes de seguretat o protecció. Connecta totes les càrregues de treball d'inferència de recerca, incloent-hi el mostreig amb agents per entrenar i avaluar models, el processament de dades i altres tasques. Funciona conjuntament amb els nostres sistemes de supervisió de la desalineació i atura la generació de resultats del model en un màxim de 35 segons des que es decideix intervenir per aturar o posar en pausa una tasca. S'ha dissenyat perquè continuï funcionant encara que altres sistemes fallin i perquè aturi la generació de resultats del model si el mateix Control Room deixa de funcionar.
Control Room ja està desplegat a tota la nostra infraestructura de recerca, que és on més es necessita. La nostra plataforma per oferir models a usuaris externs ja és molt més centralitzada per naturalesa i disposa d'una capacitat operativa consolidada per desactivar ràpidament els desplegaments de models si cal.
Control Room funciona integrant diversos sistemes: la càrrega de treball, el motor d'inferència i el servei de Control Room centralitzat.
La càrrega de treball és la tasca que s'executa, com ara un experiment d'aprenentatge per reforç, una avaluació, un mostreig de gran volum o una tasca de processament de dades. Exigim que totes les càrregues de treball de recerca que facin inferència amb agents estiguin associades a una argumentació de seguretat aprovada.
El motor d'inferència, o simplement motor, és el model mateix. Pots entendre el motor com el cervell del model, que s'executa directament en GPU. Una càrrega de treball normalment utilitza un o més models, que es poden executar en un o més motors d'inferència diferents. Un mateix motor d'inferència pot ser utilitzat per diverses càrregues de treball.
El servei de Control Room fa el seguiment de les tasques i controla si tenen permís per continuar generant resultats del model. Els motors consulten el servei de Control Room abans d'atendre una sol·licitud. Si una tasca s'ha aturat, el servei denega la sol·licitud i impedeix que es generin més resultats.
Control Room s'integra de la manera següent:
Quan s'inicia una tasca nova, el codi de la càrrega de treball sol·licita un nou job_id a Control Room.
Sempre que la càrrega de treball necessita mostrejar segments textuals d'un model, envia una sol·licitud a un motor d'inferència que executa aquell model i li passa el job_id. El motor demana permís a Control Room per atendre la sol·licitud i li passa el job_id.
Control Room comprova si la tasca s'ha finalitzat i, si és així, denega la sol·licitud d'inferència. El motor respon a la sol·licitud d'inferència de la càrrega de treball amb una negativa, de manera que el model deixa de generar resultats per a aquella tasca.
Com funciona Control Room
Tasca de recerca
Motor d'inferència
Executa el model en GPU
Control Room
- job_039, activa
- job_040, activa
- job_041, activa
Totes les nostres tasques d'aprenentatge per reforç d'avantguarda s'executen amb un supervisor. Un supervisor és un altre model que inspecciona tot el que fa el model que s'està entrenant i emet una alerta si detecta un problema. Per exemple, un supervisor va detectar el nostre recent incident relacionat amb el DNS(s'obre en una finestra nova).
Control Room i el nostre sistema de supervisió s'integren de la manera següent:
Si el sistema de supervisió detecta un possible problema, pot decidir aturar la tasca en funció de les circumstàncies i de la gravetat.
En aquest cas, el sistema de supervisió envia un missatge a Control Room perquè aturi la tasca i li passa el job_id. Control Room registra que la tasca s'ha finalitzat.
La propera vegada que la tasca amb aquell job_id faci una sol·licitud d'inferència per mostrejar més segments textuals de qualsevol model que s'executi en qualsevol motor, la sol·licitud es denegarà i el model deixarà de generar resultats.
El temps màxim entre el moment en què Control Room rep una instrucció per aturar una tasca i el moment en què ja no és possible continuar avançant és de 35 segons. Aquest retard de 35 segons es deu a una capa de memòria cau per a l'autorització d'inferències, necessària per gestionar el volum de trànsit requerit. Treballem per reduir aquest temps a zero i poder finalitzar les tasques a l'instant.
De les càrregues de treball, com ara experiments, tasques d'avaluació i d'altres, se'n solen encarregar investigadors o equips de recerca, que en gestionen l'execució. Per això, el codi de les càrregues de treball canvia sovint i no és el mètode ideal per implementar les proteccions essencials de què depèn la seguretat. Per aquest motiu, hem dissenyat la implementació perquè sigui resilient davant d'errors o fallades en el codi de les càrregues de treball.
Això ho aconseguim implementant el mecanisme de finalització a la capa d'inferència. El codi de les càrregues de treball és molt divers i descentralitzat. En canvi, en tota la recerca d'OpenAI s'utilitzen molt poques vies d'execució del codi d'inferència, i els seus desplegaments són molt més centralitzats i uniformes. Això permet que la capa d'inferència actuï com a punt de pas obligat, on podem obtenir garanties sòlides que totes les inferències dels models utilitzats en recerca se sotmeten a les comprovacions d'autorització de Control Room en cada sol·licitud d'inferència. A més, fem revisions contínues mitjançant agents i programes per comprovar que els usuaris no executin, accidentalment o de manera maliciosa, implementacions de motors fora de control que no incorporin Control Room o que el tinguin desactivat.
Finalment, el nostre sistema "es bloqueja en cas de fallada": la integració de Control Room als motors està configurada perquè, si el servei de Control Room deixa de funcionar, sigui per un error del sistema o perquè s'ha desactivat per qualsevol altre motiu, també per la manipulació per part d'un actor maliciós, es deneguin totes les sol·licituds d'inferència fins que Control Room torni a funcionar amb normalitat. El bloqueig en cas de fallada ja s'ha desplegat a totes les càrregues de treball de recerca amb models d'avantguarda i s'acabarà d'estendre a la resta de càrregues de treball de recerca durant els propers dies.
Control Room és només una part del nostre enfocament integral per entrenar i desplegar models d'avantguarda de manera segura. Durant els propers mesos continuarem reforçant i ampliant el sistema, alhora que invertirem en la supervisió per detectar comportaments desalineats i bretxes de seguretat. Si vols contribuir a crear sistemes per desenvolupar i desplegar l'AGI de manera segura i protegida, tenim vacants obertes!

