量子化を始め、LLMを軽量にすることで、パソコンでも動くようになってきたようで、一度試しておこうかなと思います。
Ollama、LM Studioなどが使えそうかなということで、まずは、LM Studioから試してみようと思います。
LM Studioのダウンロードページに行くと、アクセスしているブラウザ情報から導入するLM Studioのタイプが選択されていました。

(1) ダウンロードしたDMGファイル(LM-Studio-0.3.32-2-arm64.dmg)を開くと、アプリケーションフォルダにドラッグ&ドロップするように案内されるので、その通りにコピーします。

(2) アプリケーションフォルダにコピーされた、「LM Studio」のアイコンをダブルクリックして開きます。Get Startedをクリックします。

(3) Choose your level という画面が表示され、レベルの設定を行います。スタート地点ですので、「User」を選択して、Continureをクリックします。


(4) モデルのダウンロード画面になります。OpenAI社のgpt-oss-20bがセットされていました。12GBもありますが、「Download gpt-oss-20b」をクリックしてダウンロードします。
※MacのSSDの空き容量などは注意しましょう。


しばらくダウンロードに時間を要します。その間、ブルーのリンクをクリックすると、下のような画面になり、LM Studioの操作を続けることができました。

(5) ダウンロードが完了すると、右下にメッセージが表示されお知らせしてくれます。「Load Model」をクリックして、gpt-oss-20bをメモリに読み込みます。

LM Studioの画面の右下に、メモリ消費量とCPU使用率が表示されます。モデルの読み込みで、メモリはどんどん消費して行きます。CPUはそこまで使用率は上がることはない印象です。

モデルの読み込みが完了すると、メモリは、11.66GB消費していることがわかりました。使っているMacBook Air (M2)は24GBのメモリを搭載していますので、他のアプリケーションなども同時に使うことができそうです。

(6) LM Studioは、よくあるチャット形式のユーザーインターフェースとなっています。Send a message to the model… の欄に、プロンプトを入力して送信すると、応答が返ってきました。
※応答の左下のストップウォッチアイコンにマウスを合わせると、25.49 tok/sec 60 tokens 26.37s to first token と表示され、最初に応答が表示されるまでに、約26秒少し時間がかかったことがわかります。
結構待ち時間がかかるな、という印象ですが、高価なGPUもクラウド利用料も、SaaS料金もかからずローカル環境で、LLMが使えていることを考えると、すごいなと正直思います。

(7) 次に、アップロードしたファイルを参照して応答する「File Attachments and RAG」を試してみました。かなり時間がかかるのではないか?と思い、どのくらい時間がかかるのだろうかと、スクリーンキャプチャしながら試しました。
※19.50 tok/sec 453 tokens 47.00s to first token と表示されました。
前の簡単な挨拶ではなく、ファイルを読み込み理解する(ベクター化してモデルが参照できるようにする)時間がかかりますが、感覚的には思ったほどではなかったです。応答も表形式で表現するなど特に指示はしてないものの気の利いた応答になっていると関心しました。
※出始めのChatGPT 3.5などでは、プロンプトで出力を指示する必要もありました。
メモリを大量に積んだ、Mac miniなどは、ローカル環境でのLLMサーバとして活躍できそうな印象を受けました。LM Studioの機能として、CLIアクセスやMCPサーバとの連携などもありそうなので、この辺り、深掘りしていこうと思います。