SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

LM Studio×AnythingLLMで構築する「ハイブリッドAI」活用術

LM StudioでローカルLLMを起動し、マシン性能と設定の「リアル」を検証する

LM Studio×AnythingLLMで構築する「ハイブリッドAI」活用術 第2回

その他の制限と機能

 これはローカルLLM特有の考え方ではありませんが、自分で設定できるため、仕組みをイメージしやすい項目もあります。

コンテキスト長

 モデルをロードする際に、「コンテキスト長」を図10のように指定できます。

図10:各チャットでのコンテキスト長の制限
図10:各チャットでのコンテキスト長の制限

 コンテキスト長は、ユーザーの入力、過去の会話、モデルの出力など、1回の推論で扱えるトークン数の上限と考えると分かりやすいでしょう。

 実際のチャットでは、図11のように現状を確認できます。

図11:現在のチャットでのコンテキスト長の状況
図11:現在のチャットでのコンテキスト長の状況

 コンテキスト長が大きいほど、1つのチャットでより長くやり取りを続けられます。

 ただし、やりとりが続けば続くほど、このコンテキストは大きくなり、利用するメモリも増えていきます。

 また、このコンテキスト量を超えると、エラーになって会話を続けられないか、以前の内容が忘れられていくことになります。

 コンテキスト長を超えたときの挙動は、エラーになる場合と、古い会話を削って処理を続ける場合があります。そのため、以前伝えた内容が考慮されていないときは、プロンプトやハルシネーションだけでなく、コンテキスト長を超えていないかも確認する必要があります。

キャッシュ機能

 AIでは、過去のプロンプトや出力結果も、次の推論に必要な入力として扱われます。つまり、会話が続けば、過去のやり取りを含んだ長い入力が次の推論でもモデルに渡されることになります。

 先ほど、TTFTが長くなることについて説明しました。もしこの長い入力を毎回すべて処理し直すのであれば、会話が長くなるほどTTFTも増えてしまいます。これでは、AIを実用的に利用するうえで大きな問題になります。

 しかし、実際には、新たに入力した内容だけの時間に見えます。実は、これは内部でキャッシュ機能が効いているためです。

 そのため、別のチャットであっても、LM Studioであまり間隔を置かず、まったく同じプロンプトを投げるとすぐに出力が始まります。

 実はLM Studioでは細かく制御できないので、本稿では説明しませんが、プロンプトキャッシュという機能をより高度に使えば、最初に時間がかかっても次回以降はその処理をスキップできるようになるのです。

 プロンプトキャッシュを有効活用するには、指示文や固定テキストなどの「共通する情報」を前段に置き、日時やユーザーの入力内容などの「可変の情報」を後段に配置するのがコツです。

 GGUFモデルでは、「Unified KV Cache」を利用できる場合があります。これは、複数のリクエストが持つKVキャッシュを共有し、共通部分のメモリ使用量を抑えるための機能です。ただし、すべての処理で効果が出るわけではありません。

 イメージとしては、複数人がそれぞれ独立したメモリキャッシュを持つのではなく、共通して利用できるキャッシュを共有する機能と考えるとよいでしょう。

 例えば、共通したプロンプトで並列処理を動かしている場合などキャッシュが使える場合、全体のメモリの節約が可能です。

 MLXの場合にはこの指定がないのは、そのような判断も含めてMac側の最適化メモリ機能を使えるため、この指定がありません。

 これ以外にもキャッシュ量子化というものもあり、これは、前回のモデルの量子化でも簡単に説明しましたが、キャッシュサイズを小さくするためのものというイメージも持てば問題ありません。

なぜ「MLX」が有利なのか

 モデルの選択の際にも触れましたが、Apple Silicon環境(Mac Studioなど)でLM Studioを使用する場合、選択肢があればGGUF形式よりも「MLX」形式のモデルを選択するのがおすすめです。

 実際に利用してみると、単に「Apple公式だから」だけではない、明らかなメリットを実感できます。

Metal APIの使用が前提となっている

 MLXはAppleが開発したApple Silicon専用のフレームワークであり、グラフィック/計算処理用APIである「Metal API」を直接活かす構造になっています。汎用的なグラフィック処理の変換層を挟まないため、ハードウェアの描画・計算性能を無駄なく引き出すことができます。

Apple Siliconのユニファイドメモリ管理による「速度と設定の楽さ」

 GGUFモデルの場合、モデルをロードする際に「GPUにどれだけ処理をオフロード(移送)するか」といったパラメータ調整が必要になるケースがあります。しかしMLXでは、CPUとGPUが同じメモリ空間を共有する「ユニファイドメモリ」構造に最適化されています。そのため、複雑なメモリ割り当ての設定に悩むことなく、快適な応答速度(TTFTの短縮や生成トークン数の向上)が得られます。

GPUやNPUの潜在性能を限界まで引き出せる

 Windows環境(Snapdragonなど)では「チップにGPUやNPUが搭載されていても、LLMエンジン側が対応しておらずCPU処理に落ちてしまう」という問題が発生していました。一方、Mac上のMLX環境であれば、OSとアーキテクチャに深く統合されているため、搭載されているGPUやNeural Engine(NPU)の性能を最初からフル活用した推論が行われます。

 このように、ハードウェアが持つポテンシャルを「複雑な設定を行わずに引き出せること」が、Apple Silicon上でMLXを利用する大きなメリットと言えるでしょう。

次のページ
OpenAIやGeminiなどのAIベンダーAPIとの違い

この記事は参考になりましたか?

LM Studio×AnythingLLMで構築する「ハイブリッドAI」活用術連載記事一覧
この記事の著者

WINGSプロジェクト 小林 昌弘(コバヤシ マサヒロ)

< WINGSプロジェクト について> 有限会社 WINGSプロジェクト が運営する、テクニカル執筆コミュニティ(代表 ...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

山田 祥寛(ヤマダ ヨシヒロ)

静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるLaravel実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/29739 2026/09/29 09:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー