Sandbox API: izoliuotas kodo vykdymas dirbtinio intelekto agentams

Agentų darbo eigai dažnai reikia deterministinio vykdymo. Kai agentui reikia atlikti statistinę analizę, sugeneruoti diagramą, patvirtinti skaičiavimą arba transformuoti duomenų rinkinį, jam reikalingas deterministinis vykdymas su tiksliais rezultatais. Agentas mąsto apie tai, ką reikia apskaičiuoti. Sandbox tai apskaičiuoja.
Sukurta Perplexity, dabar pasiekiama kaip paslauga
Sukurėme Sandbox, kad palaikytume šį šabloną viduje. Perplexity Computer, mūsų finansų agentas ir giluminis tyrimas – visi jie vykdo kodą izoliuotose aplinkose. Computer per minutę paleidžia tūkstančius sesijų. Finansų agentas naudoja Sandbox tiesioginiams rinkos duomenų skaičiavimams. Giluminis tyrimas jį naudoja failų generavimui, duomenų apdorojimui ir formato konvertavimui darbo eigos metu. Sandbox API suteikia tokią pačią vykdymo aplinką kaip savarankišką paslaugą.
Būsenos sesijos su nuolatinėmis failų sistemomis
Kiekviena sesija veikia savo izoliuotame Kubernetes pod'e. Kūrėjui nereikia valdyti jokios bazinės infrastruktūros: mes pasirūpiname aprūpinimu, tinklu ir valymu. Palaikomos kalbos yra Python, JavaScript ir SQL, o paketus vykdymo metu galima įdiegti kiekvienoje sesijoje.
Sesijos turi būseną. Per FUSE prijungta nuolatinė failų sistema. FUSE demonas perima failų operacijas ir išverčia jas agentui: skaito, rašo, pateikia failų sąrašą ir seka pakeitimus nuo sesijos sukūrimo. Viename žingsnyje sukurti failai yra prieinami vėlesniuose žingsniuose. Ilgai veikiančios darbo eigos gali pristabdyti, po kelių valandų pratęsti ir tęsti darbą su visiškai nepažeista būsena. Kiekviena sesija palaiko iki penkių foninių procesų.
Nepatikimas pagal numatytuosius nustatymus
Saugumo architektūra pagal numatytuosius nustatymus daro prielaidą, kad kodas yra nepatikimas. Sandbox neturi tiesioginės prieigos prie tinklo. Kai reikalingas ryšys su išore, srautas nukreipiamas per išorinio ryšio tarpinį serverį (egress proxy), veikiantį už Sandbox ribų. Tarpinis serveris suderina išsiunčiamas užklausas pagal paskirties domeną ir įterpia atitinkamus kredencialus. Sandbox viduje vykdomas kodas niekada neturi prieigos prie neapdorotų API raktų ar paslapčių. Vykdymo ribas užtikrina integruoti laiko limitai ir išteklių apribojimai.
Agent API kaip orkestravimo sluoksnis
Sandbox API bus pasiekiama kaip įrankis Agent API sudėtyje, leidžiantis orkestravimo vykdymo aplinkai deleguoti deterministinį kodo vykdymą darbo eigos viduryje. Agentas nusprendžia, ką apskaičiuoti, perduoda užklausą į Sandbox, stebi išvestį ir tęsia savo samprotavimo ciklą. Tas pats API raktas, tas pats kreditų rinkinys.
Sandbox API pasirodys netrukus. Netrukus atviriame privačią beta versiją, o dokumentaciją rasite docs.perplexity.ai