🥭

Ollama + Open-WebUI を使用して DeepSeek R1をローカルPCにインストールする手順

2025/03/01に公開

DeepSeek R1をローカルに導入して、無制限で高度にプライベートなAIエクスペリエンスをお楽しみできるために、Ollama + Open-WebUI を使用して DeepSeek R1をローカルPCにインストールする手順を紹介します。

目次

  1. DeepSeekは大人気。
  2. DeepSeek R1とは何ですか?
  3. DeepSeek R1 は何ができますか?
  4. DeepSeek R1をローカルに導入する理由とその利点
  5. Ollama+Open-WebUIを使用してDeepSeek R1をローカルに導入する詳細な手順

1.DeepSeekは大人気

DeepSeekは膨大なトラフィックにより、世界のダウンロードリストでトップになりました。
2025年1月中、DeepSeekは大人気となり、ほぼ世界中に広まりました。
ニュースサイト、TiktokとYoutubeなどを開くと、DeepSeekに関するさまざまなニュースが表示されます。
数日前までは30か国以上でダウンロード数1位だったのを覚えています。
しかし、先ほど再度確認したところ、
なんと、アメリカ、日本、カナダなどを含む157か国でアプリダウンロードリストのトップに躍り出たのです!
この膨大なトラフィック量は、OpenAIが最初に人気を博したときと変わりません。

しかし、非常に人気があったため、この期間中に DeepSeek を使用するとほぼ毎日クラッシュしました。もちろん、米国からの不快な攻撃も否定できませんが、ここではそれについては触れません。

そのため、登録しようとした友人は、この期間中は新規ユーザーがほとんど登録できないことを知っておく必要があります。登録できることがわかったら、すぐに登録して体験することをお勧めします。
DeepSeek公式サイト: https://www.deepseek.com/

2.DeepSeek R1とは何ですか?

DeepSeek-R1は、中国杭州DeepSeek人工知能基礎技術研究有限公司がリリースした高性能AI推論モデルであり、OpenAIのo1公式バージョンに匹敵します。

このモデルは、大規模な強化学習技術を使用して事後トレーニングされており、ごく少量のラベル付きデータのみで、数学、コード、自然言語推論などのタスクで優れたパフォーマンスを実現できます。

DeepSeek-R1はMITライセンスに基づくオープンソースであり、モデルの蒸留と他のモデルのトレーニングをサポートします。商用にも研究用にも自由に使えます。
DeepSeek-R1の学習コストはOpenAIの1/50以下だそうです。これは本当にすごいですね! ! !

パフォーマンス指標は OpenAI-o1 モデルのものと同等であり、一部はそれを上回っています。重要なのは、オープンソースであり、ローカルPCに導入(インストール)できることです。

3.DeepSeek R1 は何ができますか?

  • 複雑なプロンプトの処理ができる
  • 問題の背後にある推論手順が明らかにされる
  • チャットインターフェースでコードをレンダリングしてテストすることができる
  • 強力な推論ができる

4.DeepSeek R1をローカルに導入する理由とその利点

DeepSeekは無料のWebバージョンとモバイルアプリバージョンを提供していますが、ローカル導入を選択すると、いくつかの重要な利点があります。

  1. プライバシー保護
  • すべてのデータはローカルコンピュータに保存されます
  • データが収集されたり、他の目的(例:学習)で使用されることを心配する必要はありません。
  • データセキュリティを完全に制御
  1. オフラインアクセス
  • ネットワーク接続に頼る必要はありません
  • 旅行や不安定なネットワークのシナリオに適しています
  • いつでもどこでも利用可能
  1. 将来の保護
  • 使用制限を回避する
  • 将来の商業化に影響されない
  • 永久に無料で使用可能
  1. 柔軟性の向上
  • モデルは必要に応じて微調整できる
  • 他のツールとの統合をサポート
  • カスタムインターフェースの構築が可能

