ゼロから独自の LLM を構築する方法(GPT や Claude を支える 5 段階のパイプライン)

@eng_khairallah1
英語6 日前 · 2026年7月04日
627K
341
66
23
1.1K

TL;DR

データ準備、事前学習、教師ありファインチューニング、報酬モデリング、強化学習という LLM 開発の 5 つのステージを網羅した包括的ガイド。GPT や Claude といったモデルがどのように構築されているのか、その仕組みを解明します。

ほとんどの人は ChatGPT や Claude を毎日使っていますが、それらが実際にどのように構築されたのかを知る人はほとんどいません。

これを保存しておいてください :)

ごく少数の人々だけが、生のインターネット上のテキストを、文章を書き、推論し、コードを書くことができるモデルへと変える正確なパイプラインを理解しています。そのパイプラインを理解することは、これらのツールの使い方を永遠に変えてしまいます。なぜなら、それを魔法のように扱うのではなく、内部で何が起きているのかを最終的に理解できるようになるからです。

この2つのグループを分けるのは、数学の学位ではありません。

それは、1つの明確なメンタルモデルです。

ほとんどの人が単純に説明していない真実を教えましょう。GPT、Claude など、あらゆるフロンティアモデルは、すべて同じ5段階のパイプラインを通じて構築されています。企業によって規模やデータ、何千ものエンジニアリングの詳細は異なりますが、プロセスの「形」はどこも同じです。その形を学べば、それらがどのように作られているのかを理解できます。

始める前に、正直に期待値を設定させてください。GPT や Claude に匹敵するモデルを、あなたのノートパソコンでゼロからトレーニングすることはできません。それらのモデルには数千万ドル規模の計算コストがかかり、膨大なエンジニアリングチームが必要です。ここでの目的はそれではありません。目的は、パイプラインを深く理解し、自分で小さな動作バージョンを構築できるようになり、大規模モデルがどのように振る舞うかを推論し、それらに対する神秘的な感覚を払拭することです。その理解は、ほとんどの人が考えているよりもはるかに価値があり、完全に手の届く範囲にあります。

以下に、その5つの段階を順番に説明します。

第 1 段階:データ — すべての基礎となるもの

モデルが存在する前に、テキストが存在します。それも膨大な量のテキストです。

最初の段階は、モデルが学習するためのデータを収集し、準備することです。フロンティアモデルの場合、これは驚くべき量のテキストを意味します。公開されているインターネット上の大部分、書籍、コードリポジトリなどが含まれます。しかし、生のテキストは乱雑であるため、この段階の作業のほとんどは収集ではなく「クリーニング(整理)」です。

データはゴミを取り除くためにフィルタリングされ、重複したコンテンツは削除されます(同じ段落が1,000回も現れると、モデルの学習が歪んでしまいます)。また、低品質なものや有害な素材も排除されます。このクリーニングは、人々が考える以上に重要です。「ゴミを入れれば、ゴミが出てくる(Garbage in, garbage out)」という古い原則はここでも当てはまります。よりクリーンで高品質なデータでトレーニングされたモデルは、より多くても乱雑なデータでトレーニングされたモデルよりも優れた学習をします。データの品質は、この分野全体において最も重要でありながら、最も地味なレバーの1つです。

次に、初心者を驚かせるステップがあります。それはトークン化(Tokenization)です。モデルはテキストを直接読むことはできません。テキストは「トークン」と呼ばれる、単語の一部程度のサイズのかたまりに分割されます。「tokenization」というフレーズは、3つか4つのトークンになるかもしれません。すべてのトレーニングデータはこれらのトークンに変換され、その時点からモデルはトークンを表す数字しか見ず、文字を見ることはありません。これが、モデルが単語内の文字数を時々間違える理由です。モデルは文字を見たことがなく、トークンしか見ていないからです。

この段階の出力は、巨大でクリーンなトークン化されたデータセットです。まだ何も学習されていません。生の素材を準備しただけです。

この段階を学ぶためにすべきこと

  • テキストをトークン化ツールに通して、どのようにトークンに分割されるかを確認し、トークナイザーが実際に何をしているのかを学ぶ
  • 小さなテキストデータセットを使って、重複の削除、ゴミのフィルタリング、形式の正規化といったクリーニングを練習する
  • クリーンなデータと乱雑なデータで小さなモデルが何を学習するかを比較し、なぜデータの品質がデータの量に勝るのかを理解する
  • 主要な研究所がどのようにデータをフィルタリングしているかについて読み、そこにどれほどの労力が費やされているかに注目する

