ソフトウェア

たった1万5000円&4時間でChatGPTのような対話可能AIをゼロから構築できるオープンソースプラットフォーム「nanochat」が登場


OpenAIの創設メンバーでAI開発エンジニアのアンドレイ・カルパティ氏が、ChatGPTのようなAIチャットボットを一から構築するためのオープンソースプロジェクト「nanochat」を公開しました。nanochatを使えば約100ドル(約1万5000円)の予算で、数時間で基本的な大規模言語モデル(LLM)の学習からChatGPTのようなAIチャットボットを構築することが可能となっています。


GitHub - karpathy/nanochat: The best ChatGPT that $100 can buy.
https://github.com/karpathy/nanochat

nanochat
https://simonwillison.net/2025/Oct/13/nanochat/

nanochatは、モデルの心臓部となるニューラルネットワークの設計から、言語を理解するためのトークン化、知識を獲得させる事前学習、対話能力を洗練させるファインチューニング、そして完成したモデルと会話するためのウェブインターフェースまで、LLM開発に必要な全ての要素を単一のコードベースにまとめて提供します。コード全体は約8000行と比較的コンパクトで、主にPython(PyTorch)で書かれており、一部の高速処理が必要なトークナイザーの学習にはRustが用いられています。


nanochatの最大の特徴は、その手軽さと透明性。通常、高性能なLLMの開発には数億円規模の投資が必要とされますが、nanochatはNVIDIA H100という高性能GPUを8基搭載したコンピューターを時間単位でレンタルすることで、このコストを劇的に引き下げます。

例えば、1時間あたり約24ドル(約3600円)でレンタルできるコンピューターを使えば、「speedrun.sh」という付属のスクリプトを実行するだけで、一連の学習プロセスを総額100ドル(約1万5000円)ほど、しかも約4時間という短時間で完了できます。この「speedrun.sh」で生成されるモデルは約5億6000万パラメータを持ち、基本的な会話が可能なレベルに到達します。


学習プロセスは、大きく4つの段階に分けられます。

最初の「事前学習」は最も時間を要する段階で、約3時間をかけて行われます。ここでは、FineWeb-EDUという教育的なウェブページから収集された約24GBの膨大なテキストデータをモデルに読み込ませます。これにより、モデルは言語の構造や世界の幅広い知識を獲得します。

次に「ミッドトレーニング(中間学習)」と呼ばれる段階に移行します。このプロセスでは、一般的な会話データセット(SmolTalk)や、多肢選択問題(MMLU)、算数の文章問題(GSM8K)などを学習させます。これにより、モデルは単に知識を持つだけでなく、ユーザーとの対話形式や、特定の問いに答えるための作法を学びます。

続いて「教師ありファインチューニング(SFT)」を約7分間行います。ここでは、特に質の高い選りすぐりの会話データを使い、モデルの応答をさらに洗練させ、性能の最終的な底上げを図ります。

最後に行う「強化学習(RL)」はオプションで、デフォルトでは実行されませんが、算数問題のように正解が明確なタスクにおいて、モデルが自ら試行錯誤を繰り返すことで正答率をさらに高めることができます。

カルパティ氏によれば、モデルの総合的な言語能力を示す「CORE Metric」という指標では、nanochatで学習させた予算100ドルのモデルは0.22のスコアをたたき出したそうで、このスコアはGPT-2のlargeモデル(0.21)をわずかに上回るレベル。学習直後のモデルは、「フランスの首都はパリ」「金の元素記号はAu」といった事実を知っている一方で、簡単な計算は苦手だったそうですが、ファインチューニングを経ることで「空がなぜ青いのか」という問いにレイリー散乱を挙げて説明したり、そのテーマで詩を作ったりすることも可能になったとのこと。


学習完了後、ユーザーはウェブブラウザを通じて自分の手で作り上げたLLMと対話を楽しめます。nanochatは、単に低コストなLLMを提供するだけでなく、その内部構造が理解しやすいように、意図的にシンプルで可読性の高いコードで設計されています。モデルの層の数を変更するだけで性能を向上させることも可能で、例えば約300ドル(約4万5000円)の予算で12時間かけて学習すれば、GPT-2の標準モデルを上回る性能も期待できます。

実際にnanochatで構築した5億6100万パラメーターの言語モデルが、Hugging Faceに公開されています。

sdobson/nanochat · Hugging Face
https://huggingface.co/sdobson/nanochat

このモデルをmacOSのCPU環境で動かすためのスクリプトを公開したサイモン・ウィルソン氏は、nanochatで構築されるモデルのパラメータ数が約5億6000万であることに触れ、そのサイズからRaspberry Piのような安価なデバイスでも十分に動作するはずだという見解を示しました。

なお、ウィルソン氏が実際に「犬について教えて」というプロンプトをモデルに入力したところ、モデルは「犬への情熱を皆さんと共有できることを嬉しく思います。獣医師として、多くの飼い主様の大切な愛犬のケアをお手伝いさせていただく機会に恵まれました。トレーニング、飼い主様の生活の一部となること、そしてお気に入りのおやつやおもちゃを見て飼い主様の顔が輝くのを見るのは、本当に特別なことだと感じています。私は1,000匹以上の犬と関わる機会に恵まれ、やりがいのある経験だと言わざるを得ません。飼い主とペットの絆」と回答したとのこと。返答が途中で切れているのは、トークンが不足したためだそうです。

この記事のタイトルとURLをコピーする

・関連記事
わずか26分間の学習と1000円以下の計算コストでOpenAI o1-preview相当のAIモデルを構築する方法が発表される - GIGAZINE

マインクラフトのレッドストーンを駆使して会話可能なAIチャットボットを構築した猛者が登場 - GIGAZINE

Googleが生成AIで教科書を再構築した「Learn Your Way」 - GIGAZINE

「小型デスクトップPCを4台組み合わせてAIクラスタを構築する」という試みの結果は? - GIGAZINE

スマホやPCなど家の中の計算資源をかき集めて自分用AIクラスターを構築できる「exo」 - GIGAZINE

in AI,   ソフトウェア, Posted by log1i_yk

You can read the machine translated English article Introducing 'nanochat,' an open source p….