世界を動かす技術を、日本語で。

NeuralOS: ニューラルネットワークによって駆動されるオペレーティングシステム

概要

  • neural-os は、オープンソースの ニューラルネットワークベース のオペレーティングシステムプロジェクト
  • anonymous.4open.science 上で開発・公開
  • 機械学習を OS設計 に応用する試み
  • ソースコードとドキュメントが GitHub で管理
  • 研究・教育・実験用途での利用を想定

neural-osプロジェクト概要

  • neural-os は、ニューラルネットワークを OSの中核 に据えた実験的プロジェクト
  • anonymous による貢献と、4open.scienceでの 公開管理
  • 機械学習アルゴリズムによる リソース管理プロセス制御 の自動化
  • C/C++Python など複数言語で構成
  • GitHubリポジトリ でソースコード・Issue・ドキュメントを一元管理

主な特徴

  • ニューラルネットワークによる 動的最適化
    • メモリやCPUの割り当てを AIが自律調整
  • ユーザ空間・カーネル空間を 機械学習で分離
  • 拡張性重視の モジュール設計
  • 研究用途を想定した 実験的機能 の実装
  • オープンソースライセンス で自由な改変・再配布が可能

技術スタック

  • C/C++ によるOSコアの実装
  • Python でのニューラルネットワークモデルの開発
  • TensorFlowPyTorch などの機械学習フレームワーク利用
  • GitHub を利用したバージョン管理・共同開発

想定ユースケース

  • OS設計における AI応用の研究
  • 機械学習アルゴリズムの 実装テスト環境
  • 教育用の 教材・デモンストレーション
  • 新しいOSアーキテクチャの プロトタイピング

まとめ

  • neural-os は、OS設計とAI技術を融合した 先進的なオープンソースプロジェクト
  • 研究・教育分野での活用や、AI時代のOS開発に向けた 知見の蓄積 が期待

Hackerたちの意見

マウスとキーボードの入力に基づいて画面画像を直接予測する生成型オペレーティングシステム。状態モデリングにはRNNを、画像生成には拡散モデルを使ってるよ。詳しくは僕のツイートを見てね: https://x.com/yuntiandeng/status/1944802154314916331

デモ動画のほとんどが、いろんなFirefoxやGoogleのポップアップをクリックしてるのが面白いね。

これを使おうとしたけど、ラグがひどくてアイコンをクリックするのも無理だった。さらに、他の人が待ってるってメッセージが時々出てきて、エミュレーションがマウスのポインターから遠ざかっていった。どんな体験を目指してるのか分からないけど、これじゃないと思う。

ターミナルを開いてwhich bashと入力した。これがlsとして解釈された…とても楽しいデモだけど、私の入力を無視して何を入力したかったのかを推測しようとするのはかなり疑問だね。

これを使おうとしたけど、やっぱりラグがひどくてほぼ無理だったし、他の人が待ってるかもしれないって思い出させられるのが不快だった。でも、フォルダーをクリックできて、開いたのは結構リアルに見えたよ。ラグ以外でおかしいと思ったのは、ファイルブラウザの下に空きディスクスペースが表示されてて、最初の数字は明らかに6で、2番目の数字はちらついてていろんな数字の間でぼやけてた。面白いアイデアだけど、どのくらいのフレームレートで動くべきなんだろう?5fps未満だと感じたよ。

ターミナルを開くことができたけど、何かをタイプしようとしたら、当然のことながら幻覚が見えただけだった。メニューは開くし、見た目もそれっぽいけど、アイテムをクリックしても何も起こらなかったり、変なものが見えたりした。

これを見て、子供の頃にパワーポイントでスライド間のリンクやアニメーション、埋め込まれたインターネットエクスプローラーオブジェクトを使って「OS」を作ったことを思い出した。似たような感じで、実用的な使い道は見えないけど、グラフィカルユーザーインターフェースの複雑な状態機械の中でネットワークが意図を理解するという概念的なデモは本当に魅力的だね。

俺だけじゃなかったんだ、嬉しい!俺はMicrosoft Frontpageを使ってたけど。

若い頃に似たようなことをやったけど、Batchを使ってたよ。

これはWindows 8のプロトタイプだったと思う。

NeuralOSを試してくれたみんな、ありがとう!ユーザー体験が frustrating でごめんね!デモは自分でコーディングしたんだけど、待ってるユーザーについての警告メッセージがどれだけ邪魔になるか予想してなかった。デモはかなりリソースを消費するから、各セッションにはH100 GPUが必要で、今は8つの並列ワーカーを使ったディスパッチャー・ワーカーのセットアップをしてる。残念ながら、需要が設定を超えてしまって、ラグが発生してしまったし、他の人が待ってるときはセッションを60秒に制限しなきゃいけなかった。また、基盤となる拡散モデル自体も遅くて、フレームレートは通常2fps未満になってるし、ネットワークのボトルネックも影響してる。モデルの能力については、今のところNeuralOSはかなり限られてる(論文の要約でも認めてる)。だから、僕のツイートで見せたデモのインタラクションは最小限だった(Firefoxを開いて、URLを入力するだけ)。全体として、これは生成型のニューラルネットワークを使ったGUIの可能性を示すための概念実証としての意味があるんだ。完全にオープンソースだから、今後他の人が改善してくれることを願ってる!再度、正直なフィードバックに感謝!

警告メッセージをUIの下に置いたら、レイアウトが変わらなくて済むかも?

