1.DeepSeek R1のローカル実行
遅まきながら、下記の資料「Run DeepSeek-R1 on Your Laptop with Ollama」を参考に、DeepSeek R1のローカル実行などを試してみました。実行環境は、Windows 11です。
(1)Ollmaのインストール
下記サイトより、ollamaのインストーラをダウンロードし、実行します。
ollamaは、スタンドアローンで様々なLLMを実行できるOSSです。
ライセンスはMIT Licenseになります。
インストールが完了したら、ターミナルを開き、下記のバージョン確認のコマンドを実行することで、インストール確認とします。
PS C:\tmp> Ollama -v
ollama version is 0.5.7
(2)モデルをダウンロード
DeepSeek-R1の場合、1.5b、7b、8b、14b、32b、70b、671bのパラメータ数のモデルが使用できます。1.5bは、パラメータ数が1.5 billion、すなわち15億になります。また、様々な蒸留モデルを利用できます。詳細は、下記の記事を参照してください。
7bを使用する場合、ダウンロードコマンドは下記になります。
ollama pull deepseek-r1:7b
実行結果は、下記のようになります。
(3)モデルを実行
下記のコマンドでモデルが起動し、チャットが利用できます。
ollama run deepseek-r1:7b
なお、APIサーバのホストは"localhost:11434"となります。
2.Cursorとの接続
下記の資料を元に、ローカルで動作するDeepSeek R1とCursorを接続してみます。
cursorから、localhost上のAIサーバに直接アクセスできないようなので、ngrokを使用します。ngrokは、ローカルに起動したサーバを外部公開するためのfornt doorの機能を提供しています。
(1)ngrokの準備
① ngrokにアカウントを作る
② エージェントツール(ngrok.exe)をダウンロードして、PATHが通った場所に配置する。
③ "ngrok config add-authtoken"コマンドで、AUTHTOKENを設定する。
(2)環境変数OLLAMA_ORIGINSを設定
環境変数OLLAMA_ORIGINSに*を設定します。
(3)Ollamaのサーバを再起動
タスクバーのインジケータの中に隠されているアイコンを右クリックし"Quit Ollma"を押下し終了します。
(3)モデルを実行
下記のコマンドで、モデルを起動します。
ollama run deepseek-r1:7b
(4)ngrokの実行
別のターミナルを開き、下記のコマンドでollamaの外部公開を行います。
ngrok http 11434 --host-header="localhost:11434"
実行すると下記のような画面になります。
Forwardingで表示されているもの(513e-118-106-20-71.ngrok-free.app)を使用します。
この値はngrokコマンド実行するたびに、毎回変わります。
(5)[cursorの設定] モデルの登録
Cursor Setting -> Modelsで、起動しているモデル名を登録します。
今回の場合、"deepseek-r1:7b"になります。
(5)[cursorの設定] OpenAI Keyを設定
下記を設定し、有効にします。
なお、Verifyは失敗するけど気にしないでください。
項目 | 設定値 | 備考 |
---|---|---|
Override OpenAI Base URL | https://513e-118-106-20-71.ngrok-free.app/v1 | ngrokでForwardingされたURLに"/v1"を付け加えます |
OpenAI Key | ollama |
(6)モデルを選択して、AIと対話
モデルに"deepseek-r1:7b"を指定することで対話可能です。
ただ、私の環境だと、応答時間が遅く、ちょっと実用的ではありませんでした。
ローカル起動しているDeepSeek R1に直接チャットすると、すぐにレスポンスがあるので、
Cursor ⇔ ngrokのForwarding先 ⇔ ngrokのエージェント ⇔ ローカルのDeep Seek R1
と通信が走るので、その間にボトルネックがありそうです。
(ひょっとしたら、ngrokを優勝にグレードアップしたら解決するかも)
2025.01.30 山崎作成