Ollama コマンドチートシート:`run`/`pull`/`list`/`ps`/`stop` の虎の巻
ローカル環境で LLM を動かす Ollama は、非常にシンプルなコマンド体系が魅力です。しかし、実際に使い始めると「どのコマンドをどう使うんだっけ?」と迷うこともあるでしょう。
この記事では、Ollama の基本 5 コマンド(run、pull、list、ps、stop)に絞って、それぞれの使い方と具体例を徹底解説します。この 5 つを覚えるだけで、日常的な LLM 開発やテストがスムーズに進むようになるはずです。
コマンド早見表
各コマンドの役割と主な使い方を以下の表にまとめました。
| # | コマンド | 役割 | 主な用途 | 基本構文 |
|---|---|---|---|---|
| 1 | ollama run | モデルを実行する | モデルのダウンロード+起動、対話的なチャット | ollama run <モデル名> |
| 2 | ollama pull | モデルをダウンロードする | 事前にモデルを取得しておく | ollama pull <モデル名> |
| 3 | ollama list | ダウンロード済みモデル一覧 | ローカルにあるモデルの確認 | ollama list |
| 4 | ollama ps | 実行中のモデルを表示 | メモリ使用状況や稼働状態の確認 | ollama ps |
| 5 | ollama stop | モデルを停止する | メモリ解放、リソース管理 | ollama stop <モデル名> |
それでは、各コマンドの詳細を見ていきましょう。
背景
Ollama とは
Ollama は、Meta 社の Llama 2 をはじめとする大規模言語モデル(LLM)を、ローカル環境で簡単に動かすためのツールです。通常、LLM を動かすには複雑な環境構築や GPU の設定が必要ですが、Ollama はそれらを自動化し、数コマンドでモデルを起動できるようにしてくれます。
Ollama のアーキテクチャ
Ollama は以下のような構成で動作しています。
mermaidflowchart TD
cli["CLIコマンド<br/>(ollama run/pull/list等)"]
server["Ollamaサーバ<br/>(REST API)"]
model["モデルファイル<br/>(.gguf形式)"]
engine["推論エンジン<br/>(llama.cpp)"]
cli -->|リクエスト| server
server -->|モデル読込| model
server -->|推論実行| engine
engine -->|レスポンス| server
server -->|結果返却| cli
CLI コマンドは Ollama サーバにリクエストを送り、サーバがモデルファイルを読み込んで推論エンジンで処理を行います。このシンプルな構造により、開発者はコマンド一つで LLM を操作できるのです。
コマンド体系の設計思想
Ollama のコマンドは「必要最小限」を徹底しています。Docker Cli に似たシンプルな設計で、以下の 3 つのカテゴリに分類されます。
- モデル管理:
pull、list、rm - モデル実行:
run、serve - プロセス管理:
ps、stop
この記事では、最も頻繁に使う 5 つのコマンドに焦点を当てて解説していきます。
課題
ローカル LLM 運用の難しさ
Ollama を使い始めた開発者が直面する課題は、主に以下の 3 点です。
mermaidflowchart LR
problem1["モデルが多すぎて<br/>どれを選ぶか迷う"]
problem2["メモリ不足で<br/>モデルが落ちる"]
problem3["複数モデルの<br/>切り替えが面倒"]
solution["コマンドの<br/>正しい理解"]
problem1 --> solution
problem2 --> solution
problem3 --> solution
図で理解できる要点:
- モデル選択、リソース管理、切り替え操作の 3 つが主な課題
- これらは適切なコマンド理解で解決可能
1. モデル選択の迷い
Ollama では数十種類のモデルが提供されていますが、どのモデルをいつ使うべきか判断が難しいですね。
2. メモリ管理の問題
LLM は大量のメモリを消費します。複数モデルを同時に動かすと、システムが不安定になることもあるでしょう。
3. コマンドの使い分け
runとpullの違いや、psとlistの使い分けなど、似たようなコマンドの役割を正しく理解することが重要です。
解決策
5 つの基本コマンドをマスターする
Ollama の日常的な操作は、以下の 5 コマンドで 95%カバーできます。
コマンドの関係性
mermaidstateDiagram-v2
[*] --> pull: ollama pull
pull --> list: ollama list
list --> run: ollama run
run --> ps: ollama ps
ps --> stop: ollama stop
stop --> run: ollama run
stop --> [*]
図で理解できる要点:
pullでモデル取得 →listで確認 →runで実行 →psで監視 →stopで停止- 実行と停止はサイクルとして繰り返し可能
このフローを理解すれば、Ollama の操作が体系的に把握できます。それでは、各コマンドの詳細を見ていきましょう。
具体例
ollama run - モデルを実行する
runコマンドは、Ollama の中で最も頻繁に使うコマンドです。モデルのダウンロードと起動を一度に行えます。
基本構文
typescriptollama run <モデル名>
具体的な使用例
最も人気のある Llama 2 モデルを起動する場合は、以下のようにします。
bashollama run llama2
初回実行時は自動的にモデルがダウンロードされ、その後対話モードに入ります。
対話モードの例
実行すると、以下のようなプロンプトが表示されます。
bash>>> こんにちは。今日の天気について教えてください。
こんにちは!申し訳ございませんが、私はリアルタイムの情報にアクセスできないため、
今日の具体的な天気情報をお伝えすることはできません。
お住まいの地域の天気予報を確認するには、以下の方法をお勧めします:
- 気象庁のウェブサイト
- 天気予報アプリ
...
より小さなモデルを使う
メモリが限られている環境では、軽量版を選択できます。
bash# 7Bパラメータ版(約4GB)
ollama run llama2:7b
# 13Bパラメータ版(約8GB)
ollama run llama2:13b
モデル名の後ろに:タグ名を付けることで、特定のバージョンやサイズを指定できるのです。
ワンショット実行
対話モードではなく、一度だけ質問して終了したい場合もあります。
bashollama run llama2 "TypeScriptの型推論について簡潔に説明してください"
この形式は、スクリプトから呼び出す場合に便利ですね。
カスタムパラメータを指定する
温度パラメータなどを調整したい場合は、Modelfile を作成して実行します。
bash# Modelfileの例
cat > Modelfile << EOF
FROM llama2
PARAMETER temperature 0.8
PARAMETER top_p 0.9
EOF
# カスタムモデルとしてビルド
ollama create my-llama2 -f Modelfile
# 実行
ollama run my-llama2
これで、より創造的な(temperature 高め)応答を得られるようになります。
ollama pull - モデルをダウンロードする
pullコマンドは、実行せずにモデルをダウンロードだけしたい場合に使います。
基本構文
typescriptollama pull <モデル名>
事前ダウンロードのメリット
プレゼンテーション前やデモ環境の準備で、事前にモデルを用意しておきたいケースがあります。
bash# CodeLlamaを事前ダウンロード
ollama pull codellama
# ダウンロード進捗が表示される
pulling manifest
pulling 8fdf8f752f6e... 100% ▕████████████████▏ 3.8 GB
pulling 8ab4849b038c... 100% ▕████████████████▏ 1.1 KB
pulling 7c23fb36d801... 100% ▕████████████████▏ 4.8 KB
pulling 2e0493f67d0c... 100% ▕████████████████▏ 59 B
pulling fa304d675061... 100% ▕████████████████▏ 91 B
pulling 42ba7f8a01dd... 100% ▕████████████████▏ 557 B
verifying sha256 digest
success
ダウンロードが完了すれば、ネットワークがない環境でもrunコマンドで即座に起動できます。
特定バージョンを取得
タグを指定することで、特定のバージョンを取得できます。
bash# 最新版
ollama pull mistral:latest
# 7Bパラメータ版
ollama pull mistral:7b
# instruct版(指示に従う特化版)
ollama pull mistral:7b-instruct
用途に応じて適切なバージョンを選択しましょう。
ollama list - ダウンロード済みモデル一覧
ローカルにどのモデルがあるかを確認するコマンドです。
基本構文
typescriptollama list
実行結果の例
bashNAME ID SIZE MODIFIED
llama2:latest 78e26419b446 3.8 GB 2 days ago
codellama:7b 8fdf8f752f6e 3.8 GB 1 week ago
mistral:7b-instruct 61e88e884507 4.1 GB 3 weeks ago
この一覧から、以下の情報が分かります。
| # | 項目 | 説明 |
|---|---|---|
| 1 | NAME | モデル名とタグ |
| 2 | ID | モデルの一意識別子(ハッシュ値の先頭) |
| 3 | SIZE | ディスク使用量 |
| 4 | MODIFIED | 最終更新日時 |
ディスク容量の確認
複数モデルをダウンロードすると、ディスク容量を圧迫します。
bash# モデル一覧を確認
ollama list
# 合計サイズを計算(macOS/Linux)
ollama list | awk 'NR>1 {sum+=$3} END {print "Total:", sum, "GB"}'
定期的に使わないモデルは削除して、容量を確保しましょう。
モデルの削除
不要なモデルはrmコマンドで削除できます。
bash# モデルを削除
ollama rm codellama:7b
# 確認
ollama list
削除すると、そのモデルが使用していたディスク領域が解放されます。
ollama ps - 実行中のモデルを表示
現在メモリに読み込まれているモデルを確認するコマンドです。
基本構文
typescriptollama ps
実行結果の例
bashNAME ID SIZE PROCESSOR UNTIL
llama2:latest 78e26419b446 5.3 GB 100% GPU 4 minutes from now
この情報から、以下が把握できます。
| # | 項目 | 説明 |
|---|---|---|
| 1 | NAME | 実行中のモデル名 |
| 2 | ID | モデル ID |
| 3 | SIZE | メモリ使用量(ディスク容量より大きい) |
| 4 | PROCESSOR | CPU または GPU 使用率 |
| 5 | UNTIL | 自動アンロードまでの時間 |
メモリ使用量の監視
複数のモデルを同時に動かすと、メモリ不足が発生することがあります。
bash# 実行中のモデルを確認
ollama ps
# システムのメモリ使用状況も確認(macOS)
vm_stat
# Linux の場合
free -h
メモリ不足が懸念される場合は、使用していないモデルをstopで停止させましょう。
自動アンロードの仕組み
Ollama は、モデルが一定時間使われないと自動的にメモリから解放します。デフォルトは 5 分間です。
bash# 環境変数で変更可能(秒単位)
export OLLAMA_KEEP_ALIVE=300 # 5分間
# 無期限に保持
export OLLAMA_KEEP_ALIVE=-1
# 即座にアンロード
export OLLAMA_KEEP_ALIVE=0
この設定により、リソース管理を柔軟にコントロールできます。
ollama stop - モデルを停止する
メモリから明示的にモデルをアンロードするコマンドです。
基本構文
typescriptollama stop <モデル名>
基本的な使用例
実行中のモデルを停止します。
bash# llama2を停止
ollama stop llama2
# 確認
ollama ps
# (何も表示されない = 停止済み)
複数モデルを一括停止
すべてのモデルを停止したい場合は、シェルスクリプトを使います。
bash# 全モデルを停止(Bash)
ollama ps | awk 'NR>1 {print $1}' | xargs -I {} ollama stop {}
これで、実行中のすべてのモデルが一度に停止されます。
停止が必要な場面
以下のような場合に、明示的な停止が有効です。
| # | 場面 | 理由 |
|---|---|---|
| 1 | 別モデルへの切り替え前 | メモリ不足を防ぐ |
| 2 | モデルファイルの更新時 | 古いバージョンをアンロード |
| 3 | システムメンテナンス前 | リソース解放 |
| 4 | 開発テスト後 | クリーンな状態に戻す |
エラー発生時の対処
モデルが応答しなくなった場合も、stopで強制終了できます。
bash# モデルが応答しない場合
ollama stop llama2
# それでも停止しない場合はサーバごと再起動
# macOS/Linux
brew services restart ollama
# または
pkill ollama
ollama serve
サーバの再起動により、すべてのモデルが確実に停止されます。
実践的なワークフロー
日常的な開発フロー
実際の開発では、これらのコマンドを組み合わせて使います。
mermaidflowchart TD
start["開発開始"]
check_list["ollama list<br/>モデル確認"]
need_pull{"必要なモデルは<br/>ダウンロード済み?"}
pull_model["ollama pull<br/>モデル取得"]
run_model["ollama run<br/>モデル起動"]
check_ps["ollama ps<br/>動作確認"]
work["開発・テスト作業"]
stop_model["ollama stop<br/>モデル停止"]
done["作業終了"]
start --> check_list
check_list --> need_pull
need_pull -->|No| pull_model
need_pull -->|Yes| run_model
pull_model --> run_model
run_model --> check_ps
check_ps --> work
work --> stop_model
stop_model --> done
図で理解できる要点:
- list → pull → run → ps → stop の順序で進める
- 必要なモデルがない場合のみ pull を実行
- 作業後は必ず stop でリソース解放
スクリプト化の例
頻繁に使う操作は、シェルスクリプトにまとめると便利です。
bash#!/bin/bash
# ollama-workflow.sh
echo "=== Ollama ワークフロー ==="
# 1. 利用可能なモデルを確認
echo "ダウンロード済みモデル:"
ollama list
# 2. 実行中のモデルを確認
echo ""
echo "実行中のモデル:"
ollama ps
# 3. モデルを指定して実行
echo ""
read -p "起動するモデル名を入力: " model_name
if [ -n "$model_name" ]; then
ollama run $model_name
else
echo "モデル名が入力されませんでした"
fi
実行権限を付与して使います。
bash# 実行権限を付与
chmod +x ollama-workflow.sh
# 実行
./ollama-workflow.sh
Docker 環境での使用
Docker コンテナ内で Ollama を使う場合も、コマンドは同じです。
dockerfile# Dockerfile
FROM ollama/ollama:latest
# モデルを事前ダウンロード
RUN ollama pull llama2:7b
EXPOSE 11434
コンテナを起動します。
bash# イメージをビルド
docker build -t my-ollama .
# コンテナを起動
docker run -d -p 11434:11434 --name ollama-server my-ollama
# コンテナ内でコマンド実行
docker exec -it ollama-server ollama list
docker exec -it ollama-server ollama ps
この方法で、環境を汚さずに Ollama を試せます。
トラブルシューティング
よくあるエラーと解決方法
実際に使っていると、いくつかのエラーに遭遇することがあります。
エラー 1: モデルが見つからない
bashError: model 'llama2' not found
# 解決方法
ollama pull llama2
エラーコード: Error: model not found
発生条件: ダウンロードしていないモデルをrunしようとした
解決方法:
ollama listで存在を確認- 無ければ
ollama pull <モデル名>で取得 - 再度
ollama runを実行
エラー 2: メモリ不足
bashError: failed to load model: insufficient memory
# 解決方法
# 1. 実行中のモデルを停止
ollama ps
ollama stop llama2
# 2. より小さいモデルを使用
ollama run llama2:7b # 13bではなく7bを使用
エラーコード: Error: insufficient memory
発生条件: 使用可能なメモリがモデルサイズより小さい
解決方法:
ollama psで実行中のモデルを確認- 不要なモデルを
ollama stopで停止 - システムの他のアプリケーションを終了
- より小さいパラメータ数のモデルを選択
エラー 3: サーバが起動していない
bashError: could not connect to ollama server
# 解決方法(macOS)
brew services start ollama
# または手動起動
ollama serve
エラーコード: Error: could not connect to ollama server
発生条件: Ollama サーバプロセスが起動していない
解決方法:
ollama serveでサーバを起動- macOS の場合は
brew services start ollama - バックグラウンドで起動する場合は
ollama serve &
参考リンク: Ollama Server Configuration
パフォーマンスチューニング
より快適に使うための設定を紹介します。
GPU 使用の確認
bash# NVIDIA GPUの場合
nvidia-smi
# Metal(macOS)の場合
ollama ps
# PROCESSORカラムに"GPU"が表示されればOK
環境変数での最適化
bash# GPUレイヤー数を指定(より多くをGPUで処理)
export OLLAMA_NUM_GPU=1
# コンテキストウィンドウサイズ
export OLLAMA_NUM_CTX=4096
# 並列リクエスト数
export OLLAMA_NUM_PARALLEL=2
これらの設定をシェルの設定ファイル(.bashrcや.zshrc)に追加すると、起動時に自動適用されます。
まとめ
Ollama の 5 つの基本コマンドについて、詳しく解説してきました。
この記事で学んだコマンドをまとめると、以下のようになります。
| コマンド | タイミング | 効果 |
|---|---|---|
ollama pull | 事前準備 | モデルを取得し、すぐに使える状態にする |
ollama list | 確認時 | どのモデルがあるか把握できる |
ollama run | 実行時 | モデルを起動し、対話や推論が可能になる |
ollama ps | 監視時 | メモリ使用状況やプロセスを確認できる |
ollama stop | 終了時 | リソースを解放し、次の作業に備える |
これらのコマンドを使いこなすことで、ローカル環境での LLM 開発が格段に効率化されます。
最初はrunとpullの違いに戸惑うかもしれませんが、実際に手を動かしてみれば、すぐに体で覚えられるでしょう。特にpsとstopによるリソース管理は、複数モデルを扱う際に必須のスキルとなります。
ぜひこのチートシートを手元に置いて、日々の LLM 開発に役立ててください。
関連リンク
articleOllama コマンドチートシート:`run`/`pull`/`list`/`ps`/`stop` の虎の巻
articleOllama のインストール完全ガイド:macOS/Linux/Windows(WSL)対応手順
articleOllama とは?ローカル LLM を数分で動かす仕組みと強みを徹底解説
articleWebLLM とは?ブラウザだけで動くローカル推論の全体像【2025 年版】
articleMistral とは? 軽量・高速・高品質を両立する次世代 LLM の全体像
articleOllama コマンドチートシート:`run`/`pull`/`list`/`ps`/`stop` の虎の巻
articletRPC とは?型安全なフルスタック通信を実現する仕組みとメリット【2025 年版】
articleJest の “Cannot use import statement outside a module” を根治する手順
articleObsidian プラグイン相性問題の切り分け:セーフモード/最小再現/ログの活用
blogiPhone 17シリーズの発表!全モデルiPhone 16から進化したポイントを見やすく整理
blogGoogleストアから訂正案内!Pixel 10ポイント有効期限「1年」表示は誤りだった
blog【2025年8月】Googleストア「ストアポイント」は1年表記はミス?2年ルールとの整合性を検証
blogGoogleストアの注文キャンセルはなぜ起きる?Pixel 10購入前に知るべき注意点
blogPixcel 10シリーズの発表!全モデル Pixcel 9 から進化したポイントを見やすく整理
blogフロントエンドエンジニアの成長戦略:コーチングで最速スキルアップする方法
review今の自分に満足していますか?『持たざる者の逆襲 まだ何者でもない君へ』溝口勇児
reviewついに語られた業界の裏側!『フジテレビの正体』堀江貴文が描くテレビ局の本当の姿
review愛する勇気を持てば人生が変わる!『幸せになる勇気』岸見一郎・古賀史健のアドラー実践編で真の幸福を手に入れる
review週末を変えれば年収も変わる!『世界の一流は「休日」に何をしているのか』越川慎司の一流週末メソッド
review新しい自分に会いに行こう!『自分の変え方』村岡大樹の認知科学コーチングで人生リセット
review科学革命から AI 時代へ!『サピエンス全史 下巻』ユヴァル・ノア・ハラリが予見する人類の未来