5.Ollama+Open-WebUIを使用してDeepSeek R1をローカルに導入する詳細な手順

Ollamaは初めてDeepSeek-R1をサポートしました。モデルアドレス: deepseek-r1。
ここでは、Ollama+Open-WebUIを使用して、DeepSeek R1をデプロイする方法を紹介します。

OllamaとOpen-WebUIはとても人気で使いやすいです。Github のスターを見ればそれがわかります。

Ollamaを使用してDeepseekを管理および実行します。
Open-WebUIをOllamaに接続すると、インターフェイスを介してDeepseek R1を完全にダウンロードしてインストールできます。

Open-WebUIインターフェースでは、大規模なモデルのパラメータを調整したり、プリセットプロンプトを設定したり、ダイアログを実行したりすることができ (以下を参照)、非常に便利です。

5.1 Ollamaをインストールする

Ollamaの公式Webサイトにアクセスし、オペレーティングシステム (Windows、macOS、または Linux) に応じてインストールパッケージをダウンロードします。

5.1.1 Ollamaをダウンロードする

Ollamaの公式WebサイトのDownload画面でDownloadボタンを押す。

今回Macの環境でのインストール手順を説明しますので、macOSバージョンを選択します。

ローカルPC中の保存先を選択します。

ダウンロードが完了する場合、Browserのダウンロード履歴上にダウロードファイルが表示されます。ネットワーク環境とローカルPCのスペックによってダウンロード時間が違いますが、大体10数秒〜1分間程度ダウンロードが完了できます。

5.1.2 Ollamaをインストールする

ダウンロードが完了後、ダウンロードされた対象ファイルをクリックします。

インストールする前に、今後のため、Applicationフォルダに移動します。

移動完了後、下記のような提示がMac画面の右上に表示されます。

下記のような画面が表示されます。「Next」ボタンを押します。

下記の画面に、「Install」ボタンを押して、インストールを開始します。

途中ローカルPCの管理者の承認を求めます。

無事にインストール完了後、下記の画面が表示されます。「Finish」ボタンを押して、インストールプロセスを終了します。

注意:
Windows環境にインストールの場合、ここで注意すべき点は、通常のソフトウェアのインストールとは異なることです。インストールが完了すると、デスクトップには基本的にアイコンが表示されません。

インストール完了後、macOSとWindowsと共通の確認方法ですが、
コマンドライン ツールを使用して、インストールが成功したかどうかを確認することはできます。

もし上記のCommandline窓口はどう表示するか分からない場合、下記の手順でCommandline窓口が出せます。

5.1.3 ターミナル(Commandline窓口)の表示方法

5.1.3.1 macOSの場合

下記の手順でmacOSのターミナルを表示させます。

まず、「Application」アイコンをクリックしてください。

「その他」をクリックしてください。

「ターミナル」をクリックしてください。

5.1.3.2 Windowsの場合

5.2 Deepseek R1をローカルPCにインストールする

5.2.1 ハードウェア要件を確認する

Ollamaは初めてDeepSeek-R1をサポートしました。モデル アドレス: deepseek-r1。

グラフィックカードメモリに応じて対応するモデルを選択します。
2Gメモリグラフィックカードの場合は、1.5bモデルのみ選択できます。
したがって、ほとんどの個人ユーザーには、4 ビットのモデルを導入することをお勧めします。

5.2.1.1 ハードウェア(メモリとグラフィックカード)要件

グラフィックカードメモリ要件
7B/8B モデル: 8GB のグラフィックカードメモリ。
14B モデル: 16GB グラフィックカードメモリ。
32B モデル: 22GB のグラフィックカード メモリ。
70B モデル: 48GB グラフィックカードメモリ。

メモリ(RAM)要件
7B/8B モデル: 8GB メモリ(RAM)
14B モデル: 16GB メモリ(RAM)
32B モデル: 32GB メモリ(RAM)
70B モデル: 64GB メモリ(RAM)

