Az elmúlt években a nagy nyelvi modellek (például a ChatGPT) egyre természetesebb részei lettek a mindennapoknak. A következő lépés a mesterséges intelligencia térnyerésében az úgynevezett AI ügynökök elterjedése: olyan szoftverek, amelyek képesek adatokat gyűjteni a környezetből, és előre beállított célok érdekében önálló feladatokat végrehajtani. Ahhoz, hogy ez működjön, a rendszernek képesnek kell lennie függvények és API-k (interfészek) meghívására, illetve paraméterek kezelésére. Az OpenAI „cookbook”-ja erre egy könnyen követhető útmutatót nyújt, és ez az egyik legnépszerűbb leírás az oldalukon.
Az OpenAI cookbook két példáját tekintettük meg AI expertjeinkkel, mindkettőben azt láttuk, hogy egy AI ügynöknek elég megadni az adatbázis szerkezetét, és máris képes SQL-lekérdezéseket futtatni. A gond az, hogy nem csak „ártatlan” lekérdezéseket ír, hanem akár adatok törlésére vagy módosítására is képes lehet. Egy óvatlan fejlesztő tehát könnyen kockára teheti a teljes adatbázisát.
Nézzünk egy zenei példát a ChatCompletion API „tools” paraméterével: zenei kérdésekre válaszolt az AI SQL-lekérdezésekkel a Chinook adatbázisban. A teszteléskor a rendszer jól működött egyszerű kérésekre: például meg tudta mondani, melyik albumon van a legtöbb szám, vagy felsorolta a Nirvana albumait. És akkor hol a probléma? Minden biztonsági szakembernek ugyanaz jut eszébe: vajon mennyire biztonságos, ha többet is kérhetünk tőle?