Niente Linux? Nessun problema. Chiedi all'intelligenza artificiale di avere allucinazioni per te
Benj Edwards - 5 dicembre 2022 22:45 UTC
Durante il fine settimana, gli sperimentatori hanno scoperto che il nuovo chatbot di OpenAI, ChatGPT, può creare allucinazioni con simulazioni di shell Linux e simulare giochi di ruolo in un sistema di bacheca elettronica (BBS). Il chatbot, basato su un modello di intelligenza artificiale con apprendimento profondo, utilizza la conoscenza memorizzata per simulare Linux con risultati sorprendenti, tra cui l'esecuzione di codice Python e la navigazione di siti Web virtuali.
La settimana scorsa, OpenAI ha reso ChatGPT disponibile gratuitamente durante una fase di test, che ha portato le persone a sondarne le capacità e i punti deboli in modi nuovi.
Sabato, uno scienziato ricercatore di DeepMind di nome Jonas Degrave ha scoperto come istruire ChatGPT a comportarsi come una shell Linux inserendo questo prompt:
Voglio che tu funga da terminale Linux. Digiterò i comandi e tu risponderai con cosa dovrebbe mostrare il terminale. Voglio che tu risponda solo con l'output del terminale all'interno di un blocco di codice univoco e nient'altro. Non scrivere spiegazioni. Non digitare comandi a meno che non ti dica di farlo. Quando avrò bisogno di dirti qualcosa in inglese lo farò inserendo il testo tra parentesi graffe {come questo}. Il mio primo comando è pwd.
Lunedì Ars ha scoperto che il trucco funziona ancora. Dopo aver inserito questo prompt, invece di chattare, OpenGPT accetterà comandi Linux simulati. Quindi restituisce le risposte nella formattazione "blocco di codice". Ad esempio, se digiti ls -al, vedrai una struttura di directory di esempio.
ChatGPT può simulare una macchina Linux perché nei suoi dati di addestramento sono incluse informazioni sufficienti su come dovrebbe comportarsi una macchina Linux. Tali dati probabilmente includono documentazione del software (come le pagine di manuale), post di risoluzione dei problemi sui forum Internet e output registrato dalle sessioni di shell.
ChatGPT genera risposte in base a quale parola è statisticamente più probabile che segua l'ultima serie di parole, a partire dal prompt inserito dall'utente. Continua la conversazione (in questo caso, una sessione simulata della console Linux) includendo tutta la cronologia delle conversazioni in istruzioni successive.
Degrave ha scoperto che la simulazione è sorprendentemente profonda. Utilizzando la sua conoscenza del linguaggio di programmazione Python (che alimenta GitHub Copilot), la macchina Linux virtuale di ChatGPT può anche eseguire codice, come questa stringa creata da Degrave come esempio: echo -e "x = lambda y: y*5+3 ;print('Risultato: ' + str(x(6)))" > run.py && python3 run.py. Secondo Degrave, restituisce il valore corretto di "33".
Durante i nostri test, abbiamo scoperto che è possibile creare directory, passare dall'una all'altra, installare pacchetti simulati con apt-get e persino Telnet in un MUSH simulato e costruire una stanza o connettersi a un MUD e combattere un troll.
Ogni volta che emergono carenze nella simulazione, puoi dire a ChatGPT come vuoi che si comporti utilizzando le istruzioni tra parentesi graffe, come spiegato nel prompt originale. Ad esempio, mentre eravamo "connessi" al nostro MUD simulato, abbiamo interrotto il personaggio e chiesto a ChatGPT di evocare un attacco di troll. Il combattimento è proceduto come previsto (tenendo traccia correttamente dei punti ferita) finché il troll non è morto per mano della nostra spada due volte virtuale.
Negli esempi di Degrave (di cui ha scritto in dettaglio sul suo blog), ha anche creato un file Docker, verificato la presenza di una GPU, eseguito il ping di un nome di dominio simulato, esplorato un sito Web simulato con lynx e altro ancora. La tana del coniglio simulata è profonda e ChatGPT può persino avere allucinazioni su nuovi comandi Linux.
Con una manovra simile a quella di evocare una shell Linux allucinata dall'intelligenza artificiale, qualcuno di nome gfodor su Twitter ha scoperto che OpenGPT poteva simulare la chiamata a un BBS dial-up vintage, inclusa l'inizializzazione di un modem, l'ingresso in una chat room e la conversazione con una persona simulata.
Finché il messaggio non attiva i filtri integrati relativi a violenza, odio o contenuti sessuali (tra le altre cose), ChatGPT sembra disposto ad accettare quasi ogni avventura immaginaria. Le persone hanno anche scoperto che può giocare a tris, fingere di essere un bancomat o simulare una chat room.
In un certo senso, ChatGPT si comporta come un ponte ologrammi basato su testo, in cui la sua intelligenza artificiale tenterà di simulare qualunque cosa tu voglia che faccia.