5.2.1.2 ローカルPCのメモリとグラフィックカードメモリの確認方法

ここでmacOSのみ説明します。

Apple M3 Proチップになっているため、GPUとCPUは纏めて1つチップになっています。

GPUとCPUは纏めて1つチップになっているため、メモリも共有メモリになっています。

資料出典:https://ja.wikipedia.org/wiki/Apple_M3_Pro#cite_note-:2-2

5.2.2 モデルをインストール、実行する

モデルをダウンロードするにはどうすればいいですか?
deepseek を実行するにはどうすればいいですか?

モデルの実行は簡単です。必要なモデルを決定したら、対応するコマンドをターミナルにコピーして実行します。

次のコマンドを使用してDeepSeek-R1モデルをダウンロードします。
厳密言うと、下記のコマンドはモデルのダウンロード+実行となります。

DeepSeek-R1-Distill-Qwen-1.5Bの場合:
ollama run deepseek-r1:1.5b

DeepSeek-R1-Distill-Qwen-7Bの場合:
ollama run deepseek-r1:7b

DeepSeek-R1-Distill-Llama-8Bの場合:
ollama run deepseek-r1:8b

DeepSeek-R1-Distill-Qwen-14Bの場合:
ollama run deepseek-r1:14b

DeepSeek-R1-Distill-Qwen-32Bの場合:
ollama run deepseek-r1:32b

DeepSeek-R1-Distill-Llama-70Bの場合:
ollama run deepseek-r1:70b

上記のコマンドはモデルを自動的にダウンロードして読み込みます。ダウンロード時間はネットワーク速度とモデルのサイズによって異なります。

自分のmacOS端末は、前の手順に確認できた結果、M3 Proチープ(CPU+GPUと共有メモリは36GB)となっているため、今回32Bのモデルをダウンロードします。

ダウンロードが完了後、自動的にDeepSeek-R1が起動されます。

試して使った結果、複雑なPrompt(CoTとか、ToTとか)しなくても、強力な推論プロセスが自動的に実施され、いい結果ができます。

ここまではローカルPCにDeepseek R1をローカルPCにインストールできました。
上記のように実行もできました。

5.2.3 モデルを管理する

インストールされたモデルの一覧を確認する

xxxx@yyyyynoMBP dify % ollama list 
NAME                  ID              SIZE      MODIFIED     
deepseek-v3:latest    5da0e2d4a9e0    404 GB    6 hours ago     
deepseek-r1:32b       38056bbcbb2d    19 GB     25 hours ago

起動されたモデルを停止する

xxxx@yyyyynoMBP dify % ollama stop deepseek-r1:32b

起動中モデルの一覧を確認する

xxxx@yyyyynoMBP dify % ollama ps
NAME    ID    SIZE    PROCESSOR    UNTIL 
xxxx@yyyyynoMBP dify %

ollamaの他のコマンド

xxxx@yyyyynoMBP dify % ollama --help
Large language model runner

Usage:
  ollama [flags]
  ollama [command]

Available Commands:
  serve       Start ollama
  create      Create a model from a Modelfile
  show        Show information for a model
  run         Run a model
  stop        Stop a running model
  pull        Pull a model from a registry
  push        Push a model to a registry
  list        List models
  ps          List running models
  cp          Copy a model
  rm          Remove a model
  help        Help about any command

Flags:
  -h, --help      help for ollama
  -v, --version   Show version information

Use "ollama [command] --help" for more information about a command.

さて、これで、DeepSeekのローカルインストールは基本的に終了です。

使用したい場合は、コマンドラインで操作するだけです。
ただし、コマンドラインインターフェイスは見苦しく、操作もそれほど便利ではありません。

したがって、利便性を高めるには、ChatGPTのようなGUI的なインターフェースのインタラクションのためにOpen-WebUIと連携する必要もあります。

