API Sandbox: Execuție izolată de cod pentru agenți AI

Fluxurile de lucru ale agenților necesită frecvent o execuție deterministă. Atunci când un agent trebuie să ruleze o analiză statistică, să genereze un grafic, să valideze un calcul sau să transforme un set de date, are nevoie de o execuție deterministă cu rezultate exacte. Agentul raționează cu privire la ce trebuie să calculeze. Sandbox-ul execută calculul.

Creat pentru Perplexity, acum disponibil ca serviciu

Am creat sandbox-ul pentru a susține acest model la nivel intern. Perplexity Computer, Agentul nostru Financiar și Cercetare aprofundată execută cod în interiorul unor medii izolate. Computer rulează mii de sesiuni pe minut. Agentul Financiar folosește sandbox pentru calculele datelor de piață în timp real. Cercetare aprofundată îl folosește pentru generarea de fișiere, procesarea datelor și conversia formatului în timpul fluxului de lucru. API-ul Sandbox face ca același mediu de execuție să fie disponibil ca serviciu independent.

Sesiuni cu stare și sisteme de fișiere persistente

Fiecare sesiune rulează în propriul pod Kubernetes izolat. Dezvoltatorul nu gestionează nicio infrastructură subiacentă: noi ne ocupăm de provizionare, rețelistică și curățare. Limbajele acceptate sunt Python, JavaScript și SQL, cu instalarea pachetelor de runtime disponibilă per sesiune.

Sesiunile sunt cu stare. Un sistem de fișiere persistent este montat prin FUSE. Daemonul FUSE interceptează operațiunile cu fișiere și le traduce pentru agent: citire, scriere, listare de fișiere și urmărire a modificărilor de la crearea sesiunii. Fișierele create într-un pas sunt disponibile în pașii următori. Fluxurile de lucru de lungă durată se pot întrerupe, pot fi reluate ore mai târziu și pot continua cu starea completă intactă. Fiecare sesiune acceptă până la cinci procese în fundal.

Zero-trust în mod implicit

Arhitectura de securitate presupune cod neverificat în mod implicit. Sandbox-urile nu au acces direct la rețea. Când este necesară conectivititatea externă, traficul trece printr-un proxy de ieșire care rulează în afara sandbox-ului. Proxy-ul potrivește cererile de ieșire după domeniul de destinație și injectează acreditările corespunzătoare. Codul care rulează în interiorul sandbox-ului nu are niciodată acces la chei API brute sau secrete. Timp-out-urile încorporate și limitele de resurse impun limite de execuție.

API-ul Agent ca strat de orchestrare

API-ul Sandbox va fi disponibil ca instrument în cadrul API-ului Agent, permițând runtime-ului de orchestrare să delege către execuția de cod deterministă în timpul fluxului de lucru. Agentul decide ce să calculeze, trimite către sandbox, observă rezultatul și își continuă bucla de raționament. Aceeași cheie API, același set de credite.

API-ul Sandbox va fi lansat în curând. Vom deschide o versiune beta privată în scurt timp, cu documentație la docs.perplexity.ai