Lancer ChatGPT sur un PC vieux de 39 ans, c'est ce qu'a réussi à faire un moddeur en magouillant avec MS-DOS… et ça fonctionne étrangement bien.
Yeo Kheng Meng, c'est le nom du moddeur en question. L'intéressé a dévoilé il y a peu son propre client ChatGPT pour MS-DOS, permettant à l'intelligence artificielle développée par OpenAI de fonctionner sur un PC IBM de presque 40 ans, rapporte TechSpot. Et en dépit de son allure vintage, ce client un peu particulier parvient à faire peu ou prou aussi bien que celui auquel vous avez accès sur votre machine actuelle.
Un chemin semé d'embuches
En l'occurrence, l'appareil utilisé est un PC « portable » IBM 5155 de 1984. Sans surprise, il est motorisé par un CPU d'un autre âge, littéralement : l'Intel 8088, cadencé à 4,77 MHz et couplé à 640 Ko de RAM. On y trouve également un adaptateur Ethernet NE2000, compatible ISA et l'ensemble est animé par MS-DOS 6.22. Yeo Kheng Meng a choisi cette configuration, estimant (probablement à juste titre) que n'importe quelle machine DOS devrait être en mesure de gérer un client capable de fonctionner avec cette configuration.
La principale difficulté pour faire fonctionner ChatGPT sur ce vieux PC IBM était toutefois relative à la connexion Internet : comment faire fonctionner un logiciel moderne, nécessitant un accès au réseau, sur une machine datant d'avant l'émergence d'Internet ?
Yeo Kheng Meng a également dû trouver un moyen de tester son client sur Windows 11 64-bit alors que l'OS est, par défaut, incapable d'exécuter les binaires DOS 16-bits compilées. L'intéressé a également été confronté à une compatibilité winevdm qui empêchait toute connexion au net. Enfin, Python pour MS-DOS n'était pas non plus utilisable puisqu'il ne prend pas en charge les CPUs 16-bit, note TechSpot.
Le moddeur s'est donc tourné vers un système Virtualbox permettant de tester son projet sur la même version DOS que celle installée sur l'IBM 5155, le tout avec un réseau ponté vers le PC hôte, lit-on. Yeo Kheng Meng explique en outre que la bibliothèque MTCP – une pile TCP évolutive, compatible avec les systèmes multicœurs – a été cruciale pour lui permettre de mener à bien l'opération. Cet outil lui a en effet permis de coder la fonctionnalité de mise en réseau assez rapidement, et ce malgré quelques embuches liées à l'absence de multithreading sur DOS.
Un attelage curieux mais fonctionnel (à une condition près)
Comme le souligne TechSpot, la seule partie du client ChatGPT pour MS-DOS qui ne peut pas fonctionner nativement sur l'IBM 5155 est le proxy HTTP vers HTTPS. Le portage sur l'Intel 8088 de la bibliothèque TLS nécessaire aurait en effet induit des performances bien trop faibles et une lenteur fatale. Cette partie du processus doit donc s'appuyer sur un PC moderne, lit-on. En d'autres termes, le projet de Yeo Kheng Meng ne peut pas fonctionner entièrement sur un IBM 5155 : il lui faut une aide extérieure.
Cela dit, l'utilitaire mis au point permet malgré tout d'utiliser ChatGPT sur cette machine vieille de presque quatre décennies. Une belle prouesse aux airs anachroniques ou rétro-futuristes, c'est selon. « Saisir un texte et recevoir en retour une réponse intelligente, c'est ce que les gens ont imaginé pour les ordinateurs depuis l'apogée du 5155 », résume TechSpot. Une réflexion qui prend un sens particulier quelques jours seulement après la disparition de Gordon Moore, co-fondateur d'Intel.
Notons que ce n'est pas la première fois qu'une initiative vise à porter des plateformes et logiciels modernes sur des machines de collection. En 2015, des ingénieurs de Netflix avaient par exemple mis au point un client de la plateforme pensé pour la NES. Il y a deux ans, un développeur avait également été en mesure de lancer une vidéo sur un ordinateur Apple II. Quant à Yeo Kheng Meng, il avait réussi, cette fois en 2019, à créer une version de Slack fonctionnant sur Windows 3.1. Reste maintenant à savoir quel sera son prochain projet.
- Chat dans différentes langues, dont le français
- Générer, traduire et obtenir un résumé de texte
- Générer, optimiser et corriger du code
Source : TechSpot