第 2 段階:事前学習(Pretraining) — モデルが言語を学習する場所

この段階には数百万ドルのコストがかかり、モデルが知っていることのほとんどを学習する場所でもあります。

事前学習には、「次のトークンを予測する」という非常にシンプルな目的があります。モデルはトークンのシーケンスを見せられ、次に来るトークンを推測するように求められます。モデルが推測し、その推測が実際の次のトークンと比較され、モデルの内部数値(パラメータ。多くの場合数十億個)が次回より良い推測ができるように微調整されます。そして、これを繰り返します。何兆ものトークンにわたって、何度も何度も。

それがトレーニングの目的のすべてです。巨大なスケールで、何度も何度も次のトークンを予測する。そして、そのあまりにも単純な目標から、驚くべきことが生まれます。人間のあらゆるテキストにわたって次のトークンを予測するのが上手になるために、モデルは文法、事実、推論パターン、コードの構文、議論の構造を学習せざるを得なくなります。なぜなら、それらすべてがより良い予測に役立つからです。誰も明示的に文法を教えたわけではありません。文法が次の単語を推測するのに役立つため、モデルは文法を学習したのです。

事前学習の結果はベースモデルと呼ばれます。これは強力な言語エンジンですが、未加工の状態です。ベースモデルは、自分が役立つアシスタントであるべきだとは知りません。質問をしても、文章を続けたり、似たような質問のリストを生成したりするだけかもしれません。なぜなら、モデルが学習したのは「テキストをそれらしく続けること」だけだからです。膨大な知識を持っていますが、マナーはゼロです。まだ仕事を与えられていない、信じられないほど有能な楽器のようなものです。

この段階を理解することは、この記事全体の中で最も重要な「アンロック」です。これらのモデルの核心が大規模な「次のトークン予測」にあることを理解すれば、その流暢さとハルシネーション(幻覚)の両方が完全に理にかなっていることがわかります。モデルは真実を語るためではなく、もっともらしく続けるために構築されているのです。真実とは、後の段階やあなた自身のエンジニアリングによって追加されなければならないものです。

この段階を学ぶためにすべきこと

  • 「次のトークン予測」という目的を、友人に一言で説明できるまで自分の中に落とし込む
  • 小さなデータセットで小さな言語モデルをトレーニングし(初心者向けの有名なチュートリアルがあります)、そのループを直接体験する
  • パラメータ、データ、計算量の関係を理解し、なぜその3つすべてをスケーリングすることがモデルの向上につながったのかを理解する
  • この段階が、なぜモデルが流暢であると同時に、なぜ自信満々に嘘をつくのかを説明していることに注目する

第 3 段階:教師ありファインチューニング(SFT) — モデルに役立つ方法を教える

次に、その優秀でマナーのないベースモデルを取り上げ、どのような仕事をするべきかを教えます。

ベースモデルは言語を知っていますが、質問に役立つように答えるべきだとは知りません。教師ありファインチューニング(通常は SFT と略されます)がそれを解決します。モデルに、望ましい振る舞いの例を何千も示します。質問と良い回答のペア、指示と正しい応答のペア、問題と明確な解決策のペアなどです。

モデルは事前学習と同じように、トークンを予測することでこれらの例を学習しますが、今度はデータが「役立つアシスタントがどのように応答すべきか」という正確なデモンストレーションとしてキュレーションされています。モデルは、質問されたときにテキストを続けたり支離滅裂なことを言ったりするのではなく、役立つ回答を生成するという「役立つための形式」を学習します。

これらの例の品質は非常に重要であり、多くの場合、人間によって書かれたり、慎重にキュレーションされたりしています。これは事前学習よりもはるかに少ないデータ量(何兆ものトークンではなく、数千から数万の例)ですが、高品質で意図的かつターゲットを絞ったものです。比較的少量の優れたデモンストレーションデータが、生のベースモデルをアシスタントのように振る舞うものへと変貌させます。

