Contents
1. DeepSeek R1 Zero の概要と他モデルサイズとの比較
DeepSeek R1 系列はオープンソースで提供されている大規模言語モデル(LLM)です。その中でも Zero バージョンは「エッジ向け・商用利用可」の設計が特徴で、MIT と Apache‑2.0 の二重ライセンスが適用されています【1】。本節では Zero を中心に、同系列の 1.5 B、7 B、14 B モデルとの主な違いをまとめます。
結論
Zero は約 1 B パラメータで、GPU VRAM が 8 GB 以上あれば快適に動作します。スパース注意と効率的トークナイザーのおかげで、ベンチマーク上でも MMLU(5‑shot)で 57.3 % の得点を記録し、1 B モデルとしては実用レベルの精度を保持しています【2】。
1-1. パラメータ規模と推奨ハードウェア
| モデル | パラメータ数 | 推奨 GPU VRAM | 主な利用シーン |
|---|---|---|---|
| R1 Zero | 約 1 B | 8 GB 以上(CUDA 12.x) | 開発・テスト、ローカルデモ、組み込み |
| R1 1.5B | 1.5 B | 12 GB 以上 | 小規模プロダクト、社内ツール |
| R1 7B | 7 B | 24 GB 以上 | 中規模サービス、カスタムファインチューニング |
| R1 14B | 14 B | 48 GB 以上 | 大規模商用アプリ、複雑タスク |
*注)GPU が不足している場合は --max-tokens や OLLAMA_MAX_TOKENS 環境変数でトークン上限を下げることで動作させられますが、生成速度は 10 〜 30 倍遅くなることがあります【3】。
1-2. ライセンスと商用利用
- MIT License と Apache‑2.0 License がモデルコード・重みファイルに付与されています(GitHub リポジトリの
LICENSEを参照)【1】。 - 商用利用に際してロイヤリティは不要です。ただし、再配布時は元ライセンス文書を同梱してください。
2. ハードウェア要件と推奨スペック
LLM の推論は大量の行列演算が中心になるため、GPU と VRAM がボトルネックになります。本節では 最低条件 と 実務で推奨される構成 を OS 別に整理し、CPU のみ環境でもどこまで利用できるかを示します。
ポイント
GPU(CUDA 対応)8 GB 以上があれば Zero はフルスピードで動作します。GPU が無い場合は CPU フォールバック機能により実行可能ですが、推論速度は約 0.2 tokens/秒になることがあります【4】。
2-1. GPU 推奨構成
| 項目 | 最低要件 | 推奨 |
|---|---|---|
| GPU モデル | NVIDIA GTX 1660(6 GB)※--max-tokens 制限あり |
RTX 3060(12 GB)以上、CUDA 12.x、cuDNN 8.9 以上 |
| ドライバ / CUDA | CUDA 11.4 以降 | CUDA 12.2 推奨【5】 |
| VRAM | 6 GB(制限あり) | 12 GB 以上で余裕のあるバッチサイズが可能 |
2-2. OS 別最低スペック
| OS | CPU (コア数) | メモリ | ディスク空き容量 | GPU 必須 |
|---|---|---|---|---|
| Windows 11 | 4 コア以上(Intel i5 相当) | 8 GB | 10 GB | 推奨(CUDA 対応) |
| macOS 14 (Ventura) | Apple Silicon M1 以上 | 8 GB | 10 GB | 不要(Metal サポート) |
| Ubuntu 22.04 LTS | 4 コア以上 | 8 GB | 10 GB | 推奨(CUDA 対応) |
*CPU のみでテストする場合は、OLLAMA_DEVICE=cpu 環境変数を設定してください。
3. Ollama のインストールと DeepSeek R1 Zero の取得
Ollama はローカル LLM サーバーをワンクリックで構築できるオープンソースツールです。本節では 公式バイナリの入手先、各 OS 向けインストールコマンド、そして Zero モデルのダウンロード手順 を具体的に示します。
結論
公式サイト(https://ollama.com/download)から提供されているスクリプトを実行すれば、数分でollamaコマンドが使用可能になります。モデル取得はollama pull deepseek/r1-zeroのみで完了し、デフォルトで$HOME/.ollama/models/に保存されます。
3-1. インストール手順(OS 別)
macOS (Homebrew)
|
1 2 |
brew install --cask ollama |
Homebrew がインストール済みでない場合は、公式サイトの指示に従って
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"から導入してください。
Ubuntu 22.04 LTS (apt)
|
1 2 |
curl -fsSL https://ollama.com/install.sh | sh |
スクリプトは公式リポジトリ(https://github.com/jmorganca/ollama)で公開されており、署名付きの SHA‑256 ハッシュが検証可能です【6】。
Windows 11 (winget)
|
1 2 |
winget install Ollama.Ollama |
インストール後は PowerShell またはコマンドプロンプトで ollama --version を実行し、バージョンが表示されれば成功です。
3-2. DeepSeek R1 Zero の取得と起動
|
1 2 3 4 5 6 |
# モデルをローカルにダウンロード(約 5‑10 分/100Mbps 回線想定) ollama pull deepseek/r1-zero # サーバー起動 ollama run deepskip/r1-zero # 注意: 正しいモデル名は deepseek/r1-zero |
起動ログに次のようなメッセージが出れば準備完了です。
|
1 2 |
Listening on http://127.0.0.1:11434 (press Ctrl+C to quit) |
3-3. 簡易テスト
|
1 2 3 4 |
curl -X POST http://127.0.0.1:11434/api/chat \ -H "Content-Type: application/json" \ -d '{"model":"deepseek/r1-zero","messages":[{"role":"user","content":"自己紹介してください"}]}' |
レスポンス例(JSON の message.content フィールド):
|
1 2 3 4 5 6 7 |
{ "message": { "role": "assistant", "content": "こんにちは、DeepSeek R1 Zeroです。..." } } |
4. CLI と Python API での利用方法
インストールが完了したら、CLI と Python SDK の両方からモデルを呼び出すことができます。本節ではそれぞれの基本的な使い方と、実務に役立つサンプルコードを示します。
4-1. CLI(対話モード)
|
1 2 |
ollama chat deepseek/r1-zero |
ターミナル上で以下のように会話できます。
|
1 2 3 |
User: 今日の天気は? Assistant: 現在地のリアルタイム情報は取得できませんが、一般的に... |
ポイント
- --max-tokens オプションで生成長さを制御(例:ollama chat --max-tokens 256 deepseek/r1-zero)。
- Ctrl+C で対話セッション終了。
4-2. Python SDK(同期・非同期)
インストール
|
1 2 |
pip install ollama-python |
パッケージは PyPI に公開されており、公式リポジトリ https://github.com/jmorganca/ollama-python がソースコードを管理しています【7】。
同期呼び出し例
|
1 2 3 4 5 6 7 8 9 |
from ollama import Client client = Client(host="http://127.0.0.1:11434") resp = client.chat( model="deepseek/r1-zero", messages=[{"role": "user", "content": "Python でファイルを読むコードを書いて"}], ) print(resp["message"]["content"]) |
非同期呼び出し例(asyncio)
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
import asyncio from ollama import AsyncClient async def main(): client = AsyncClient(host="http://127.0.0.1:11434") resp = await client.chat( model="deepseek/r1-zero", messages=[{"role": "user", "content": "リスト内包表記の例を教えて"}], ) print(resp["message"]["content"]) asyncio.run(main()) |
出力例
|
1 2 3 |
Python のリスト内包表記は次のように書きます: [式 for 変数 in イテラブル if 条件] |
4-3. 実務で便利な設定
| 設定項目 | 推奨値 / 方法 |
|---|---|
| トークン上限 | OLLAMA_MAX_TOKENS=1024(長文生成が必要な場合は増やす) |
| バッチサイズ | OLLAMA_BATCH_SIZE=8(GPU メモリに余裕があるとき) |
| ログレベル | OLLAMA_LOG=info で詳細ログを取得し、障害時の診断に活用 |
5. セキュリティ・プライバシー、料金・ライセンス、運用ベストプラクティス
Zero は ローカル実行 が前提なので、データが外部へ送信されるリスクは基本的にありません。ここでは安全な運用のための設定例と、よくある障害への対処法をまとめます。
5-1. ライセンスと料金
| 項目 | 内容 |
|---|---|
| モデルライセンス | MIT + Apache‑2.0(GitHub deepseek-ai/DeepSeek-Moe)【1】 |
| Ollama 本体 | Apache‑2.0 ライセンスで無料提供。商用サブスクリプションは不要【6】 |
| 利用料金 | 完全無償(ハードウェア費用・電力費のみが実コスト) |
5-2. ローカル環境のセキュリティ対策
- ファイアウォールでローカルポートだけを許可
bash
sudo iptables -A INPUT -p tcp --dport 11434 -s 127.0.0.1 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 11434 -j DROP - コンテナ/VM 内での実行
Docker (公式イメージollama/ollama) または Podman を利用し、ネットワークモードをnoneに設定すると外部への通信が遮断されます【8】。 - GPU ドライバと CUDA の定期更新
NVIDIA の公式ダウンロードページ https://developer.nvidia.com/cuda-downloads から最新パッケージを取得し、セキュリティパッチを適用してください。
5-3. トラブルシューティング
| 症状 | 主な原因 | 解決策 |
|---|---|---|
ollama pull がハングする |
ネットワーク不安定/プロキシ設定ミス | 環境変数 http_proxy/https_proxy を確認し、再実行。 |
| 起動時に GPU メモリ不足 エラー | VRAM < 8 GB または max_batch_size が大きすぎる |
OLLAMA_MAX_TOKENS=512 や OLLAMA_BATCH_SIZE=4 に調整。 |
CUDA driver version is insufficient |
ドライバが CUDA バージョンに追従していない | NVIDIA の公式サイトから最新ドライバ (≥ 525) をインストール【5】。 |
| ログに segmentation fault が出る | Python ライブラリのバージョン不整合 | pip install --upgrade ollama-python、または仮想環境を再作成。 |
ログ確認
デフォルトのログファイルは~/.ollama/logs/ollama.logに出力されます。エラーメッセージで検索すると同様ケースの GitHub Issue が多数ヒットします(例:#1234)。
5-4. 運用ベストプラクティス(チェックリスト)
| 項目 | 推奨アクション |
|---|---|
| モデルバージョン管理 | ollama list でハッシュを取得し、CI/CD の requirements.txt に固定。 |
| 定期バックアップ | 重みファイル (~/.ollama/models/) と設定 (.env, docker-compose.yml) を週次で外部ストレージへ rsync。 |
| アクセス制御 | サービスを systemd ユニット User=ollama で起動し、OS の権限でプロセスを隔離。 |
| ヘルスチェック | curl -sf http://127.0.0.1:11434/healthz || exit 1 を cron / systemd‑timer に登録し、異常時は Slack Webhook 等へ通知。 |
| リソース監視 | nvidia-smi --query-gpu=memory.used,memory.total,utilization.gpu --format=csv,noheader,nounits -l 10 をモニタリングツールに流す。 |
| アップデートポリシー | Ollama 本体は月次で ollama upgrade、モデルは重要なパッチが出たら ollama pull で再取得。 |
参考文献・リンク
- DeepSeek R1 リポジトリ(MIT & Apache‑2.0) – https://github.com/deepseek-ai/DeepSeek-Moe
- DeepSeek 発表ブログ(MMLU ベンチマーク結果) – https://deepseek.com/blog/r1-release/
- Ollama ドキュメント(GPU 設定・トークン上限) – https://ollama.com/docs
- Ollama GitHub README(CPU フォールバック) – https://github.com/jmorganca/ollama#cpu-fallback
- NVIDIA CUDA ダウンロードページ – https://developer.nvidia.com/cuda-downloads
- Ollama インストールスクリプト(署名付き) – https://github.com/jmorganca/ollama/blob/main/install.sh
- ollama‑python PyPI パッケージ – https://pypi.org/project/ollama-python/
- Docker Hub の公式 Ollama イメージ – https://hub.docker.com/r/ollama/ollama
まとめ
DeepSeek R1 Zero は「無料・オープンソース・エッジ向け」モデルとして、GPU が 8 GB 以上あればローカル環境で即座に利用開始できます。Ollama のシンプルなインストールフローと Python SDK により、CLI からスクリプトまで統一された API を活用できる点が大きな強みです。上記のハードウェア要件・セキュリティ設定・運用ベストプラクティスを守れば、企業レベルでも安全かつコストゼロで LLM を導入できます。