自分だけのChatGPTを作ろう: Nanochat - 100ドルLLM

独自のChatGPTを構築:Nanochat – 100ドルLLMプロジェクト

AIコミュニティの著名な人物であるAndrej Karpathy氏が、大規模言語モデル(LLM)開発の複雑さを誰もが利用できるように設計された意欲的なオープンソースプロジェクト、Nanochatを発表しました。「100ドルで買える最高のChatGPT」と称されるNanochatは、ChatGPTのようなLLMを単一で、クリーンで、最小限でありながら高度にハッカブルなコードベースにまとめたフルスタック実装です。

Nanochatとは?

Nanochatは事前学習にとどまらず、トークン化、事前学習、ファインチューニング、評価、推論、さらにはシンプルなユーザーインターフェースを介したウェブサービスまで、LLM開発のための完全なパイプラインを提供します。これは、ChatGPTと同じように、独自のLLMを訓練し、対話できることを意味します。このプロジェクトは、speedrun.shなどの提供されるスクリプトを使用して、主に単一の8XH100ノードで効率的に動作するように特別に設計されています。

100ドルの挑戦:独自のLLMを訓練する

Nanochatの核心的な理念は、アクセシビリティと費用対効果です。speedrun.shスクリプトは、約100ドルで機能するLLMを訓練する方法を示しています。これには、8XH100ノードでの約4時間の訓練が含まれ、380億トークンで訓練された19億パラメータのモデルが生成されます。これらの「マイクロモデル」は、性能面でGPT-5のような最先端のLLMには及ばないかもしれませんが(素朴さや幻覚を起こす傾向から「幼稚園児と話しているようだ」と評されることが多い)、実践的な学習とカスタマイズのための比類ない機会を提供します。

Karpathy氏は、Nanochatが完全にあなたのものであると強調しています。最初から最後まで構成可能で、調整可能で、ハッキング可能です。このため、数百万ドルの予算をかけずにLLMの内部動作を理解したいと考えている研究者、開発者、愛好家にとって理想的なプラットフォームとなります。

はじめに:クイックガイド

Nanochatの旅を始めるには、speedrun.shスクリプトを実行するのが最速のルートです。このスクリプトは、データ準備からモデルの訓練、推論までの全プロセスを処理します。訓練(約4時間かかります)が完了したら、python -m scripts.chat_webを実行して、ウェブベースのUIを通じて新しく訓練したLLMと対話できます。

このプロジェクトでは、スケーリングに関する洞察も提供されており、主にデータシャードを増やし、メモリ不足エラーを防ぐためにデバイスのバッチサイズを慎重に管理することで、speedrun.shの設定にわずかな調整を加えるだけで、より大きなモデル(例えば300ドルティアのd26モデル)を訓練する方法が示唆されています。

学習とハッキングのために設計されている

Nanochatは、網羅的なLLMフレームワークの複雑さを意図的に避けています。代わりに、単一で、まとまりがあり、最小限で、読みやすく、最大限にフォーク可能な「強力なベースライン」コードベースを優先しています。この設計思想は、LLM開発に深く関わりたいと考える誰もが高い認知的アクセシビリティを確保できるように意図されています。目標は、具体的なChatGPTクローンとその評価とメトリクスの「レポートカード」を作成することです。

より低性能なハードウェアを使用している人向けには、NanochatはCPUおよびMPS(Apple Silicon)デバイスの実験的なサポートも提供しており、非常に小さなLLMの調整や訓練が可能ですが、より多くの忍耐が必要です。

マイクロモデルの未来への貢献

Nanochatは継続中のプロジェクトであり、1000ドル以下の予算でエンドツーエンドで利用できるマイクロモデルの最先端技術を進歩させることを目指しています。堅牢でありながらシンプルなLLM訓練エコシステムを開発するというコミュニティ主導の側面を強調し、貢献を歓迎します。

プロセスを分かりやすくし、参入障壁を下げることで、Nanochatは、独自のコンピューティング環境から直接、独自のAIアシスタントを構築し、理解し、カスタマイズしたいと考えるすべての人にとって極めて重要なツールとなることを約束します。

この記事を共有