これからOpen-WebUIのインストール手順を説明します。

5.3 Open-WebUIを導入する

5.3.1 Open-WebUIをインストールする

基本OpenーWebUIのOfficial siteの記載の通りに実施すればOpenーWebUIのインストールはできますが,
https://github.com/open-webui/open-webui
1つ注意するのは、Pythonのバージョンは、3.11が必要であることです。

下記は、筆者自分のmacOSでインストールする時点のメモです。ご参考程度見ていただければと思います。

(venv) xxxx@yyyyynoMBP open-webui % python --version           
Python 3.9.6
(venv) xxxx@yyyyynoMBP open-webui % python3 --version         
Python 3.9.6
(venv) xxxx@yyyyynoMBP open-webui % pip --version             
pip 21.2.4 from /Users/xxx/venv/lib/python3.9/site-packages/pip (python 3.9)
(venv) xxxx@yyyyynoMBP open-webui % pip3 --version
pip 21.2.4 from /Users/xxx/venv/lib/python3.9/site-packages/pip (python 3.9)
(venv) xxxx@yyyyynoMBP open-webui % 
(venv) xxxx@yyyyynoMBP open-webui % 
(venv) xxxx@yyyyynoMBP open-webui % brew install python@3.11  
==> Auto-updating Homebrew...
Adjust how often this is run with HOMEBREW_AUTO_UPDATE_SECS or disable with
HOMEBREW_NO_AUTO_UPDATE. Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).
==> Auto-updated Homebrew!
Updated 2 taps (homebrew/core and homebrew/cask).
==> New Formulae
aqtinstall                     dud                            hypopg                         pgbackrest                     sdl3_image
behaviortree.cpp               evil-helix                     lazysql                        pgrx                           text-embeddings-inference
catgirl                        gdtoolkit                      libcdio-paranoia               postgresql-hll
cloud-provider-kind            gnome-builder                  martin                         scryer-prolog
==> New Casks
chatwise                                           cherry-studio                                      vernier-spectral-analysis

You have 3 outdated formulae installed.

Warning: python@3.11 3.11.11 is already installed and up-to-date.
To reinstall 3.11.11, run:
  brew reinstall python@3.11
(venv) xxxx@yyyyynoMBP open-webui %
(venv) xxxx@yyyyynoMBP open-webui % pip install open-webui 
ERROR: Could not find a version that satisfies the requirement open-webui (from versions: none)
ERROR: No matching distribution found for open-webui
WARNING: You are using pip version 21.2.4; however, version 25.0 is available.
You should consider upgrading via the '/Users/xxx/venv/bin/python3 -m pip install --upgrade pip' command.
(venv) xxxx@yyyyynoMBP open-webui %
(venv) xxxx@yyyyynoMBP open-webui % pip3.11 install open-webui
Requirement already satisfied: open-webui in /opt/homebrew/lib/python3.11/site-packages (0.5.7)
Requirement already satisfied: aiocache in /opt/homebrew/lib/python3.11/site-packages (from open-webui) (0.12.3)
Requirement already satisfied: aiofiles in /opt/homebrew/lib/python3.11/site-packages (from open-webui) (24.1.0)
Requirement already satisfied: aiohttp==3.11.8 in /opt/homebrew/lib/python3.11/site-packages (from open-webui) (3.11.8)
...
...
Requirement already satisfied: gitdb<5,>=4.0.1 in /opt/homebrew/lib/python3.11/site-packages (from gitpython->git-python->colbert-ai==0.2.21->open-webui) (4.0.12)
Requirement already satisfied: smmap<6,>=3.0.1 in /opt/homebrew/lib/python3.11/site-packages (from gitdb<5,>=4.0.1->gitpython->git-python->colbert-ai==0.2.21->open-webui) (5.0.2)

