SLM(小規模言語モデル)とは
SLM(Small Language Model)は、パラメータ数が数十億以下の言語モデルを指します。GPT-4やClaudeのような巨大なLLM(Large Language Model)とは異なり、ローカル環境やエッジデバイスでも動作可能です。
SLMとLLMの比較
| 特徴 | SLM | LLM |
|---|---|---|
| パラメータ数 | 1B〜7B程度 | 70B〜1T以上 |
| 実行環境 | ローカル/エッジ | クラウド |
| 応答速度 | 高速 | 比較的遅い |
| コスト | 低い | 高い |
| プライバシー | 高い | データ送信が必要 |
なぜ今SLMが注目されるのか
1. 量子化技術の進展
量子化(Quantization)により、モデルのサイズを大幅に削減できるようになりました。
# 量子化の例(llama.cpp)
# 16bitモデル → 4bit量子化で約1/4のサイズに
# 元のサイズ: 13GB
# Q4_K_M量子化後: 約4GB
2. 知識蒸留の高度化
大規模モデルの知識を小規模モデルに「蒸留」する技術が向上しています。
Teacher Model (70B) → 知識蒸留 → Student Model (7B)
↓
特定タスクで同等の性能
3. 特定タスクでLLMに匹敵
汎用的な能力ではLLMに劣りますが、特定タスクに特化させることでLLM並みの性能を実現できます:
- コード補完
- 文書要約
- 定型的な質問応答
- 文法チェック
エッジAIの可能性
ユースケース
1. オフライン対応アプリ
// ブラウザ内でのLLM実行(WebLLM)
import { CreateWebWorkerMLCEngine } from "@anthropic-ai/sdk/llm";
const engine = await CreateWebWorkerMLCEngine(
"Llama-3.2-1B-Instruct-q4f16_1-MLC"
);
const response = await engine.chat.completions.create({
messages: [{ role: "user", content: "Hello!" }],
});
2. IoTデバイス
- スマートホームの音声認識
- 産業用機器の異常検知
- 車載システムの自然言語インターフェース
3. モバイルアプリ
- オフライン翻訳
- リアルタイム文字起こし
- プライバシー重視のチャットボット
ハイブリッドアーキテクチャ
2026年には、クラウドとエッジを組み合わせたハイブリッド設計が標準になっています。
アーキテクチャ例
┌─────────────────────────────────────────┐
│ クライアント │
│ ┌─────────────────────────────────┐ │
│ │ SLM(ローカル実行) │ │
│ │ - 即座に応答可能 │ │
│ │ - プライバシー保護 │ │
│ └─────────────────────────────────┘ │
│ │ │
│ 複雑なタスクのみ │
│ ▼ │
└─────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────┐
│ クラウド │
│ ┌─────────────────────────────────┐ │
│ │ LLM(高度な推論) │ │
│ │ - 複雑なタスク処理 │ │
│ │ - マルチモーダル対応 │ │
│ └─────────────────────────────────┘ │
└─────────────────────────────────────────┘
ルーティングの実装
async function processQuery(query: string) {
const complexity = await assessComplexity(query);
if (complexity < 0.5) {
// シンプルなクエリはローカルSLMで処理
return await localSLM.generate(query);
} else {
// 複雑なクエリはクラウドLLMに送信
return await cloudLLM.generate(query);
}
}
注目のSLMモデル
2026年の主要SLM
| モデル | パラメータ | 特徴 |
|---|---|---|
| Llama 3.2 1B/3B | 1-3B | Meta製、多言語対応 |
| Phi-3 Mini | 3.8B | Microsoft製、推論に強い |
| Gemma 2 2B | 2B | Google製、軽量 |
| Qwen2.5 1.5B | 1.5B | Alibaba製、日本語対応 |
導入のポイント
1. タスクの選定
SLMが得意なタスクを見極めることが重要です:
- ✅ 定型的な応答生成
- ✅ テキスト分類
- ✅ 情報抽出
- ❌ 複雑な推論
- ❌ 長文の生成
2. 評価とチューニング
# タスク特化のファインチューニング
from transformers import Trainer, TrainingArguments
training_args = TrainingArguments(
output_dir="./results",
num_train_epochs=3,
per_device_train_batch_size=4,
learning_rate=2e-5,
)
trainer = Trainer(
model=model,
args=training_args,
train_dataset=train_dataset,
)
trainer.train()
まとめ
2026年、SLMはLLMの代替ではなく、補完的な存在として定着しました:
- 量子化・蒸留技術により、小型でも高性能に
- エッジAIでプライバシーと低レイテンシを実現
- ハイブリッド設計がベストプラクティスに
すべてをクラウドLLMに頼る時代は終わりつつあります。用途に応じてSLMとLLMを使い分けることで、コスト効率とユーザー体験の両立が可能になります。