📋 簡単ステップLLM作成マニュアル
更新日: 2026-04-13
📋 このマニュアルについて
このページではコードを1行も書きません。全ての操作はWebブラウザ上のクリック操作と、ターミナルへのコピペコマンドだけで完結します。プログラミング経験ゼロでも、このページの手順を上から順にこなすだけで、自分だけのLLMをHuggingFaceで公開できます。
✅ このページでできること
- HuggingFaceのアカウントを作成する
- 既存の高性能モデルをベースにファインチューニングする
- Google Colabの無料GPUで学習を実行する
- 完成したモデルをHuggingFaceで世界公開する
所要時間の目安
| フェーズ | 所要時間 | 内容 |
|---|---|---|
| 環境準備 | 約2時間 | アカウント登録・ライブラリインストール |
| 学習開始まで | 半日 | モデル選定・データ準備・Colab設定 |
| モデル完成まで | 数時間〜数日 | 学習・テスト・公開(モデルサイズによる) |
必要なもの
- 💻 PC(GPU推奨だが、Google Colabを使えばなくても可)
- 📧 メールアドレス(Gmail推奨)
- 🌐 インターネット接続
- 💳 クレジットカード(Colab Pro契約する場合のみ。無料でも可)
完成イメージ
🎉 最終的に手に入るもの
huggingface.co/あなたのユーザー名/モデル名 という自分専用のURLで、世界中からアクセスできる日本語LLMが公開されます。
Step 1: アカウント登録
まず必要なサービスのアカウントを作ります。全て無料で始められます。
1-A. HuggingFace(必須)
モデルの配布・公開・検索が行えるAI版GitHubのようなサービスです。
- ① ブラウザで huggingface.co にアクセスする
- ② 画面右上の「Sign Up」ボタンをクリックする
- ③ メールアドレスとパスワードを入力して登録する
- ④ 届いたメールの認証リンクをクリックして認証完了する
- ⑤ プロフィール設定(ユーザー名は後から変更できないので注意)
Access Token の作成(重要)
後ほどColabからHuggingFaceにアクセスするために必要です。
- ① ログイン後、画面右上のアイコン → 「Settings」をクリック
- ② 左メニューの「Access Tokens」をクリック
- ③ 「New token」ボタンをクリック
- ④ 名前を入力(例:
colab-token)、権限を「Write」に設定 - ⑤ 「Generate a token」をクリック
- ⑥ 表示されたトークン(
hf_xxxx...)をメモ帳にコピーして保存する
⚠️ 注意
トークンは一度しか表示されません。必ずメモ帳に保存してください。紛失した場合は新しいトークンを作り直せます。
1-B. Google Colab(必須)
ブラウザ上でPythonコードを実行できるサービスです。GPUを無料で使えます。
- ① colab.research.google.com にアクセスする
- ② Googleアカウントでログインする(Gmailがあればそのまま使える)
- ③ 「ファイル」→「新しいノートブック」でいつでも使えることを確認
💡 Colab Pro について
月額$10でより高性能なGPU(A100など)が使えます。無料版でも動きますが、学習が遅くなります。
- 無料版: T4 GPU(12GB VRAM)、90分制限
- Pro版: A100 GPU(40GB VRAM)、長時間使用可能
1-C. Weights & Biases(推奨)
学習の進捗をグラフで可視化できるサービスです。なくても動きますが、あると便利です。
- ① wandb.ai にアクセスして「Sign Up」をクリック
- ② Googleアカウントまたはメールで登録
- ③ ログイン後、画面右上のアイコン → 「User Settings」
- ④ 「API keys」のセクションにある文字列をメモ帳にコピーして保存
Step 2: ベースモデルを選ぶ
LLMをゼロから作るのではなく、既に訓練された「ベースモデル」を土台にします。このベースモデルに自分のデータを追加学習(ファインチューニング)させます。
HuggingFaceでモデルを探す手順
- ① HuggingFaceにログインして、上部ナビの「Models」タブをクリック
- ② 左サイドバーの「Task」フィルターで「Text Generation」を選択
- ③ 「Sort」を「Most Downloads」に変更
- ④ 下記テーブルを参考にモデルをクリックして詳細を確認
初心者向けおすすめモデル
| モデル名 | 言語 | サイズ | 必要VRAM | 難易度 | 特徴 |
|---|---|---|---|---|---|
rinna/japanese-gpt-neox-3.6b | 日本語 | 3.6B | 8GB | ⭐ 初心者向け | 日本語特化、小さくてすぐ動く |
meta-llama/Llama-3.2-1B | 英語ベース | 1B | 4GB | ⭐ 初心者向け | 最小のLlama、要Meta申請 |
meta-llama/Llama-3.1-8B | 英語ベース | 8B | 16GB | ⭐⭐ 中級 | 本格的、Colab Pro推奨、要Meta申請 |
deepseek-ai/DeepSeek-V2-Lite | 多言語 | 16B (MoE) | 40GB+ | ⭐⭐⭐ 上級 | MoEアーキテクチャ体験したい人向け |
💡 初心者は rinna/japanese-gpt-neox-3.6b から始めよう
日本語に最初から対応しており、Meta申請も不要。無料のColab T4 GPUで動作します。
Llama系モデルのMeta申請手順
LlamaシリーズはMetaの利用規約への同意が必要です。
- ① HuggingFaceで使いたいLlamaモデルのページを開く(例:
meta-llama/Llama-3.2-1B) - ② ページ上部に「Access request」ボタンが表示されるのでクリック
- ③ Metaの利用規約ページが開くので、名前・メールアドレスを入力して同意する
- ④ 登録したメールアドレスに確認メールが届く
- ⑤ 数時間〜1日後に「Access granted」メールが届けば申請完了
Step 3: 学習データを準備する
モデルに「何を学ばせるか」を決めるのが学習データです。HuggingFaceには大量の公開データセットがあり、コードなしでそのまま使えます。
HuggingFaceでデータセットを探す手順
- ① HuggingFaceで上部ナビの「Datasets」タブをクリック
- ② 左サイドバーの「Language」フィルターで「Japanese」を選択
- ③ 気になるデータセットをクリックし、「Viewer」タブでデータの中身を確認
- ④ 「instruction」「input」「output」の3列があるものを選ぶと扱いやすい
おすすめ日本語データセット
| データセット名 | 件数 | 形式 | 特徴 |
|---|---|---|---|
kunishou/databricks-dolly-15k-ja | 15,000件 | instruction形式 | ⭐ 初心者向け。小さく始めやすい |
shi3z/alpaca_cleaned_ja | 51,000件 | Alpaca形式 | 日本語Alpaca。汎用的な指示に対応 |
izumi-lab/llm-japanese-dataset | 多数 | QA形式 | 日本語QAに特化。より高度 |
データの中身を確認する方法
- ① HuggingFaceのデータセットページを開く
- ② 上部のタブから「Viewer」をクリック
- ③ 実際のデータ行がテーブル形式で表示される
- ④ instruction(指示文)、input(入力)、output(期待する答え)の3列があればOK
💡 データ選びのポイント
- 最初は15,000件以下の小さいデータセットで試す(学習が速い)
- instruction形式(指示→回答)が最も汎用的で使いやすい
- データの品質が低いと、おかしな回答を学習してしまうので注意
Step 4: Google Colabを準備する
Google Colabはブラウザ上でコードを実行できる環境です。GPUも無料で使えます。ここからはColabのセルにコマンドをコピペして実行するだけです。
ノートブックの作成とGPU設定
- ① colab.research.google.com にアクセスしてログイン
- ② 「ファイル」→「新しいノートブック」をクリック
- ③ 上部メニューの「ランタイム」→「ランタイムのタイプを変更」をクリック
- ④ 「ハードウェア アクセラレータ」で「GPU」を選択
- ⑤ GPU タイプは「T4」(無料)または「A100」(Pro)を選択
- ⑥ 「保存」をクリック
GPUの確認
最初のセルに以下をコピペして「▶」ボタンで実行:
!nvidia-smi 「Tesla T4」などGPUの名前が表示されればOKです。
必要なライブラリのインストール
新しいセルに以下をコピペして実行(1〜3分かかります):
!pip install transformers datasets peft trl accelerate bitsandbytes 📦 インストールするライブラリの役割
- transformers: HuggingFaceのモデルを使うための基本ライブラリ
- datasets: HuggingFaceのデータセットを読み込む
- peft: LoRA(効率的なファインチューニング)を使う
- trl: 強化学習ベースの学習ライブラリ(SFTTrainerが含まれる)
- accelerate: GPUを効率的に使う
- bitsandbytes: 4bit量子化(メモリ節約)に使う
HuggingFaceにログイン
新しいセルに以下をコピペして実行:
!huggingface-cli login - ① 実行すると「Token:」と表示される
- ② Step 1でメモ帳に保存した
hf_xxxx...を貼り付けてEnter - ③ 「Login successful」と表示されればOK
Weights & Biases にログイン(任意)
Step 1でwandbに登録した場合、以下をコピペして実行:
!pip install wandb
import wandb
wandb.login() API keyの入力を求められるので、Step 1でメモしたキーを貼り付ける。
Step 5: モデルとデータをダウンロード
ColabにHuggingFaceからモデルとデータをダウンロードします。インターネット経由でダウンロードするので数分かかります。
モデルのダウンロード(rinna 3.6b の場合)
新しいセルに以下をコピペして実行:
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "rinna/japanese-gpt-neox-3.6b"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(
model_name,
load_in_4bit=True,
device_map="auto"
) 💡 コードの意味(読み飛ばし可)
load_in_4bit=True: メモリを節約するために4bit量子化でロードdevice_map="auto": GPUとCPUを自動で使い分ける
データセットのダウンロード
新しいセルに以下をコピペして実行:
from datasets import load_dataset
dataset = load_dataset("kunishou/databricks-dolly-15k-ja")
print(dataset)
print(dataset["train"][0]) データの件数と最初の1件が表示されれば成功です。
ダウンロード完了の確認
- ✅ モデル: 「Loading model...」後にエラーが出なければOK
- ✅ データ: DatasetDict の内容が表示されればOK
⏸️ ここまでで休憩OK
Colabは90分間操作がないと自動切断されます。長時間離れる場合は次のステップに進む前にノートブックを保存してください(Ctrl+S)。切断された場合は再接続後に最初から実行し直す必要があります。
Step 6: 学習を開始する(LoRA / QLoRA)
いよいよ学習です。ここではLoRA(Low-Rank Adaptation)という手法を使います。
📖 LoRAとは?(簡単な説明)
モデル全体(数十億パラメータ)を変えるのではなく、小さなアダプター(追加層)だけを学習する方法です。 メモリ使用量が激減し、無料Colab GPUでも動かせます。
QLoRAは4bit量子化 + LoRAの組み合わせで、さらにメモリを節約できます。
学習パラメータの設定
新しいセルに以下をコピペして実行:
from peft import LoraConfig, get_peft_model
from trl import SFTTrainer, SFTConfig
lora_config = LoraConfig(
r=16,
lora_alpha=32,
target_modules=["query_key_value"],
lora_dropout=0.05,
bias="none",
task_type="CAUSAL_LM"
)
model = get_peft_model(model, lora_config)
model.print_trainable_parameters() 🔧 学習パラメータの意味
| パラメータ | 値 | 意味 |
|---|---|---|
| num_train_epochs | 3〜5 | データを何周学ぶか(多いほど詳しくなるが過学習リスクも増える) |
| learning_rate | 2e-4 | 学習の速さ(大きすぎると壊れる、小さすぎると学ばない) |
| per_device_train_batch_size | 4 | 一度に何件のデータを見るか(大きいほど速いがメモリを使う) |
| lora_r | 16 | LoRAの次元数(大きいほど表現力が増すがメモリも増える) |
学習の実行
新しいセルに以下をコピペして実行:
training_args = SFTConfig(
output_dir="./output",
num_train_epochs=3,
per_device_train_batch_size=4,
gradient_accumulation_steps=4,
learning_rate=2e-4,
fp16=True,
logging_steps=10,
save_steps=100,
warmup_ratio=0.03,
report_to="wandb"
)
trainer = SFTTrainer(
model=model,
args=training_args,
train_dataset=dataset["train"],
tokenizer=tokenizer,
)
trainer.train() 学習中の画面の見方
- 📉 loss(損失)が下がっていれば正常に学習中です
- 📊 wandbに登録している場合はブラウザでグラフを確認できます
- ⏱️ 進捗バーで残り時間が表示されます
学習時間の目安
| モデルサイズ | GPU | データ量 | 目安時間 |
|---|---|---|---|
| 3.6B (rinna) | T4 (無料) | 15,000件 | 約3〜4時間 |
| 3.6B (rinna) | A100 (Pro) | 15,000件 | 約1時間 |
| 8B (Llama) | A100 (Pro) | 15,000件 | 約2〜3時間 |
⚠️ 学習中の注意
学習中は放置でOKですが、Colab無料版は90分制限があります。T4 GPUで3〜4時間の学習が必要な場合、途中で切断される可能性があります。長時間学習はColab Proへの課金を検討してください。
Step 7: 作ったモデルをテストする
学習が完了したら、実際にモデルに話しかけてみましょう。
学習済みモデルのテスト
新しいセルに以下をコピペして実行:
from transformers import pipeline
pipe = pipeline(
"text-generation",
model=model,
tokenizer=tokenizer,
max_new_tokens=200
)
prompt = "日本の首都はどこですか?"
result = pipe(prompt)
print(result[0]["generated_text"]) 結果の判断
- ✅ 成功: 「東京です」などの正しい答えが返ってくる
- ⚠️ 要改善: でたらめな文章が出力される → 学習が不十分
- ❌ 失敗: エラーが出る → トラブルシューティング参照
おかしな回答が出た場合の対処法
| 症状 | 対処法 |
|---|---|
| 意味不明な文字列が出力される | epochsを増やす(3→5)、データ品質を確認する |
| 同じ文が繰り返される | repetition_penaltyを1.1〜1.3に設定する |
| 回答が短すぎる | max_new_tokensを増やす(200→500) |
| 英語で回答してくる | 日本語データセットのみで再学習する |
Step 8: HuggingFaceに公開する
テストで満足いく結果が出たら、HuggingFaceにアップロードして世界中からアクセスできるようにしましょう。
モデルのアップロード
新しいセルに以下をコピペして実行(モデル名を変更してください):
model_name_to_push = "あなたのHFユーザー名/my-japanese-llm"
model.push_to_hub(model_name_to_push)
tokenizer.push_to_hub(model_name_to_push)
print(f"公開URL: https://huggingface.co/{model_name_to_push}") ⚠️ ユーザー名を忘れずに変更
あなたのHFユーザー名 の部分をHuggingFaceで登録したユーザー名に変更してください。
Model Card(説明文)の書き方
アップロード後、HuggingFaceのモデルページに説明文(README)を追加しましょう。
- ① HuggingFaceでアップロードされたモデルページを開く
- ② 「Model card」タブ → 「Edit」ボタンをクリック
- ③ 以下の項目を記入する:
- ・モデルの説明(何のモデルか)
- ・ベースモデル(rinna/japanese-gpt-neox-3.6bなど)
- ・使用したデータセット
- ・使い方の例
- ・ライセンス(ベースモデルに合わせる)
- ④ 「Commit changes」をクリック
公開設定の変更
- ① モデルページの「Settings」タブをクリック
- ② 「Danger Zone」→ 「Change model visibility」
- ③ 「Public」(公開)または「Private」(非公開)を選択
🎉 おめでとうございます!
あなたのLLMが世界に公開されました。 huggingface.co/あなたのユーザー名/モデル名 でアクセスできます。
SNSでシェアすれば他の人も使えます。
Step 9: 次のステップ
公開まで完了したら、さらに発展させましょう。
🦙 Ollamaでローカル実行
Ollamaを使えば、HuggingFaceのモデルをPCのターミナルから直接実行できます。インターネット不要・API不要・完全ローカル。
ollama run あなたのモデル名📈 より大きなモデルに挑戦
3.6B → 8B → 70Bと段階的に大きなモデルに挑戦しましょう。大きいほど賢くなりますが、GPUも必要になります。
❓ よくあるトラブル
CUDA out of memory エラー
GPUのメモリが不足しています。
per_device_train_batch_sizeを 4→2→1 に下げるload_in_4bit=Trueが設定されているか確認する(QLoRA)- Colab Pro に課金してA100を使う(VRAM 40GB)
Colabが切断された
無料版は90分でセッションが切れます。
- Colab Pro に課金する(月$10で長時間利用可能)
- 学習を短く分割する(
save_stepsを小さくして途中保存を増やす) - ローカルGPU(RTX 3080以上)で実行する
学習のlossが下がらない
モデルが学習できていない状態です。
- データセットの品質を確認する(ViewerでサンプルデータをいくつかチェックSuru)
learning_rateを 2e-4 → 1e-4 に下げてみる- データのフォーマットがモデルに合っているか確認する
HuggingFace Access Token エラー
トークンの権限設定が原因の可能性があります。
- HuggingFace → Settings → Access Tokens でトークンの権限が「Write」になっているか確認する
- 新しいトークンを作り直して再ログインする
- Colabの「!huggingface-cli login」を再実行する
Llama申請が通らない
Metaの申請が承認されない場合があります。
- Meta AIの申請ページ(meta.ai/llama)から直接申請する
- HuggingFaceとMetaのメールアドレスを同じにする
- 承認に数時間〜数日かかることがある。待ってみる
- 申請が通らない場合は
rinna/japanese-gpt-neox-3.6bなど申請不要のモデルを使う
🤖 Claudeの総評
このマニュアルは「コードを書かずにLLMを作る」という非常に野心的なアプローチを採用しています。実際にやってみると、ハードルは思ったより低く、しかし落とし穴は意外に多いという経験になります。
うまくいくこと
- HuggingFaceへの登録とモデルのダウンロードは本当にクリックだけでできる
- rinna 3.6BモデルはColab無料GPUで確かに動く
- コピペコマンドで学習が実行できるのは本当
- 学習済みモデルのHuggingFaceへのアップロードは驚くほど簡単
現実的な注意点
- 「コードを書かない」とは言っても、コピペするコマンドの意味を最低限理解しておかないとエラーで詰まる
- Colab無料版の90分制限は思ったより厳しい。3〜4時間の学習は途中切断リスクが高い
- 学習データの品質がモデルの品質を大きく左右する。ゴミデータを学ばせるとゴミが返ってくる
- 「LLMを作った」といっても、実際はベースモデルをちょっとカスタマイズした程度。GPT-4を超えるものは作れない
このマニュアルの価値
LLMの中身が「どういう構造で動いているか」を体感するという意味では、このアプローチは非常に価値があります。理論書を読むより、実際に動かして失敗する方がずっと学べます。
完全初心者がこの手順書通りに進めれば、おそらく1〜2日でHuggingFaceに自分のモデルを公開できます。それだけで「AIをゼロから作った」という体験は本物です。理論的な理解を深めたい場合は LLMをゼロから作る(理論編) も合わせて読んでください。