無知からOllamaをWSLとVScodeで動かしてみた
o
Ollama is 何

ollama/ollama: Get up and running with Llama 3.3, Phi 4, Gemma 2, and other large language models.
Get up and running with large language models.
大規模な言語モデルを立ち上げて実行する
とあるように、ローカルで LLM を動かすためのアプリケーションです。
Llama というのがありますが、そっちは LLM です。
インストール
今回は WSL 上で動かしたいので Linux ルートでインストールします
ollama/docs/linux.md at main · ollama/ollama

curl -fsSL https://ollama.com/install.sh | sh
インストールしたらバージョンを確認して大丈夫そうなのを確認します。
ollama -v
WSL のスタートアップに登録する
Adding Ollama as a startup service (recommended)
ドキュメントにこうあるので、スタートアップに登録してたほうがやりやすいと思います。
sudo useradd -r -s /bin/false -U -m -d /usr/share/ollama ollama
sudo usermod -a -G ollama $(whoami)
今回やったら、すでに入ってたのか useradd で exists~ と出たのですが、問題なく usermod は実行できました。
したらば、/etc/systemd/system/ollama.service を確認します。
[Unit]
Description=Ollama Service
After=network-online.target
[Service]
ExecStart=/usr/local/bin/ollama serve
User=ollama
Group=ollama
Restart=always
RestartSec=3
Environment="PATH=$PATH"
[Install]
WantedBy=default.target
みたいになってたら OK だと思います。
今回は Environment の部分が長ったらしかったのでドキュメントを参考にして "PATH=$PATH" に設定しました。
そうしたら、設定を反映させて、自動起動をオンにします。
sudo systemctl daemon-reload
sudo systemctl enable ollama
さわってみよう
Ollama の LLM リストがあるのでここから LLM を選んでみましょう。
今回はナウい LLM ってことで Deepseek r1 を触ってみます。
ollama run deepseek-r1
ダウンロードが終わると、入力を求められます

おお~喋ってくれた、けど中国語だ~
とまあターミナルごしで使うのはなんか感触が違うので、エディタで触れるようにします。
VScode から Ollama を触る
VScode 系のエディタ (VScode、Cursor、Windsurf など) で Continue という拡張機能を使うことで Ollama をいじることができます。
continue は Claude を使うために導入してあるので、add chat model を選択します。

するとモーダルが出てきます。

Provider から Ollama を選びます。

これでコネクトして、適当にプロンプトを打ちます。

反応しました、たぶん大丈夫そうです。

一応確認したら DeepseekR1 って答えたのでとりあえずよしとします。

ちなみに Roo Code(Cline) でも似たような感じで設定ができます。

でかければ良いものではない
というわけで、容量はたくさんあるのでとりあえず 42GB もある 70b モデルを選択しました。
500 model requires more system memory (32.7 GiB) than is available (6.4 GiB)

はい、でかいモデルを使いたい場合は気をつけましょう。
色々触ってみて結局、8b を使うことにしました。
日本語に対応できるようにチューニング
出力は英語だったり中国語だったりと不安定なのでシステムプロンプト的なのを弄ります。
まずは適当なディレクトリで Modelfile を出力します。
ollama show --modelfile deepseek-r1 > Modelfile
Modelfile の中身を弄ります。
FROM /usr/share/ollama/.ollama/models/blobs/~ となっているところを削除し、下記のように設定します。
FROM deepseek-r1:8b
SYSTEM """You are an AI assistant that speaks Japanese. All conversations must be conducted in Japanese. **You must always think in Japanese and reply in Japanese.**"""
ちなみにここは英語で書く必要があるので DeepL でよしなにしました。

チューニングしたら Ollama に適用します。
適用したら確認のため list で適用したモデルがあるかどうか確認しましょう。
ollama create ds-r1-jp -f ./Modelfile
ollama list
では早速日本語を試してみます。
ollama run ds-r1-jp

こんにちは、あなたにお年賀しろ、どうぞ。
だそうです。本当にプロンプト聞いてるんか?

うーん、まあヨシ?
で Roo Cline で動かすとめちゃくちゃ英語を話します、たぶん Think の中身を引っ張ってきてますね

ちなみにコードは俯瞰せず、JS のプロジェクトなのに Python を書き始めました。
そして何やらエラーを吐きはじめました

Roo Code は、複雑なプロンプトと反復的なタスク実行を使用します。最良の結果を得るためには、高度なエージェントコーディング機能を持つクロード 3.5 ソネットの使用をお勧めします。
だそうです。
おわりに
無事?Ollama で Deepseek を動かすことができましたが、
モデルの関係なのか、どうもうまく動かすことができませんでした…
70b を動かせれば違うのかもしれませんが、ちょっとそこまでのスペックはないので一回諦めます。
たぶん、エディタで使うなら普通に Claude とか使ったほうが良い気がしました。