SFT の後、あなたは真に役立つモデルを手に入れます。指示に従い、質問に答え、タスクを遂行します。多くの目的において、これはすでに動作するアシスタントです。しかし、あなたが実際に使用しているモデルほど役立ち、無害で洗練されたものではありません。最後の2つの段階は、そのためにあります。

この段階を学ぶためにすべきこと

  • ベースモデルとファインチューニングされたモデルの違いを、それぞれの応答例を読んで理解する
  • 小さな指示データセット(望ましい振る舞いを示す質問と回答のペア)を構築または検証する
  • 小さなオープンモデルを特定のタスクでファインチューニングし、その振る舞いが変化する様子を観察する
  • デモンストレーション例の量が重要である以上に、その品質がいかに重要であるかに注目する

第 4 段階:報酬モデリング — モデルに「良い」とは何かを教える

これはほとんどの説明がスキップする段階ですが、現代のモデルがこれほど洗練されている理由となる、巧妙な核心部分です。

研究所が直面した問題はこれです。SFT の後、モデルは良い回答をしますが、「良い」という定義は例だけでは困難です。ほとんどの質問には唯一の正解はなく、より良い回答と悪い回答があります。ルールを書き出せない場合に、どうやってモデルに「より良い回答」を優先するように教えるのでしょうか?

その解決策はエレガントです。モデルに同じプロンプトに対していくつかの異なる回答を生成させます。次に、人間がそれらの回答を見てランク付けします。「これはあれよりも良い」と。この人間の好みによる比較を大量に収集します。そして、それらを直接使うのではなく、報酬モデル(Reward Model)と呼ばれる「2つ目のモデル」をトレーニングします。そのモデルの唯一の仕事は、回答を見て人間がどう評価するかを予測することです。

これが何を達成するか考えてみてください。メインモデルが生成するすべての回答を人間に評価させることはできません。それはスケールしません。しかし、人間の判断のサンプルで報酬モデルをトレーニングすれば、何百万もの回答をスコアリングできる、人間の好みの自動代行者が手に入ります。報酬モデルは「人間が好むもの」と「コンピュータが最適化できるもの」との間の架け橋なのです。

報酬モデルはユーザーと直接話すことはありません。舞台裏の審査員です。しかし、これが最終段階をアンロックする鍵となります。なぜなら、人間が実際に好む回答へとメインモデルを導く方法を、人間のチームには不可能な規模で提供するからです。

この段階を学ぶためにすべきこと

  • 回答をランク付けすること(あれよりこれが良い)が、完璧な回答を書くことよりも簡単でスケーラブルである理由を理解する
  • 核心的なアイデアを把握する:報酬モデルは人間の判断を模倣することを学習し、回答を自動的にスコアリングできるようになる
  • 人間の比較を通じて好みデータがどのように収集されるかについて読む
  • この段階が、人間の好みの乱雑さを、トレーニングプロセスが利用できるものにどう接続しているかを確認する

第 5 段階:強化学習 — モデルをあなたが使うものへと磨き上げる

最終段階では、これまでに構築されたすべてを取り込み、あなたが実際にやり取りする、役立つ慎重なアシスタントへとモデルを洗練させます。

この段階は通常、RLHF(人間からのフィードバックによる強化学習)と呼ばれます。各ピースがどのように組み合わさるかは以下の通りです。第3段階のファインチューニング済みモデルと、第4段階の報酬モデルを使用します。ファインチューニング済みモデルが回答を生成し、報酬モデルがそれをスコアリングします。そして、ファインチューニング済みモデルは強化学習を通じて、より高いスコアを得る回答を生成するように微調整されます。「生成し、スコアリングし、改善し、繰り返す」というループです。

報酬モデルは無限にスコアリングできるため、メインモデルは直接的な人間の例が提供できる限界をはるかに超えて練習し、改善することができます。何度も繰り返すうちに、より役立ち、より一貫性があり、ニュアンスに従うのが上手になり、すべきではないことを断るのが上手になります。この段階こそが、モデルに洗練さ、優れた判断力、そして安全性の多くを与えています。

知っておくべき現代的なバリエーションとして、人間からのフィードバックの一部を、書かれた原則に従って生成されたフィードバックで置き換えたり補完したりすることがあります。これは RLAIF や憲法AI(Constitutional AI)と呼ばれるアプローチです。精神は同じです。すべてを評価するために人間に頼るのではなく、明確に述べられた価値観に導かれて、モデルの振る舞いを形作るフィードバックをスケールさせるのです。

