Google Colabで小規模LLMを動かしてみよう!

投稿日:2025年11月2日日曜日 最終更新日:

Google Colab japanese-gpt2-medium LLM 日本語モデル

X f B! P L
アイキャッチ画像 Google Colabで小規模LLMを動かしてみよう!

ChatGPTのような大規模言語モデル(LLM)は、個人でも試すことができます。この記事では、Google Colab上で簡単に動かせる軽量モデルを紹介します。


LLMとは?

LLM(Large Language Model)は、大量のテキストを学習して自然な文章を生成できるAIモデルです。ChatGPTやGeminiなどのサービスは、この技術を基に作られています。

Colabで動かせる軽量モデル

Google Colabでは、大規模モデルはメモリ制限により動かせませんが、小型のオープンソースモデルなら実験可能です。代表的なのは以下のようなものです:

  • DistilGPT2(Hugging Face提供、GPT-2を軽量化したモデル)
  • rinna/japanese-gpt2-medium(日本語に特化したGPT-2モデル。rinna社が公開しており、日本語の自然な文章生成に強みがあります)
  • Phi-2(Microsoft):性能とサイズのバランスが良い研究用モデル
  • TinyLlama:Llama系を軽量化した教育・実験用モデル

実際に動かしてみよう

ここでは、rinna/japanese-gpt2-medium(日本語対応のGPT-2モデル)をColab上で動かして、文章を自動生成する例を紹介します。

# !pip install transformers torch

from transformers import AutoModelForCausalLM, AutoTokenizer
import torch

# モデルとトークナイザーの読み込み
model_name = "rinna/japanese-gpt2-medium"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name)

# プロンプト(入力文)
prompt = "AIが進化すると私たちの生活は"
inputs = tokenizer(prompt, return_tensors="pt")

# GPUが利用可能かチェックし、デバイスを設定
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
model.to(device)
inputs.to(device)

# === 文章生成(重要な修正箇所) ===
# do_sample=True: 確率に基づいて単語を選択し、より人間らしい文章を生成します。
# max_new_tokens: 生成するトークンの最大数(文章の長さ)。
# top_p: 上位p%の確率の単語からサンプリングし、多様性を高めます。
# temperature: 確率分布を調整し、値を小さくすると一貫性が増し、大きくすると多様性が増します。
outputs = model.generate(
    **inputs,
    do_sample=True,
    max_new_tokens=80,
    top_p=0.95,
    temperature=0.7,
    pad_token_id=tokenizer.pad_token_id, # モデルによっては必須
    eos_token_id=tokenizer.eos_token_id
)

# 生成結果のデコードと表示
# 不要なエンコード/デコードを削除し、直接printします。
text = tokenizer.decode(outputs[0], skip_special_tokens=True)
print(text)

出力結果の例

実行1回目

が進化すると私たちの生活はかなり 楽になるでしょう。 最近 私たちは いろいろな 変化を 経験しているので 注意が必要です。 ・ 私は いつも 私を 愛している ・ 私は あなたを愛している ・ 私は あなたを愛している ・ 私は あなたを愛している ・ 私は あなたを愛している ・ 私は あなたを愛している ・

→ 感情表現が繰り返される傾向があり、確率的サンプリングの影響が見られます。

実行2回目

が進化すると私たちの生活はとても便利で快適になりました。 さて、今回は、私たちの身の回りでよく使われる便利な文房具を 紹介します。 私も、普段使う文房具をたくさん持っていますが、その中でも、特に最近、話題になっているのが、この「文房具」です。 今回は、そんな文房具の中から、おしゃれでかわいい

実行3回目

が進化すると私たちの生活はどうなるのでしょうか? 私たちが自然の摂理を無視し、自然を壊し、破壊し、破壊し、破壊し、破壊し、破壊し、破壊し、破壊し、破壊し、破壊し、破壊し、破壊し、破壊し、破壊し、破壊し、破壊し、破壊し、破壊し、破壊し、破壊し、破壊し、

まとめ

Google Colabを使えば、無料で小規模なLLMを体験できます。まずはDistilGPT2などの軽量モデルで試し、慣れたらより高度なモデルや独自データでのファインチューニングに挑戦してみましょう。

※ LLMの出力結果は確率的に変化し、事実とは異なる内容を含む場合があります。研究・実験目的でご利用ください。