こんにちは、ユンティアン!READMEと論文は読んだけど、まだあまり触ってないんだ。これがすごく面白いと思ってるし、あまり「体験」が悪いことには気にしてないよ。直感的に、これが本物のOSみたいに信頼性や柔軟性のあるものを生み出すとは思えないからね。新しいソフトウェアをインストールできないって話をしてたけど、俺の反応は「そりゃそうだよね」って感じ。だって、トレーニングデータと同じくらい制限されるだろうし、本物のOSはあまり使われない複雑なソフトウェアをたくさん提供してるから。今後のこのプロジェクトに対する期待について話してもらえる?もっと抽象的に入力を組み合わせるようなシンプルなインターフェースに興味があるのか、それとも伝統的なOSのシミュレーションだけに興味があるのかな?ありがとう!追伸:Firefoxが「読み込み中」だった時の待ち時間に笑っちゃった。これもシミュレーションだよね。

OPさん、サーバーの負荷がどうなってるか理解してるよ。それを踏まえて、機能やインターフェースがどう動くのか説明してもらえる?特に、NNやLLMがこの機能をどう提供するのかについて。

これは驚くほど新しいアイデアだね。Geminiのアプローチとは違って、すべてのピクセルをゼロから生成するってことは理解してる。でも、このタイプのニューラルOSがインターネットや他の似たようなニューラルOSとどうやって通信すると思う?少なくともHTTPレスポンスを送受信しなきゃいけないよね?

これは面白いコンセプトの証明だね!友達と一緒に楽しんだhttps://oasis-model.github.io/を思い出すよ。

あんまりできなかったな。Firefoxをクリックしてナビバーに行って「Hackernews」って入力するのが大変だった。タイプするのを見るのはすごく面白かったけど、あれは確かに文字じゃなかった。ページをフィンランド語に翻訳しようとして、「私はロボットではありません」ってボックスが出たり消えたりして、論文のタイトルが見えたりした。Googleの結果にはたどり着けなかったけど…面白いプロジェクトだね。「楽しみのために」や「なんとなく」という理由は全然受け入れるけど、なぜそれをやるのかに興味があるんだ。たとえそれがすごく狭いことでも、MLベースのOSを使うことで得られるメリットってあるのかな?確かにクールだし、それ自体に価値はあるけど、みんながニューラルOSについて話してるのがよくわからないんだよね。

フィードバックありがとう!そう、デモは確かに制限があるね。NeuralOSを作った理由は、ソフトウェアのカテゴリーの境界がなくなる未来にワクワクしてるからなんだ。映画を直接インタラクティブなゲームに変えたり、話しかけるだけでアプリのインターフェースをカスタマイズしたり、映画とゲームの間で同じ物理や世界モデルを共有することを想像してみて。いつか、映画やインタラクティブなゲームがシーンやキャラクターを詳しく描写したテキストプロンプトだけになって、OSがその場で「幻覚」を見せるようになるかもしれないね(もしかしたら、映画がユーザーの好みに合わせて変わって、同じプロットの異なる「バージョン」を見ることになるかも)。これにより、ストレージやダウンロード時間が最小限に抑えられるし、最大限の柔軟性も提供できる。Gemini OSのようにコードを生成して従来のUIをレンダリングする他のMLベースのOSプロジェクトとは違って、NeuralOSはすべてのピクセルを直接生成するんだ。これが幻覚に対して脆弱にするけど、私の意見では、幻覚の裏には完全な柔軟性があると思う。未来には、ユーザーの意図に応じてその場で適応する、GPU上で完全に(または主に)動作するオペレーティングシステムを想像してるよ。

とても興味深いアイデアだね。コンピューティング体験、OSアプリケーション、ファイルシステムなどは、モデルの「想像」の中にしか存在しない。今はもちろん無駄が多いけど、熱力学的なウェルベースのニューラルネットワークが実用化されると、これが多くのことに最適な解決策になるかもしれないと思う。熱力学的ウェルベースのモデルは、数ミリワットの電力でサイズがSDカードくらいのトリリオンパラメータを持つことができるかも。そうなれば、大量生産された実装が、最も単純な計算タスクや高度な計算タスクを除いて、すべてに対応できる「ワンサイズフィッツオール」な解決策になるのが想像できる。100Bサイズのチップが1ドル以下で手に入るなら、動画や音声を「想像」する能力や、子供のおもちゃやトースターにまで埋め込まれた強力な汎用「推論」能力を得られる。リック・アンド・モーティのバターを渡すロボットを思い出すな。無駄な能力がたくさんあるけど、目的に特化した決定論的なコンピュータデバイスよりも安いんだよね。一方で、日常生活の一部として埋め込まれた知識があるのは面白いかも。人類文明が終わることになるかもしれないけど、笑。

ニューラルモデルの想像力の背後にある哲学についても深く考えさせられる。物理やトランジスタに通常依存している抽象を実体化して実行するために、深層ネットワークに頼ることの影響は何だろう?これは一種のVMなのか?想像上のVMはチューリング完全なのかな?

ラグのあるデモ体験についての苦情に応えて、開発者向けにhuggingfaceのスペース版を設定したよ:https://huggingface.co/spaces/yuntian-group/neural-os 注意:このスペースはテンプレートとして意図されているから、複製して自分のGPUで実行してみてね。より良い体験ができるよ。(デフォルトのスペースにはワーカーが1つしかない。)推奨GPU:L40以上、理想的にはA100-large。(neural-os.comの元のデモはH100を使用してたよ。)すべてのコードとモデルはhuggingfaceスペース内に自己完結してるよ。

lsを実行してみた。うまくいって、ファイルが表示された。lessを入力しようとしたら、変なことをし続けた。入力を消して再試行したら、lsとして解釈されて、また内容が表示された。