この段階を経て、完成品が出来上がります。事前学習によって流暢になり、ファインチューニングによって役立つようになり、強化学習によって洗練され調整されたモデルです。あなたが ChatGPT や Claude を開いたときに話しかけているのは、これです。5つの段階が、それぞれ前段階の上に積み重なっています。

この段階を学ぶためにすべきこと

  • ループを理解する:モデルが生成し、報酬モデルがスコアリングし、モデルがより高いスコアを目指して改善する
  • なぜこれが、モデルが直接的な人間の例の限界をはるかに超えて練習することを可能にするのかを把握する
  • 人間からのフィードバックから学習することと、原則に導かれた AI からのフィードバックから学習することの違いについて読む
  • この最終段階が、ユーザーとして体験する「役立ち度」「判断力」「安全性」をどのように生み出しているかを確認する

パイプライン全体をひと息で

すべてをまとめて、定着させましょう。

あなたは山のようなテキストを収集してクリーニングし、トークンに変換します。そのすべてにわたって次のトークンを予測するようにモデルをトレーニングし、その単純な目標から、言語は理解しているがマナーのないベースモデルが生まれます。それをキュレーションされた例でファインチューニングし、役立つアシスタントのように振る舞うことを学習させます。回答に対する人間のランキングを収集し、人間の判断を模倣する報酬モデルをトレーニングします。そして最後に、その報酬モデルを使って強化学習によりアシスタントを洗練させ、洗練され、役立ち、調整されたものにします。

データ、事前学習、ファインチューニング、報酬モデリング、強化学習。5つの段階。これが、すべてのフロンティアモデルが作られる方法です。

独自の LLM を構築することについての正直な真実

あなたは寝室からフロンティアラボを追い抜くような構築はできませんし、そもそもそれが目的ではありません。

目的は「理解」です。このパイプラインが頭の中で明確になれば、あなたはこれらのツールの受動的なユーザーではなく、それについて推論する人になります。なぜハルシネーションが起きるのか(次のトークン予測)がわかります。なぜプロンプトが機能するのか(予測される内容を形作っているから)がわかります。なぜ一部のモデルが他よりも調整されていると感じるのか(第4、第5段階の品質)がわかります。なぜあなた自身のファインチューニング実験において、あなた自身のデータがそれほど重要なのかがわかります。この理解こそが、最も有能な AI ビルダーたちが立っている基盤です。

そして、ここからが真に力を与えてくれる部分です。あなたは、これらの各段階の小さな動作バージョンを自分自身で、小規模に構築して学ぶことができます。人々は常にミニチュアモデルをトレーニングし、小さなオープンモデルをファインチューニングし、好みデータで実験しています。あなたは Claude を構築することはできないかもしれません。しかし、Claude がどのように構築されたかを正確に教えてくれる何かを構築することはでき、その知識は、この分野でのあなたのキャリアの残りの期間ずっと蓄積されていきます。

ほとんどの人は何年もこれらのモデルを使い続け、それらがどのように作られたのかを一度も理解することはありません。

あなたは今、パイプライン全体を読み終えました。あなたは毎日これらのツールに入力しているほとんどの人よりも、すでに先を行っています。

唯一の疑問は、あなたが自分で小さなバージョンを構築し、理解を実際にできることに変えるかどうかです。

5つの段階はあなたのすぐ上にあります。第1段階を選んで、始めてください。

これが役に立ったと思ったら、フォローしてください @eng_khairallah1 。このような AI コンテンツをもっと発信しています。毎週、分析、コース、ツールを投稿しています。

これがあなたにとって役に立つことを願っています、Khairallah ❤️

YouMindで再制作

Turn one viral article into a full content workflow

Collect the source, decode the pattern, create assets, draft the story, and distribute from one AI workspace.

Explore YouMind
クリエイターのために

あなたの Markdown をきれいな 𝕏 記事に

自分の長文を投稿するとき、画像・表・コードブロックを 𝕏 向けに整形するのは手間がかかります。YouMind は Markdown 全体を、そのまま投稿できるきれいな 𝕏 記事に変換します。

Markdown → 𝕏 を試す

解読すべきパターンをもっと

最近のバイラル記事

バイラル記事をもっと見る