ローカルLLMを動かしてみた。やっぱりAIも適材適所だった
前回の記事では、生成AIを仕事で使うときのセキュリティーが気になり、
「それなら、自分のパソコンの中でAIを動かせばいいのでは?」
と考えたことを書きました。(リンク)
さらに、
「パソコンの中の作業までAIに任せられたら面白い。」
とも考えていました。
そこで、まずはローカルLLMを実際に動かしてみることにしました。
ただし今回は、ファイルを移動したり、プログラムを実行したりといったPC操作までは試していません。
第1段階として、ローカルLLM単体でどのくらい会話ができるのか。
まず、そこを見てみることにしました。
4年目のノートパソコンで動かしてみる
今回使ったのは、4年ほど使っている普通のノートパソコンです。
ASUS X545FA-BQ227T。
メモリは16GB。
AI処理用の高性能なGPUを搭載したパソコンではありません。
そこへ llama.cpp というソフトを入れ、約30億パラメーター規模の小型モデルを動かしてみました。
モデルは Ministral-3-3B-Instruct-2512 です。
もちろん、ChatGPTやGemini、Claudeで使われている大規模なモデルとは規模も実行環境も違います。
ですから、今回の記事は、
「ローカルLLMはこうだ。」
という評価ではありません。
あくまで、
「今回選んだ小型モデルを、手元の古いノートパソコンで動かしてみたらどうだったか。」
という実践記録です。
おお、ちゃんと動いた
設定を終えて質問を入れると、ちゃんと文章が返ってきました。
最初は、
「おお、動いた。」
と、ちょっと感動しました(笑)。
規模も性能も違いますが、文章を受け取り、それに応じた回答を生成するLLMが、自分のノートパソコンの中だけで動いている。
これはなかなか面白いものです。
そこで、普段ChatGPTなどでやっているような質問をいくつか入れてみることにしました。
……遅い(笑)
ところが、実際に使い始めると、すぐに気になることが出てきました。
とにかく遅い。
今回の環境では、文章を作る速さがおおよそ毎秒5〜6トークン程度でした。
厳密なベンチマークではありません。
ただ、普段ChatGPTやGemini、Claudeを使っている感覚からすると、
「まだかな。」
となります。
ようやく回答が返ってくる。
読んでみる。
そして、
「うーん。」
となる(笑)。
質問には答えています。
日本語もある程度自然です。
まったく使えないわけではありません。
ただ、普段使っているクラウドの生成AIと比べると、こちらの意図をくみ取ったり、少し踏み込んで考えたりするところに物足りなさを感じました。
特に差を感じたのは、私が普段よくやっている壁打ちです。
「違います。言いたいのはそこではありません。」
「もう少し、この視点で考えてください。」
と修正しながら話を進める。
クラウドの生成AIなら、このやり取りを何度も繰り返せます。
ところが、ローカルLLMでは一回一回の返事に時間がかかる。
しかも、修正後の回答も、
「そこまで変わらないな。」
と感じることがありました。
これなら、自分でやった方が速い
しばらく使っていて、率直に思ったことがあります。
「これなら、自分でやった方が速いやん。」
です(笑)。
AIを使う目的は、AIを使うことではありません。
自分でやるより速い。
自分では思いつかない視点が得られる。
面倒な作業を代わりにやってくれる。
そこに価値があるから使います。
ところが、
質問する。
待つ。
回答を読む。
修正を頼む。
また待つ。
となると、その間に自分で考えた方が速い。
少なくとも、私が普段やっている壁打ち相手としては、今回のモデルとパソコンの組み合わせでは厳しいと感じました。
今回の組み合わせを、あえて人に例えるなら、
「知識はあるけれど、まだこちらの背景までは十分にくみ取れない新入社員」
くらいの印象でした。
もちろん、もっと大きなモデルや高性能なパソコンを使えば、結果は変わるでしょう。
でも、今回はそこまでして高性能な環境を作ることが目的ではありません。
手元にあるパソコンで、どこまで使えるのかを試したかったのです。
ローカルだからこその価値は残る
だからといって、
「ローカルLLMは使えない。」
という結論でもありません。
前回の記事で考えたように、ローカルで処理できること自体に意味がある場合があります。
例えば、外部の生成AIサービスへ送りたくない情報を、会社のルールや安全なシステム構成の範囲内で処理したい場合です。
クラウドAIより多少遅くても、
「外へ送らずに処理できること」
そのものに価値があれば、評価は変わります。
ただし今回の実験では、仕事の機密情報は使っていません。
個人の実験用パソコンで、一般的な質問を使って試しています。
ローカルだから何を入れても安全、という話ではありません。
遅くても、人が待たなければいい
もう一つ思ったことがあります。
遅さが問題になるのは、私がパソコンの前で回答を待っているからです。
だったら、人間が待たなくてよい仕事ならどうでしょう。
例えば夜に処理を始めて、
パソコンが夜中にゆっくり仕事をする。
朝になったら結果だけ確認する。
それなら、毎秒5〜6トークンでも、あまり気にならないかもしれません。
例えば、大量の文章を分類するような処理。
決められた観点で文章を確認する処理。
時間をかけてもよい下書きを作る処理。
そんな用途も考えられます。
もちろん、本当に使えるかどうかは、速度だけでなく結果の正確さも試す必要があります。
さらに、ローカルLLMを入れただけで勝手に一晩働いてくれるわけではありません。
文書を順番に読み込ませ、結果を保存するプログラムや、LLMとPCをつなぐ仕組みが別に必要です。
そこまで作れば、
「遅いけれど、寝ている間に働いてくれるAI」
にはできるかもしれません。
ただ、今の私には、
パソコンを一晩動かしてまで任せたい仕事が、それほどありません(笑)。
だったら、無理に使う必要もない。
結局、やっぱり適材適所だった
ここまで考えて、以前の記事で整理したことに戻ってきました。(リンク)
ルールで処理できる仕事は、従来のITやプログラム。
生成AIが得意な仕事は、生成AI。
最後に確認し、判断するのは人。
ローカルLLMを試してみても、結局は同じでした。
ブログの記事について壁打ちするなら、今の私にはChatGPTなどのクラウドAIの方が使いやすい。
WordPressへ決められた情報を入力するなら、APIやPythonの方が向いている。
外部へ出したくない情報を処理する必要があり、多少時間がかかってもよいなら、ローカルLLMが候補になるかもしれない。
全部を一つのAIに任せる必要はありません。
今回分かったのは、
「ローカルLLMが使えるか、使えないか。」
ではありません。
今回の環境で、何に使えそうで、何には向いていないのかが少し見えてきた。
ということです。
AIも、その時点の実力と仕事に合わせて使えばいい。
自分のパソコンで実際に動かしてみて、ようやくそれを実感しました。