
Programmi hobbistici client ChatGPT per MS-DOS

Un appassionato di retrò di Singapore ha fatto funzionare ChatGPT su un computer di 40 anni fa. Ha programmato un client per MS-DOS che utilizza alcuni trucchi per consentire conversazioni futuristiche con l'intelligenza artificiale.
Yeo Kheng Meng non è un personaggio sconosciuto. Si è occupato del servizio di messaggistica istantanea Slack nel 2019. Ha programmato un client Slack per Windows 3.1, lanciato nel 1992. Il suo ultimo progetto è ancora una volta dedicato a un programma di chat, ma questa volta si tratta di un programma dotato di intelligenza artificiale. E sta viaggiando ancora più indietro nel tempo, visto che il suo client ChatGPT per MS-DOS funziona addirittura su un PC IBM dei primi anni '80.
Il computer nel video è un IBM 5155 Portable PC del 1984 con MS-DOS 6.22. Ha un processore Intel 8088 a 4,77 megahertz, che ha visto la luce per la prima volta nel 1981 insieme a MS-DOS 1.0. Per l'hobbista, questo è il dispositivo perfetto, perché: "Se la mia applicazione funziona su questo computer IBM, dovrebbe funzionare anche su qualsiasi altro computer DOS".
Come puoi vedere nel video, ChatGPT funziona in MS-DOS come applicazione a schermo intero e di solo testo. Ci sono diversi ostacoli alla sua implementazione. Le API di ChatGPT pubblicate da OpenAI all'inizio di marzo permettono a Yeo di programmare un client. Da un lato utilizza le Chat Completion API per la programmazione e dall'altro attinge alle risorse open source. Per compilare il codice scritto in Windows a 64 bit per DOS a 16 bit, utilizza Open Watcom C/C++. Per provare il software utilizza il software di virtualizzazione Virtualbox - una macchina virtuale con MS-DOS 6.22.

Fonte: Yeo Kheng Meng
La sfida più grande per Yeo durante l'implementazione è il fatto che non esistono API di rete per MS-DOS. Almeno non in versione standard. Yeo risolve il problema utilizzando uno standard di rete del 1983 chiamato PC/TCP Packet Driver e una libreria di rete open source mTCP.
Altri ostacoli nell'implementazione sono la mancanza di multithreading del vecchio processore e il fatto che ChatGPT richiede una connessione HTTPS criptata. Yeo risolve questo problema utilizzando un proxy HTTP-to-HTTPS. Se vuoi saperne di più su questo progetto, l'hobbista ha documentato il suo lavoro qui. Ha pubblicato il codice del client ChatGPT per MS-DOS su GitHub.
Foto didascalia: Yeo Kheng Meng

La mia musa ispiratrice si trova ovunque. Quando non la trovo, mi lascio ispirare dai miei sogni. La vita può essere vissuta anche sognando a occhi aperti.