[notice] A new release of pip is available: 24.3.1 -> 25.0
[notice] To update, run: python3.11 -m pip install --upgrade pip
(venv) xxxx@yyyyynoMBP open-webui %
(venv) xxxx@yyyyynoMBP open-webui %
(venv) xxxx@yyyyynoMBP open-webui %
(venv) xxxx@yyyyynoMBP open-webui % open-webui --help   
                                                                                                                                                         
 Usage: open-webui [OPTIONS] COMMAND [ARGS]...                                                                                                           
                                                                                                                                                         
╭─ Options ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --install-completion          Install completion for the current shell.                                                                               │
│ --show-completion             Show completion for the current shell, to copy it or customize the installation.                                        │
│ --help                        Show this message and exit.                                                                                             │
╰───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Commands ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ main                                                                                                                                                  │
│ serve                                                                                                                                                 │
│ dev                                                                                                                                                   │
╰───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

(venv) xxxx@yyyyynoMBP open-webui % 

5.3.2 Open-WebUIを起動する


(venv) xxxx@yyyyynoMBP open-webui % open-webui serve          
Loading WEBUI_SECRET_KEY from file, not provided as an environment variable.
Loading WEBUI_SECRET_KEY from /Users/tomcat-zhou/open-webui/.webui_secret_key
/opt/homebrew/lib/python3.11/site-packages/open_webui
/opt/homebrew/lib/python3.11/site-packages
/opt/homebrew/lib/python3.11
Running migrations
INFO  [alembic.runtime.migration] Context impl SQLiteImpl.
INFO  [alembic.runtime.migration] Will assume non-transactional DDL.
INFO  [open_webui.env] 'ENABLE_SIGNUP' loaded from the latest database entry
INFO  [open_webui.env] 'DEFAULT_LOCALE' loaded from the latest database entry
INFO  [open_webui.env] 'DEFAULT_PROMPT_SUGGESTIONS' loaded from the latest database entry
WARNI [open_webui.env] 

WARNING: CORS_ALLOW_ORIGIN IS SET TO '*' - NOT RECOMMENDED FOR PRODUCTION DEPLOYMENTS.

INFO  [open_webui.env] Embedding model set: sentence-transformers/all-MiniLM-L6-v2
/opt/homebrew/lib/python3.11/site-packages/pydub/utils.py:170: RuntimeWarning: Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work
  warn("Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work", RuntimeWarning)
WARNI [langchain_community.utils.user_agent] USER_AGENT environment variable not set, consider setting it to identify your requests.

  ___                    __        __   _     _   _ ___
 / _ \ _ __   ___ _ __   \ \      / /__| |__ | | | |_ _|
| | | | '_ \ / _ \ '_ \   \ \ /\ / / _ \ '_ \| | | || |
| |_| | |_) |  __/ | | |   \ V  V /  __/ |_) | |_| || |
 \___/| .__/ \___|_| |_|    \_/\_/ \___|_.__/ \___/|___|
      |_|


v0.5.7 - building the best open-source AI user interface.

https://github.com/open-webui/open-webui

Fetching 30 files: 100%|██████████████████████████████████████████████████████████████████████████████████████████████| 30/30 [00:00<00:00, 97769.32it/s]
INFO:     Started server process [59779]
INFO:     Waiting for application startup.
INFO:     Application startup complete.
INFO:     Uvicorn running on http://0.0.0.0:8080 (Press CTRL+C to quit)
INFO:     ('127.0.0.1', 61119) - "WebSocket /ws/socket.io/?EIO=4&transport=websocket" [accepted]
INFO:     connection open

この画面が表示できましたら、Open-WebUIが無事に起動できたと分かります。

5.3.3 Open-WebUIを使用する

これからブラウザを起動して、http://localhost:8080でOpen-WebUIを使えます。
初回には、ユーザーを登録必要です。

ユーザー登録できたら、使用開始できます。

以上で、Ollama + Open-WebUI を使用して DeepSeek R1をローカルPCにインストールする手順を紹介しました。

Discussion