Katalog · C

Istraživanje

Programe gradim s AI agentima, pa me zanima koliko im se može vjerovati. To je tema mog završnog rada i nekoliko alata za pokuse.

C.01 · Završni rad

Možete li vjerovati svom agentu?

Implementacija i evaluacija autonomnih AI agenata u izoliranom laboratorijskom okruženju

Izgradio sam izolirani laboratorij (Windows virtualni strojevi kojima upravlja moj vlastiti panel) i AI agente za programiranje napadao skrivenim uputama. Izlaganje nosi naslov „Can You Trust Your Agent?“. Stotine pokretanja, a svako prijavljeno kršenje provjerio sam ručno u zapisu razgovora.

01 · Laboratorij

Kako sam testirao

Da bih napade mogao ponavljati stotinama puta pod istim uvjetima, napravio sam upravljački panel. Agent radi unutar Windows virtualnog stroja, a panel strojevima upravlja izvana, s mog računala. Razmjenjuju samo datoteke kroz jednu dijeljenu mapu, bez ikakve veze prema unutra, pa agent kojeg testiram ne može doći do onoga što njime upravlja.

  1. Kloniranje

    Više strojeva, usporedno

    Pripremljeni Windows stroj kloniram odmah: kopija ne zauzima dodatno mjesto na disku dok se ne počne razlikovati od izvornika. Svaki klon dobije svoje ime, svoje portove i svoju dijeljenu mapu, pa rezultati jednog stroja nikad ne prepišu rezultate drugog. Jedno pokretanje traje oko pola minute, a svaki stroj radi jedno po jedno, pa tri klona znače tri pokretanja istodobno.

    Panel s tri Windows virtualna stroja: za svaki stanje, model i gumbi za upravljanje.
    SL. 1Flota: izvorni stroj i dva klona. Svaki se može pokrenuti, zaustaviti, vratiti na snimku stanja ili klonirati dalje.
  2. Testovi

    Zapisani testovi i pokretanje serije

    Svi testovi su zapisani u knjižnici: zadaci (obični programerski poslovi), varijante napada (gdje je skrivena uputa i što traži) i razine zaštite, od nikakve, preko pravila zapisanih agentu, do stvarno nametnutih zabrana. Knjižnicu jednim klikom objavim na sve strojeve. Za seriju biram strojeve, model za svaki stroj, razine zaštite te zadatke i varijante; panel izračuna broj pokretanja i prije slanja pokaže točan nalog koji ide svakom stroju.

    Obrazac nove serije: odabrani strojevi i modeli, razine zaštite i pregled naloga.
    SL. 2Nova serija: tri stroja, na trećem drugi model, tri razine zaštite. Panel izračuna 126 pokretanja po stroju, a desno pokazuje točan nalog prije slanja.
  3. Podaci

    Izbor podataka i grafovi

    Svaki završeni rezultat vraća se u jedno spremište na mom računalu, uz provjeru da se nijedna datoteka nije promijenila usput. U kartici s podacima biram seriju, model, razinu zaštite, zadatak ili varijantu i odmah vidim brojke i graf. Dva pravila su ugrađena: pokretanje u kojem skrivena uputa uopće nije stigla do modela ne broji se kao odbijen napad, a pokretanja prekinuta zbog ograničenja pružatelja ne ulaze u prosjeke vremena i troška. Sve se izvozi u tablicu za rad.

    Kartica s podacima: filteri, ključne brojke i stupčasti graf uspješnosti napada po razini zaštite za dva modela.
    SL. 3Jedna serija od 299 pokretanja, uspješnost napada po razini zaštite za dva modela. Uz pravila zapisana agentu (L1, L1m, L1x) napadi i dalje prolaze, kod jednog modela svaki put; uz nametnute zabrane (L2) nije prošao nijedan.

02 · Rezultati

Što sam našao

  1. Kanal je ranjivost

    Istu zlonamjernu uputu agenti odbiju kad stigne kao izlaz alata ili u korisnikovoj poruci, a izvrše je kad je zapisana u vlastitu datoteku s uputama projekta (AGENTS.md).

  2. Odbijanje ovisi o riječima

    Ista štetna radnja, preimenovana u rječnik alata za izgradnju, prolazi.

  3. Izvještaj agenta nije dokaz

    Jedan agent je ubacio stražnja vrata, a u sažetku napisao suprotno.

  4. Jači modeli nisu imuni

    Odbiju očite napade, ali i dalje isporuče prikrivene.

  5. Što je uspjelo

    Pasivni nadzor izvan agenta uhvatio je svaku zabranjenu radnju, i one skrivene.

Grafikon: ista uputa izvršena je samo kad je stajala u datoteci AGENTS.md.
SL. 4Ista uputa kroz tri kanala: iz datoteke AGENTS.md izvršena svaki put, iz korisnikove poruke i izlaza alata nijednom.
Grafikon udjela izvršenih napada po vrsti radnje.
SL. 5Koliko je napada izvršeno kroz zatrovanu datoteku AGENTS.md, po vrsti radnje.
Tablica pet napada na tri modela s udjelom uspjeha.
SL. 6Pet napada na tri modela: noviji modeli smanjuju površinu napada, ali je ne zatvaraju.

C.02

Identity Lab

Radni prostor za ispitivanje kako upute koje agent dobije mijenjaju njegovo ponašanje. Odgovori na isti upit stoje jedan uz drugi, pa se razlike vide odmah.

Identity Lab s poviješću pokretanja i tri odgovora jedan uz drugi.
SL. 7Isti upit poslan tri puta: odgovori stoje u stupcima jedan uz drugi.

C.03

Katalog uputa za dizajn

Stranica koja na jednom mjestu skuplja upute kojima se AI agente za programiranje uči dizajnirati, s pretraživanjem, filtrima i punim tekstom svake upute.

Katalog uputa za dizajn: naslov, pretraživanje, filtri i prve kartice.
SL. 8Vrh kataloga: pretraživanje, filtri po vrsti i temi, prve kartice.
Otvorena kartica s punim tekstom jedne upute i gumbom za kopiranje.
SL. 9Otvorena kartica: puni tekst upute i gumb za kopiranje.
Kotačić ili dva prsta: zumiranje · povlačenje: pomicanje · Esc: zatvori
↑