AIは世代も超える? 40年前のDOSマシンで「ChatGPT」を動かした猛者:707th Lap
約40年前に発売されたオールドマシンでもChatGPTは動くのだろうか……。ひょんな思い付きから、実際にChatGPTとのチャットに成功した猛者が現れた。技術的な課題をどうクリアしたのだろうか?
2023年4月10日にOpenAIのサム・アルトマンCEOが来日して政府関係者と面会したり、各大学では論文作成での「ChatGPT」の利用に対して注意喚起したりと、相変わらずChatGPTの話題は引きも切らない。
今話題の「ChatGPT」をオールドマシンでも動かせるのかと考え、実際に約40年前のDOSマシンでChatGPTを動かすことに成功した猛者が現れた。そもそも、ネットワーク機能をサポートしない40年前のマシンで、どのようにしてインターネット接続を可能にしたのか。また、通信プロトコルなどの技術的課題をどうクリアしたのか。
そのオールドマシンとは「IBM 5155」だ。1984年2月にIBMから発売されたポータブルコンピュータで、当時はコンパクトとは言われたものの、大きさはミドルサイズのスーツケースほどで、重量は13.6kgもある。OSは「IBM PC DOS 2.10」(IBM版のMS-DOS)で、CPUは「Intel 8088」(4.77MHz)、メモリは256KB、記憶媒体は5.25インチFDD(360KB、最大2基搭載可能)といったスペックだ。発売当時、HDDは標準で搭載されておらず、ユーザーがサードパーティー製HDDを追加購入するのが一般的だった。
40年前のPC、しかもDOSマシンでそんなことが可能なのかと疑いたくもなる。これを可能にしたのがエンジニアのYeo Kheng Meng氏だ。Yeo氏は、自身のブログでその開発について報告した。
彼は「所有するIBM 5155でChat GPTが動作すれば、他のDOSマシンでもChatGPTが動かせるのでは」と思い付いた。Yao氏の所有するIBM 5155は、サードパーティー製のキットを使ってメモリが640KBに増量されている他、OSとしてMS-DOS 6.22が搭載されている。他にもイーサネットアダプターや、ISA-IDE変換コントローラーによってIDE(HDDの接続規格)のHDD(容量不明)も内蔵されている。
Yao氏はWindowsで仮想マシンをセットアップしてDOS 6.22環境を構築し、コーディングを開始した。大きな問題はやはりネットワーク周りだ。DOS 6.22はスタンドアロンのOSであり、ネットワーク機能をサポートしない。
Yao氏は、1883年に開発されたDOS用のプログラム「Packet Driver API」に注目した。古いDOSマシンをTCP/IP対応させるオープンソースのネットワークライブラリ「mTCP」があることを知り、それを利用してプログラムを作成することでネット接続を可能にした。
次の問題は通信プロトコルだ。ChatGPTの通信プロトコルはHTTPS経由で暗号化されているため、直接データをやりとりできない。そこでYao氏はかつて作成した「Windows 3.1」で動作する「Slack」クライアントに使った「http-to-https-proxy」を利用した。これはHTTPS要求ができないシステムからの接続をHTTPS接続に変換するプロキシプログラムだ。これが動作する別のPCを経由することで、古いDOSマシンでもOpenAIのサーバとデータをやりとりすることを可能にした。
また、シングルタスクなDOSなので入力待機時にはネットワークスタックが停止してしまう問題があり、その解決のためにキー入力をローカルバッファに保存してコンソールに出力することでプログラムを停止しないような工夫も凝らした。他にも、文字コードなど解決すべきことはたくさんあったという。
これらの試行錯誤によってYao氏はDOSで動作するChatGPTクライアントの開発に成功した。実際にクライアントが動く様子がYouTubeで公開されている。アンバー色の文字が表示された9インチディスプレイでChatGPTと会話する様子はなかなかにシュールだ。
動画でYao氏は「IBM 5155でChatGPTを利用できるか」とChatGPTに尋ねた。答えはもちろん「無理です」とのことだが、実際にYao氏はそれを実現したところが面白い。世代を超えてDOSで、それを否定するAIと対話できるこの動画には感動すら覚える。
ブログでもYao氏は「私はこのチャレンジに勝利した」と宣言し、この成果を「doschgpt」としてGitHubに公開た。古いDOSマシンをお持ちであれば、一度試してみるのも面白いだろう。
上司X: 古いDOSマシンでChatGPTと会話できるクライアントを開発した猛者が現れた、という話だよ。
ブラックピット: 古いDOSマシン……って、しかもIBM 5155ですか。
上司X: 1984年生まれのマシンで2023年の言語モデルと会話する。なかなか面白い試みじゃないか。
ブラックピット: まあ、そうかもしれませんけど。なにも無理してDOSマシンを引っ張り出してこなくても……。
上司X: 引っ張り出してくるDOSマシンがあるだけでも称賛できるけどな。仮想マシンじゃなくてリアルなDOSマシンを使っているところもリスペクトできるぜ。
ブラックピット: ちょっとリスペクトするポイントがズレているような……。まあ、偉業だと思いますけどね。
上司X: だろ? しかもこのクライアントは「GitHub」で公開されているときた。さて、俺も……と思ったけど、肝心のDOSマシンはもうとっくに破棄してるんだよな。
ブラックピット: そりゃそうでしょうよ。ChatGPTに触れる現代人の中でDOS時代を知る人にとっては「こりゃスゲー」と思うエピソードかもしれませんけどね。Z世代はもちろん、その前のミレニアル世代の人にとっては「DOSって?」みたいな話でしょうよ。
上司X: まあ、キミだって今回の話を聞いてちょっとは心がときめいたんじゃないか? DOS時代を知っているかどうかはさて置いてだ。ともかく、こういうトライアルは俺みたいな世代じゃなくても響くものがあるだろう。技術力のある人にはどんどん挑戦してもらいたいものだよ。
ブラックピット(本名非公開)
年齢:36歳(独身)
所属:某企業SE(入社6年目)
昔レーサーに憧れ、夢見ていたが断念した経歴を持つ(中学生の時にゲームセンターのレーシングゲームで全国1位を取り、なんとなく自分ならイケる気がしてしまった)。愛車は黒のスカイライン。憧れはGTR。車とF1観戦が趣味。笑いはもっぱらシュールなネタが好き。
上司X(本名なぜか非公開)
年齢:46歳
所属:某企業システム部長(かなりのITベテラン)
中学生のときに秋葉原のBit-INN(ビットイン)で見たTK-80に魅せられITの世界に入る。以来ITひと筋。もともと車が趣味だったが、ブラックピットの影響で、つい最近F1にはまる。愛車はGTR(でも中古らしい)。人懐っこく、面倒見が良い性格。
Copyright © ITmedia, Inc. All Rights Reserved.