# LM Studioのテスト

『LM Studioのテスト』では、LLM(大規模言語モデル (Large Language Model))をローカルネットワーク環境(PCなどで)で実行するアプリのテストです。macOS環境でテストしています。

アプリケーション [***LM Studio*** ](https://lmstudio.ai "LM Studio Site")をテストしています。

# 概要

『LM Studioのテスト』関係の概要関係を記述しています。

# 概要

##### LM StudioのローカルLLM

一般的なLLM(大規模言語モデル)サービスは、インターネット経由で接続することでチャット生成やコード生成などの機能を提供しています。今回紹介する「LM Studio」はインターネットに接続しなくても(アプリのインストールとかAIモデルのダウンロードなどの動作環境構築には必要)ローカルのPC環境でローカルでLLMを実行するためのアプリケーションです。従って、セキュリティを気にしているとか、自社のノウハウなどを外部サーバーへデータを送信せずにLLMを利用したい用途などに便利です。また「LM Studio」は複数のモデルを切り替えながら使用できます。

この記事では「LM Studio」の導入の初歩として「LM Studio」の導入手順と基本的な使い方について解説します。

- **概要** (このぺージ)
- [インストール](https://book.a10-objects.jp/books/lm-studio/chapter/9fc3d "インストール")
- [導入テスト](https://book.a10-objects.jp/books/lm-studio/chapter/00411 "導入テスト")
- [API-テスト](https://book.a10-objects.jp/books/lm-studio/chapter/api "API-テスト")
- [LM Lin](https://book.a10-objects.jp/books/lm-studio/chapter/lm-link "LM Link")k
- [外部サービス連携(MCP)](https://book.a10-objects.jp/books/lm-studio/chapter/mcp "外部サービス連携(MCP)")

##### ライセンス体系

「LM Studio」を使用する上での気になるライセンスはどうなっているのか?

最新のライセンスは「LM Studio」の[サイト(https://lmstudio.ai/blog/free-for-work)](https://lmstudio.ai/blog/free-for-work "サイト")をご確認ください。ここでは、簡単に説明します。

<table border="1" id="bkmrk-community-team-enter" style="border-collapse: collapse; width: 100%;"><colgroup><col style="width: 19.166667%;"></col><col style="width: 15.714286%;"></col><col style="width: 65%;"></col></colgroup><tbody><tr><td>無料</td><td>個人・企業</td><td>当初は個人は無料でしたが企業も無料に変更されている。</td></tr><tr><td>有料(問い合わせ)</td><td>企業</td><td>TeamsとEnterpriseが有るようだが、詳しくは不明である。</td></tr></tbody></table>

##### <span style="color: #222222;"><span style="caret-color: rgb(34, 34, 34); font-size: 19.6px;">運用コスト</span></span>  


「LM Studio」を運用する費用はアプリをローカル環境で使用する場合には発生しません。特別に有料ライセンスを購入すればもっと多くの情報へアクセス出来る様ですが、個人もしくは自社内で利用する事に関しての追加コストは発生しないようです。

運用コストとしては、非力なPCでは無理が有ります。例えば、8GBメモリで128GB SSDでは、小規模モデルであれば動作しますが、快適に利用するのは難しいでしょう。今回はMacBookPro 14インチ(M1-32GBRAM)でテストしました、使用するAIモデルによっては無理が有りそうです。macOSでは無く、Windows/Linux系だとGPUにも左右されるので何処まで「LM Studio」を使用するかによってPC/GPUのスペックを考慮する必要が有ります。

##### 他のローカルLLM

「LM Studio」をテストした後に他のローカルLLMを調べました。以下以外にも沢山のローカルLLM対応が有ります。

<table border="1" id="bkmrk-%E5%90%8D%E7%A7%B0-url-%E6%A6%82%E8%A6%81-lm-studio-" style="border-collapse: collapse; width: 100%; height: 414px;"><colgroup><col style="width: 22.02381%;"></col><col style="width: 24.52381%;"></col><col style="width: 53.333333%;"></col></colgroup><thead><tr style="height: 29px;"><td style="height: 29px;">名称</td><td style="height: 29px;">URL</td><td style="height: 29px;">概要</td></tr></thead><tbody><tr style="height: 35px;"><td style="height: 35px;">LM Studio</td><td style="height: 35px;">[https://lmstudio.ai](https://lmstudio.ai)</td><td style="height: 35px;">Element Labs, Inc.</td></tr><tr style="height: 57px;"><td style="height: 57px;">Llama 4</td><td style="height: 57px;">[https://www.llama.com/models/llama-4/](https://www.llama.com/models/llama-4/)</td><td style="height: 57px;">2025年4月、Meta社、マルチモーダル機能と言うテキスト/画像/動画を処理</td></tr><tr style="height: 35px;"><td style="height: 35px;">Mistral AI</td><td style="height: 35px;">[https://mistral.ai](https://mistral.ai)</td><td style="height: 35px;">2023年、オープンソース型、複数のAIモデルを組み合わせて処理</td></tr><tr style="height: 35px;"><td style="height: 35px;">Qwen 3</td><td style="height: 35px;">[https://qwen.ai/home](https://qwen.ai/home)</td><td style="height: 35px;">2025年、アリババクラウド、オープンソース</td></tr><tr style="height: 79px;"><td style="height: 79px;">Gemma 4</td><td style="height: 79px;">[https://ai.google.dev/gemma/docs/core/model\_card\_4?hl=ja](https://ai.google.dev/gemma/docs/core/model_card_4?hl=ja)</td><td style="height: 79px;">2024年、Google DeepMind社、AIオープン化戦略の一環で提供</td></tr><tr style="height: 35px;"><td style="height: 35px;">DeepSeek</td><td style="height: 35px;">[https://www.deepseek.com](https://www.deepseek.com)</td><td style="height: 35px;">2024年、DeepSeek社</td></tr><tr style="height: 35px;"><td style="height: 35px;">GPT-OSS</td><td style="height: 35px;">[オープンモデル (gpt-oss)](https://help.openai.com/ja-jp/collections/14446186-open-models-gpt-oss)</td><td style="height: 35px;">2025年8月、OpenAI社、オープンソースGPT系</td></tr><tr style="height: 45px;"><td style="height: 45px;">Phi-4</td><td style="height: 45px;">[https://azure.microsoft.com/ja-jp/products/phi](https://azure.microsoft.com/ja-jp/products/phi)</td><td style="height: 45px;">Microsoft社、小型言語モデル</td></tr><tr style="height: 29px;"><td style="height: 29px;">TinyLlama</td><td style="height: 29px;">[https://github.com/jzhang38/TinyLlama](https://github.com/jzhang38/TinyLlama)</td><td style="height: 29px;">2024年1月、オープンソース（Apache 2.0）、エッジデバイス活用</td></tr></tbody></table>

##### <span style="color: rgb(224, 62, 45);">注意事項</span>

「LM Studio」をインストールするには、予めSSDの空きを確保してください。PCのRAMも重要です。可能な限り多い方が良さそうです。

AIモデルは1つ当たり、数GBから50GBを越える物まで有ります。2-3個のモデルをダウンロードし、アプリと合わせて50GBのSSDを消費したとかなります。

# インストール

｢LM Studioのテスト｣関係のインストール関係を記述しています。

# インストール環境

##### テスト環境

今回は以下のバージョンと環境でテストしました。

<table border="1" id="bkmrk-macbookpro-14%E3%82%A4%E3%83%B3%E3%83%81-cpu" style="border-collapse: collapse; width: 100%; height: 551px;"><colgroup><col style="width: 22.5%;"></col><col style="width: 77.5%;"></col></colgroup><tbody><tr style="height: 29px;"><td style="height: 29px;">LM Studio</td><td style="height: 29px;">バージョン0.4.9+1 (0.4.9+1)</td></tr><tr style="height: 29px;"><td style="height: 29px;">  
</td><td style="height: 29px;">2026-04-12 からはUpdate: バージョン0.4.11+1 (0.4.11+1)</td></tr><tr style="height: 29px;"><td style="height: 29px;">  
</td><td style="height: 29px;">  
</td></tr><tr style="height: 29px;"><td style="height: 29px;">MacBookPro 14 inch</td><td style="height: 29px;">CPU: Apple Silicon M1 Max</td></tr><tr style="height: 29px;"><td style="height: 29px;">  
</td><td style="height: 29px;">RAM: 32 GB</td></tr><tr style="height: 29px;"><td style="height: 29px;">  
</td><td style="height: 29px;">SSD: 1 TB</td></tr><tr style="height: 29px;"><td style="height: 29px;">  
</td><td style="height: 29px;">macOS: Tahoe 26.4</td></tr><tr style="height: 29px;"><td style="height: 29px;">  
</td><td style="height: 29px;">Xcode: 26.4 (APIテスト用)</td></tr><tr style="height: 29px;"><td style="height: 29px;">  
</td><td style="height: 29px;">  
</td></tr><tr style="height: 29px;"><td style="height: 29px;">MacBookPro 16 inch</td><td style="height: 29px;">CPU: Apple Silicon M2 Max</td></tr><tr style="height: 29px;"><td style="height: 29px;">  
</td><td style="height: 29px;">RAM: 96 GB</td></tr><tr style="height: 29px;"><td style="height: 29px;">  
</td><td style="height: 29px;">SSD: 8 TB</td></tr><tr style="height: 29px;"><td style="height: 29px;">  
</td><td style="height: 29px;">macOS: Tahoe 26.4</td></tr><tr style="height: 29px;"><td style="height: 29px;">  
</td><td style="height: 29px;">Xcode: 26.4 (APIテスト用)</td></tr><tr style="height: 29px;"><td style="height: 29px;">  
</td><td style="height: 29px;">  
</td></tr><tr style="height: 29px;"><td style="height: 29px;">Mac mini</td><td style="height: 29px;">CPU: Apple Silicon M2</td></tr><tr style="height: 29px;"><td style="height: 29px;">  
</td><td style="height: 29px;">RAM: 24 GB</td></tr><tr style="height: 29px;"><td style="height: 29px;">  
</td><td style="height: 29px;">SSD: 255 GB</td></tr><tr style="height: 29px;"><td style="height: 29px;">  
</td><td style="height: 29px;">macOS: Sequoia 15.7.1（24G231）</td></tr></tbody></table>

##### macOSの動作環境

「ML Studio」のmacSO版の動作環境は次の通りです。  
<span style="color: rgb(224, 62, 45);">**2026年4月12日現在 (バージョン0.4.11+1 (0.4.11+1))**</span> [Webページより](https://lmstudio.ai/)

<table border="1" id="bkmrk-os-macos-14.0%EF%BC%88sonoma" style="border-collapse: collapse; width: 100%; height: 96px;"><colgroup><col style="width: 13.333333%;"></col><col style="width: 86.547619%;"></col></colgroup><tbody><tr style="height: 67px;"><td style="height: 67px;">OS</td><td style="height: 67px;">macOS 14.0（Sonoma）以降

Apple Silicon（M1 / M2 / M3 / M4）のみ。  
(Intel Macには未対応 [こちらWebの情報](https://github.com/lmstudio-ai/lmstudio-bug-tracker/issues/9)を参照してくたせさい。)

</td></tr><tr style="height: 29px;"><td style="height: 29px;">RAM</td><td style="height: 29px;">16GB以上(8GBでも起動するがモデルは最小モデルを推薦)</td></tr><tr><td>GPU</td><td>Apple Siliconでは、CPUとGPUのメモリを共有</td></tr></tbody></table>

##### Windowsの動作環境

テストは実施していません。単に <span style="color: rgb(224, 62, 45);">**2026年4月12日現在 (バージョン0.4.11+1 (0.4.11+1))**</span> [Webページより](https://lmstudio.ai/docs/app/system-requirements) の情報を翻訳/転記をしています。

<table border="1" id="bkmrk-os-ram" style="border-collapse: collapse; width: 100%;"><colgroup><col style="width: 12.97619%;"></col><col style="width: 87.02381%;"></col></colgroup><tbody><tr><td>OS</td><td>x64およびARM（Snapdragon X Elite）ベースのシステム  
CPU: x64時はAVX2命令セットのサポートが必要</td></tr><tr><td>RAM</td><td>16GB以上のRAMを推奨</td></tr><tr><td>GPU</td><td>4GB以上の専用VRAMを推奨</td></tr></tbody></table>

##### Linuxの動作環境

テストは実施していません。単に <span style="color: rgb(224, 62, 45);">**2026年4月12日現在 (バージョン0.4.11+1 (0.4.11+1))**</span> [Webページより](https://lmstudio.ai/docs/app/system-requirements) の情報を翻訳/転記をしています。

<table border="1" id="bkmrk-os-ram-1" style="border-collapse: collapse; width: 100%;"><colgroup><col style="width: 12.738095%;"></col><col style="width: 87.142857%;"></col></colgroup><tbody><tr><td>OS</td><td>x64およびARM64（aarch64）ベースのシステム  
Ubuntu 20.04以降が必要(Ubuntu 22より新しいバージョンについては、十分なテストが行われていません。)  
x64環境では、LM StudioはデフォルトでAVX2に対応  
</td></tr><tr><td>RAM</td><td>特に記述無し</td></tr><tr><td>GPU</td><td>特に記述無し</td></tr></tbody></table>

# インストール

次の手順でmacOSへ「LM Studio」をインストールしました。

##### アプリケーションのダウンロード

次のURLへアクセスしmacOS版のアプリをダウンロードします。

[https://lmstudio.ai](https://lmstudio.ai)

[Download LM Studio](https://lmstudio.ai/download "ダウンロードサイト")

[![スクリーンショット 2026-04-08 1.35.40.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-1-35-40.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-1-35-40.png)

「Download」ボタンには、最新版のアプリが表示されているのでダウンロードします。

圧縮状態のアプリサイズは約550MB、展開時のアプリは約1.6GB程度有ります。

[![スクリーンショット 2026-04-08 1.42.50.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-1-42-50.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-1-42-50.png)

##### インストール

dmgファイルを開いて、「LM Studio」をApplicationsフォルダーへコピーします。

[![スクリーンショット 2026-04-08 1.43.56.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-1-43-56.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-1-43-56.png)

# 最初の起動

##### アプリを起動

コピーされた「LM Studio」アプリを起動します。

[![スクリーンショット 2026-04-08 1.48.01.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-1-48-01.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-1-48-01.png)

##### アプリの確認

macOSでダウンロードされたアプリを最初に起動したときの確認です。

[![スクリーンショット 2026-04-08 1.50.37.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-1-50-37.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-1-50-37.png)

##### 最初の画面

「Get Started →」ボタンを押して開始します。

[![スクリーンショット 2026-04-08 1.50.55.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/5oe2026-04-08-1-50-55.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/5oe2026-04-08-1-50-55.png)

##### 最初のAIモデルのダウンロード

AIモデルを指定します。

とりあえずデフォルトで指定されている「Download gemini-3-4b」ボタンを押してダウンロード(約3GB)とします。後からAIモデルは追加ダウンロード出来ます。

[![スクリーンショット 2026-04-08 1.56.02.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-1-56-02.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-1-56-02.png)

[![ダウンロード中.jpg](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/DtWZK8AJAo.jpg)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/DtWZK8AJAo.jpg)

AIモデルのダウンロードが完了したら「Continue →」ボタンを押して次の画面を表示します。

##### Advanced Setting画面

Advanced Setting画面はデフォルトのままで「Continue to LM Studio →」ボタンを押します。

[![advanced Settings.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-2-04-46.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-2-04-46.png)

##### 最初の画面

最初の画面が表示されます。

[![最初の画面.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-2-07-17.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-2-07-17.png)

##### ログイン時に開く

macOS Tahoe 26.4では設定の「一般 &gt; ログイン項目と機能拡張」に「LM Studio」がログイン時に開くに追加されます。不必要なら削除して下さい。

[![ログイン項目が追加されました.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-2-08-34.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-2-08-34.png)

[![ ログイン項目と機能拡張.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-2-09-22.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-2-09-22.png)

##### Introducingメッセージ

「LM Studio」の画面左下に次の様なメッセージが出ます。

簡単な紹介的な意味合いで特に気にすることは無いと思います。「LM Studio」はLM Linkは別のPCでLLMを処理し、他のPCからネットワーク経由で接続し通信は暗号化します。「LM Studio」をより強力なPCで運用し他のPCからリモートで使用する事可能です。

Introducing: LM Link

Connect to remote instances of LM Studio. Load models on your other machines, and use them locally. End-to-end encrypted.

# 最初の設定

##### UIの言語設定

UIの言語を日本語に設定します。ベータと言うことで、あまり日本語化されていない感じです。

画面左下のアイコンをクリックして設定を開き「Genelal &gt; User Interface」の「App Language」から「日本語(Bate)」を選択します。直ぐにSetting関係の表示の一部が日本語になりましたが、念のためにアプリを再起動します。

[![App Settings.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-2-24-43.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-2-24-43.png)

[![Setting General.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-2-25-19.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-2-25-19.png)

##### モデルの確認

現在、使用出来るモデルを確認します。インストール時にモデルをダウンロードしていない場合には、この画面でモデルをダウンロードしてしてください。

画面の左端にいくつかのアイコンがありますが「My Models」を選択して、モデルを確認してください。

[![スクリーンショット 2026-04-08 2.33.43.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-2-33-43.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-2-33-43.png)

[![スクリーンショット 2026-04-08 2.33.29.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-2-33-29.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-2-33-29.png)

##### モデルの追加

モデルを最初にダウンロードしなかったり、新しいモデルを追加する場合には、My modelsアイコン下の「Model Search」ボタンを押して、モデルを検索してダウンロードします。

[![スクリーンショット 2026-04-08 2.38.15.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-2-38-15.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-2-38-15.png)

現在、利用できるモデルの一覧が表示されるので、モデルを選択し「Download」します。

[![スクリーンショット 2026-04-08 2.39.46.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-2-39-46.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-2-39-46.png)

今回は、GPTで検索してモデルを確認します。120B(約63GB) と20B(約12GB)のの2つが見えますが、20B(約12GB)の方を選択して「Download」します。

[![スクリーンショット 2026-04-08 2.41.49.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-2-41-49.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-2-41-49.png)

<p class="callout info">120Bとか20Bは何?  
モデルの「パラメータ数（重みの数）」です、20Bは約 200億パラメータ、120Bは 約 1200億パラメータとなります。  
</p>

ダウンロード完了

[![スクリーンショット 2026-04-08 2.56.23.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-2-56-23.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-2-56-23.png)

再び、My Modelsを確認するとGPTが追加されています。

[![スクリーンショット 2026-04-08 2.58.32.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-2-58-32.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-2-58-32.png)

# 導入テスト

｢LM Studioのテスト｣関係の導入時の簡単なテスト結果を記述しています。

# 最初のチャット

##### 最初のチャット

画面中央の「New chat」をクリックして最初のチャットを始めます。

[![スクリーンショット 2026-04-08 3.03.41.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-3-03-41.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-3-03-41.png)

チャット枠が開くのでメッセージを入力します。

[![スクリーンショット 2026-04-08 3.05.42.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-3-05-42.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-3-05-42.png)

[![スクリーンショット 2026-04-08 3.08.06.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-3-08-06.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-3-08-06.png)

入力後、送信ボタン(上矢印)が有効になりません。

[![スクリーンショット 2026-04-08 3.06.46.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-3-06-46.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-3-06-46.png)

チャットの「Pick a model」をクリックして、モデルをロードしてください。モデルがロードされていなかったので送信ボタンが有効になりませんでした。

[![スクリーンショット 2026-04-08 3.08.06.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/iHT2026-04-08-3-08-06.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/iHT2026-04-08-3-08-06.png)

今回は「Gemma 3 4B」の軽量モデルを選択します。

[![スクリーンショット 2026-04-08 3.08.23.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/Mpy2026-04-08-3-08-23.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/Mpy2026-04-08-3-08-23.png)

モデルの読み込み用のダイアログが表示されるので「モデルを読み込む」ボタンで読み込んでください。

[![スクリーンショット 2026-04-08 3.08.40.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/STP2026-04-08-3-08-40.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/STP2026-04-08-3-08-40.png)

読み込みが完了したら送信ボタンでメッセージを送信してください。

[![スクリーンショット 2026-04-08 3.08.59.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-3-08-59.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-3-08-59.png)

返答が得られます。

[![スクリーンショット 2026-04-08 3.15.10.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-3-15-10.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-3-15-10.png)

この段階でのmacOSのメモリ使用量をみてみましょう。

[![スクリーンショット 2026-04-08 3.17.29.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-3-17-29.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-3-17-29.png)

# 推論強度の設定

#### Reasoning（推論強度）設定

チャット画面左下の「Reasoning」でモデルに対して推論(考える時間)の強度を指定出来ます。

Reasoningは3つの指定が出来ます。

- Low
- Medium
- High

[![スクリーンショット 2026-04-08 4.24.45.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-4-24-45.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-4-24-45.png)

##### Low指定

短時間で即答できる軽い推論(軽いQ&amp;Aとかチャット)を想定しています。負荷は軽いです。

##### Medium指定  


回答スピードと質問内容のバランスを取ったモードと言われてています。回答はLowに比べて遅くなります。

##### High指定

推論は一番深く時間が掛かります。複雑な内容を処理する事を目的にしています。

#### 設定変更の結果サンブル

設定を3種類変更して得られるサンブルの回答の具体例を記述します。

使用したモデルは「GPT-OSS 20B」です。

また、質問内容は全て同一で「AIを実行する最適なmacの購入構成を出して下さい。」です。

<table border="1" id="bkmrk-reasoning%E8%A8%AD%E5%AE%9A-%E5%BF%9C%E7%AD%94%E3%81%BE%E3%81%A7%E3%81%AE%E6%99%82%E9%96%93-" style="border-collapse: collapse; width: 58.095238%;"><colgroup><col style="width: 50%;"></col><col style="width: 50%;"></col></colgroup><thead><tr><td>Reasoning設定</td><td>応答までの時間</td></tr></thead><tbody><tr><td>Low</td><td>約1-2秒</td></tr><tr><td>Medium</td><td>約4秒</td></tr><tr><td>High</td><td>約27秒</td></tr></tbody></table>

##### Low指定の結果

[![スクリーンショット 2026-04-08 4.59.08.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-4-59-08.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-4-59-08.png)

##### Medium指定の結果

[![スクリーンショット 2026-04-08 5.00.49.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-5-00-49.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-5-00-49.png)

##### High指定の結果

[![スクリーンショット 2026-04-08 5.00.35.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-08-5-00-35.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-08-5-00-35.png)

##### サンプルの評価

んーー、比較出来るする状態では無い感じでしたが、応答性は明確に違います。特に「High」指定時は時間が掛かります。他の質問では推論が明確に異なるのか。。。

# API-テスト

｢LM Studioのテスト｣関係の「LM Studio」のAPI関係の記事を記述しています。

# APIテスト

##### APIの利用設定

APIを使用するために「LM Studio」のサーバー機能を次の様に有効化します。

画面右上の4つのアイコンから「Developer」を選択して設定を開始します。

[![スクリーンショット 2026-04-09 2.25.30.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-2-25-30.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-2-25-30.png)

一番上の「Local Server」を選択します。

[![スクリーンショット 2026-04-09 2.26.15.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-2-26-15.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-2-26-15.png)

「 + Load Model」ボタンを押して使用するモデルをロードします。

[![スクリーンショット 2026-04-09 2.29.20.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-2-29-20.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-2-29-20.png)

「Status Stoppend」スイッチを「ON」としてサーバーを起動します。

[![スクリーンショット 2026-04-09 2.43.08.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-2-43-08.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-2-43-08.png)

Developer Logsにログが出て来るので動作を確認してください。

[![スクリーンショット 2026-04-09 2.33.02.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-2-33-02.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-2-33-02.png)

##### テスト用のiOSアプリの制作

LLMサーバーと通信する簡単なチャットアプリを制作します。

アプリは、単純にメッセージを送信して結果を受け取るというシンプルな物です。

[![スクリーンショット 2026-04-09 2.47.53.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-2-47-53.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-2-47-53.png)

以下は今回制作したテストアプリのコードです。

iOS 26.0でビルドしてにiOS 26.4のシミュレータで動作確認しています。

<details id="bkmrk-%E3%82%BD%E3%83%BC%E3%82%B9%E3%82%B3%E3%83%BC%E3%83%89-%2F%2F-%2F%2F-content"><summary>全ソースコード</summary>

```swift
//
//  ContentView.swift
//  ML ClientTest
//
//  Created by Masahiko Tani on 2026/04/05.
//
import SwiftUI
import Foundation

struct ContentView: View {
	@State private var message = "" // 入力テキストを保持するステート変数
	@State private var chatMessages: [ContentView.ChatMessage] = []

	var body: some View {
		VStack {
			// テキストフィールド (入力欄)
			TextField("Enter message...", text: $message)
				.padding()
			
			// 送信ボタン
			Button("送信") {
				sendMessage()
			}
			.padding()
			
			// チャットメッセージの表示
			ScrollView { // 縦にスクロールできるようにScrollViewを追加
				LazyVStack { // 効率的な表示のためにLazyVStackを使用
					ForEach(chatMessages) { message in
//						let markdown = message.text
//						Text(try! AttributedString(markdown: markdown))
						Text(.init(message.text))	//	markdown
					}
				}
			}
		}
	}
	
	func sendMessage() {
		guard !message.isEmpty else { return } // 空のメッセージは送信しない
		
		let url = URL(string: "http://127.0.0.1:1234/api/v1/chat")! // LM StudioのAPIエンドポイント
		var request = URLRequest(url: url)
		request.httpMethod = "POST" // POSTメソッドを使用
		request.setValue("application/json", forHTTPHeaderField: "Content-Type")

		let chat = ChatRequest(input: message)
		do {
			request.httpBody = try JSONEncoder().encode(chat)
		} catch {
			// エンコード失敗時はここで処理
			print("JSONエンコードに失敗しました: \(error)")
		}
		
		let task = URLSession.shared.dataTask(with: request) { (data, response, error) in
			do {
				handleServerResponse(data: data)

//				let json = try JSONDecoder().decode(String.self, from: data!) // サーバーからのJSON文字列をデコード
//				DispatchQueue.main.async {
//					let message = ContentView.ChatMessage(text: "You: \(json)", isUser: true)
//					self.chatMessages.append(message)
//				}
			} catch {
				DispatchQueue.main.async {
					let errorMsg = ContentView.ChatMessage(
						text: "Error: \(error.localizedDescription)",
						isUser: false          // エラーは「Bot」側として扱う
					)
					self.chatMessages.append(errorMsg)
					debugPrint(errorMsg.text)
				}
			}
		}
		task.resume()
		
		// 入力テキストをクリア
		message = ""
	}
	
	// data はサーバーから受け取った `Data`（URLSession などで取得）
	func handleServerResponse(data: Data?) {
		guard let data = data else { return }
		
		do {
			// ① JSON を `ChatResponse` にデコード
			let chatResp = try JSONDecoder().decode(ChatResponse.self, from: data)
			
			// ② type が "message" の要素を取得
			if let messageOutput = chatResp.output.first(where: { $0.type == "message" }) {
				let serverMessage = messageOutput.content
				
				// ③ UI スレッドへ渡す
				DispatchQueue.main.async {
					let message = ContentView.ChatMessage(text: "You: \(serverMessage)", isUser: true)
					self.chatMessages.append(message)
				}
			} else {
				// "message" が見つからない場合のフォールバック
				let errorMsg = ContentView.ChatMessage(
					text: "⚠️ 返答に message がありませんでした",
					isUser: false          // エラーは「Bot」側として扱う
				)
				self.chatMessages.append(errorMsg)
				debugPrint(errorMsg.text)
			}
		} catch {
			DispatchQueue.main.async {
				let errorMsg = ContentView.ChatMessage(
					text: "Error: \(error.localizedDescription)",
					isUser: false          // エラーは「Bot」側として扱う
				)
				self.chatMessages.append(errorMsg)
				debugPrint(errorMsg.text)
			}
		}
	}

	
	struct ChatMessage: Identifiable {
		let id = UUID()
		let text: String
		let isUser: Bool   // true なら「You」、false なら「Bot」
	}
	// 2. JSON オブジェクトに包む
	struct ChatRequest: Codable {
		let input: String
//		let temperature: number		//	任意（デフォルト 1.0）	-生成のランダム性を調整 (0〜2)
//		let max_tokens: integer		//	任意（デフォルト 512）	-生成テキストの最大トークン数
		var model: String = "openai/gpt-oss-20b"
	}
	
	/// 最外層
	struct ChatResponse: Codable {
		let model_instance_id: String
		let output: [ChatOutput]
		let stats: ChatStats
		let response_id: String
	}
	
	///  output 配列の要素
	struct ChatOutput: Codable {
		let type: String      // "reasoning" / "message"
		let content: String
	}
	/// stats の情報（必要なら取り込めます）
	struct ChatStats: Codable {
		let input_tokens: Int
		let total_output_tokens: Int
		let reasoning_output_tokens: Int
		let tokens_per_second: Double
		let time_to_first_token_seconds: Double
	}
}


struct ContentView_Previews: PreviewProvider {
	static var previews: some View {
		ContentView()
	}
}

```

</details>コードの簡単な説明

bodyでは大まかなUIを定義しています。

テキストフィールド (入力欄)/送信ボタン/チャットメッセージの表示などです。

```swift
var body: some View
```

送信ボタンが押されるとsendMessageが呼ばれ、入力されたメッセージをJSONエンコードしてhttpのPOSTで送ります。送信後はfunc handleServerResponse(data: Data?)で受信します。

```swift
func sendMessage() 
```

「LM Studio」のサーバーログの例です。

クライアントからメッセージを受け取り推論してレスポンス生成し返しています。

```json
2026-04-09 02:47:37 [DEBUG]
 Received request: POST to /api/v1/chat with body  {
  "model": "openai/gpt-oss-20b",
  "input": "こんにちは"
}
2026-04-09 02:47:37  [INFO]
 [openai/gpt-oss-20b] Running api/v1/chat on history with 1 message.
2026-04-09 02:47:38  [INFO]
 [openai/gpt-oss-20b] Prompt processing progress: 100.0%
2026-04-09 02:47:38  [INFO]
 [openai/gpt-oss-20b] Prompt processing progress: 100.0%
2026-04-09 02:47:38  [INFO]
 [openai/gpt-oss-20b] Generated response:  {
  "model_instance_id": "openai/gpt-oss-20b",
  "output": [
    {
      "type": "reasoning",
      "content": "Need greet in Japanese."
    },
    {
      "type": "message",
      "content": "こんにちは！今日はどんなことに興味がありますか？お手伝いできることがあれば教えてくださいね。"
    }
  ],
  "stats": {
    "input_tokens": 68,
    "total_output_tokens": 42,
    "reasoning_output_tokens": 5,
    "tokens_per_second": 75.68517600625522,
    "time_to_first_token_seconds": 1.129
  },
  "response_id": "resp_850cca25c267606a71f269820dafb2bd6a99b2e5a6d8f81f"
}
```

##### コードの説明を追加

制作したアプリのプログラムに関して追加説明をします。

まず、JSONとかチャットの為にstructを複数定義しています。

- ChatMessage : やり取りのメッセージ格納用
- ChatRequest :LLMサーバーのAPIに対してJSONを組み立てるメッセージ格納用
- ChatResponse :サーバーからのレスポンスの格納用JSONフォーマット
- ChatOutput :ChatResponseの出力用JSONフォーマット
- ChatStats : ChatResponseのstats の情報用のJSONフォーマット

ChatMessageは、送信/受信/表示などに使用されています。

ChatRequestは「/api/v1」用のJSONを組み立てています。現在は、input/modelが必須のバラメータの様です

ChatResponseは、サーバーからのレスポンスでChatOutputとChatStatsを含みます。推論したモデル名/ChatOutput/ChatStatsを含みます。

ChatOutputは、reasoning/messageの2つの内容を含みます。messageは実際の推論結果となります。

ChatStatsは、トークンの利用状態とか処理時間などです。

# LM Link

｢LM Studioのテスト｣関係のLM Link機能に関して掲載しています。

# LM Linkの概要

##### LM Linkとは?

「LM Studio」のLM Linkを使えば、LLMを実行しているPCをLLMを共有出来る様になります。この共有はローカルネットワークを越えてWANでの共有も可能となります。LM Linkで高性能なPCをLLM実行用として利用することが可能になるので、各利用端末は非力な性能でも、高性能PC上で動作するLLMを利用できます。また、社内(ローカルネットワーク)でLLM実行環境を共有しやすくなるため、コストパフォーマンスを高めながら、社内資料を活用した運用も可能になります。さらに、ローカルネットワーク内で運用することで、社内文書が外部に送信されるクラウド型LLMと比べて、情報の外部送信リスクを抑えやすい点も特徴です。

LM Linkは「LM Studio」のアカウントでデバイス同士をリンクする仕組みであり、ローカルネットワーク内だけでなく、離れた場所にあるPCやクラウド上のマシンにも接続して利用できる点が特徴です。デバイス間の接続にはTailscaleメッシュVPNが利用されており、エンドツーエンドで暗号化された安全な通信が行われます。

[LM Link](https://lmstudio.ai/link)

<p class="callout info">2026年4月9日現在  
LM Linkは現時点では、2ユーザーまで、各ユーザー5台ずつ、合計10台まで無料で利用できます。追加のユーザー数やデバイス数に対する有料プランはまだ導入されていませんが、LM LinkがPreview期間を終了した後に提供される予定のようです。</p>

##### LM Linkの接続イメージ

[![LM Linkイメージ.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/lm-link.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/lm-link.png)

# LM Linkの設定

##### LM Linkの設定-アカウント登録

「LM Studio」を使用したいPCにインストールします。

<p class="callout info">LLM Linkでは、LM Studio アカウントが必要となります。</p>

<p class="callout warning">LM Studio Hubにユーザー/デバイスを登録時にサーバーが失敗したりエラーを出したりと非常に不安定です。この文書は何度もトライしたり1日待ったりと時間がかかりました。安定動作になることを期待しています。2026年4月10日</p>

「LM Studio」の画面左下のアイコンをクリックして設定画面を表示します。

[![スクリーンショット 2026-04-09 1.25.47.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-1-25-47.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-1-25-47.png)

「Login &amp; Request Access」ボタンを押して、LM Studio アカウントなどを登録します。

[![スクリーンショット 2026-04-09 1.25.56.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-1-25-56.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-1-25-56.png)

「LM Studio」との登録ページが表示されるのでいずれかの方法で登録します。今回は「Email」で登録します。

[![スクリーンショット 2026-04-09 1.32.53.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-1-32-53.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-1-32-53.png)

電子メールアドレスを入力して「Send login link」ボタンを押します。

[![スクリーンショット 2026-04-09 1.34.46.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-1-34-46.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-1-34-46.png)

[![スクリーンショット 2026-04-09 1.35.13.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-1-35-13.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-1-35-13.png)

電子メールが届くので「Sign in to LM Studio Hub」のリンクをクリックするかリンク用のURLをコピーしてWebブラウザで開きます。

[![スクリーンショット 2026-04-09 1.37.08.jpg](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-1-37-08.jpg)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-1-37-08.jpg)

「Complete Login」ボタンを押して完了します。

[![スクリーンショット 2026-04-09 1.37.53.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-1-37-53.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-1-37-53.png)

usernameを登録する画面になります。

[![スクリーンショット 2026-04-09 23.03.11.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-23-03-11.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-23-03-11.png)

<p class="callout info">注意: アカウント登録時に以下の様なサーバーエラーが出るときが有ります。その場合には、しばらく待って再度最初から登録操作を行います。</p>

[![スクリーンショット 2026-04-09 2.14.15.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-2-14-15.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-2-14-15.png)

ユーザー名を入力してチェックを入れて「Complate Signup」ボタンを押します。

[![スクリーンショット 2026-04-09 23.04.33.jpg](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-23-04-33.jpg)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-23-04-33.jpg)

更に「Cintinue」ボタンを押して、Projects管理画面を表示します。

[![スクリーンショット 2026-04-09 23.04.48.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-23-04-48.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-23-04-48.png)

##### Projects画面

Projects画面です。特に何もしません。

[![スクリーンショット 2026-04-09 23.05.40.jpg](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-23-05-40.jpg)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-23-05-40.jpg)

ここまでで、登録したメールアドレスににメッセージが届きます。

[![スクリーンショット 2026-04-09 23.20.06.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-23-20-06.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-23-20-06.png)

[![スクリーンショット 2026-04-09 23.20.21.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-23-20-21.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-23-20-21.png)

##### 「LM Studio」アプリの画面

今回はLLM実行PCと利用PCの2台を同じアカウントで登録しています。

<p class="callout info">画面はローカルネットワークでの接続です。</p>

[![スクリーンショット 2026-04-09 23.25.03.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-23-25-03.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-23-25-03.png)

画面左下には「This decice」として表示されます。

[![スクリーンショット 2026-04-09 23.25.18.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-23-25-18.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-23-25-18.png)

利用PCを登録するとLLM実行PC画面にに追加されます。

[![スクリーンショット 2026-04-09 23.33.11.jpg](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-23-33-11.jpg)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-23-33-11.jpg)

利用PC側の画面にはLLM実行PCが追加されます。

[![スクリーンショット 2026-04-09 23.39.36.jpg](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-09-23-39-36.jpg)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-09-23-39-36.jpg)

それぞれのPC側からは、相手のPCの状態が見えます。

- Remote Deviceのモデル一覧と状態
- マシンの環境

# ローカルアクセス

##### ローカルネットワークからの利用

ローカルネットワーク内にLLM実行PCが有ると利用PCからアクセスしてLM実行PC上でモデルを実行して答えを得られます。ここでは、LM Link設定で登録した同一アカウントでの利用方法を記載します。

<p class="callout info">[接続イメージ](https://book.a10-objects.jp/books/lm-studio/page/lm-link "概要")</p>

<p class="callout info">2026年4月10日現在  
LM Linkは現時点では、2ユーザーまで、各ユーザー5台まで、合計で10台無料で利用できます。追加のユーザー数やデバイス数に対する有料プランはまだ導入されていませんが、LM LinkがPreview期間を終了した後に提供される予定のようです。</p>

<p class="callout info">[LM Link WebSite](https://lmstudio.ai/link)  
LM Link is free to use for up to 2 users, 5 devices each (10 devices total). We have not yet introduced a way to pay for additional users or devices, but expect to add that once LM Link moves out of Preview.</p>

##### LM Linkに登録確認

LM Studio Hubで登録されているデバイスを確認します。1ユーザー当たり最大5台なので画面からは2台登録されています。

[![スクリーンショット 2026-04-10 0.26.37.jpg](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-10-0-26-37.jpg)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-10-0-26-37.jpg)

##### LLM実行PCへアクセス

利用PCからアクセスしてみます。

「LM Studio」アプリの左上から「Chat」を選択します。

[![スクリーンショット 2026-04-10 0.32.10.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-10-0-32-10.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-10-0-32-10.png)

次にメッセージ入力枠から使用するモデルを選択します。この時、LLM実行PC上のモデルも見えていると思います。ここでは「GPT-OSS 120B」を選択します。

[![スクリーンショット 2026-04-10 0.33.45.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-10-0-33-45.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-10-0-33-45.png)

[![スクリーンショット 2026-04-10 0.34.06.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/IKX2026-04-10-0-34-06.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/IKX2026-04-10-0-34-06.png)

これでLLM実行PC上のモデルが利用できる様になります。試しにメッセージを送ってみましょう。

[![スクリーンショット 2026-04-10 0.37.40.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-10-0-37-40.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-10-0-37-40.png)

[![スクリーンショット 2026-04-10 0.37.56.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-10-0-37-56.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-10-0-37-56.png)

もう一つ、質問してみました。LM Linkは新しいサービスなので、選択したモデルでは無理と答えています。

[![スクリーンショット 2026-04-10 0.40.07.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-10-0-40-07.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-10-0-40-07.png)

# インターネットアクセス

##### インターネットアクセス

LLM実行PCを社内のローカルネットワークに置き、利用PCは外からインターネット越しにLLM実行PCを利用することが出来ます。

<p class="callout info">[接続イメージ](https://book.a10-objects.jp/books/lm-studio/page/lm-link "概要")</p>

##### 具体例

具体的に実際にiPhoneのデザリングを使用して、外からLLM実行PCをアクセスした例を記述します。以下の説明は、利用PCからの操作などです。

利用PCの「LM Studio」起動してLLM実行PCとの接続を確認します。

[![スクリーンショット 2026-04-10 1.17.48.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-10-1-17-48.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-10-1-17-48.png)

接続されているPCは有りません。

[![image.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/pwFimage.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/pwFimage.png)

次にMacBookProをiPhoneとデザリングでインターネットに接続します。

[![スクリーンショット 2026-04-10 1.17.20.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-10-1-17-20.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-10-1-17-20.png)

「LM Studio」アプリは10秒間隔で接続を試みるようで、ネットワークに接続すると自動的にLLM実行PCに接続出来ました。

[![スクリーンショット 2026-04-10 1.27.21.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-10-1-27-21.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-10-1-27-21.png)

Chat画面に戻って、LLM実行PCのモデルを選択して質問をしてみましょう。

[![スクリーンショット 2026-04-10 1.18.45.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-10-1-18-45.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-10-1-18-45.png)

[![スクリーンショット 2026-04-10 1.21.37.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-10-1-21-37.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-10-1-21-37.png)

インターネット越しでもローカルネットでも特別な操作無しで「LM Studio」が使用できました。

##### モデルの状態

参考にLLM実行PCへ接続したときと未接続時のモデル一覧です。

[![スクリーンショット 2026-04-10 1.25.54.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-10-1-25-54.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-10-1-25-54.png)

[![スクリーンショット 2026-04-10 1.26.20.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-10-1-26-20.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-10-1-26-20.png)

# モデルを非公開設定

##### 非公開設定

「LM Studio」アプリがローカルで使用しているモデルはLM Linkを有効にすると、LM Link対象になっているPCですべて使用できるようになります。

「LM Studio」アプリが自身のローカルモデルを非公開にするには非公開にしたいPCかーの設定を変更します。「Settings &gt; LM Link」の「**Allow loading models on this machine**」をOFFにします。

<p class="callout info">モデル一覧以外は非公開にはならないよ! 使用しているLM Linkはベータなので今後のアップデータを期待しましょう。  
2026年4月11日</p>

[![スクリーンショット 2026-04-11 4.15.53.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-11-4-15-53.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-11-4-15-53.png)

OFFにするとML Linに接続される「「LM Studio」アプリのモデル一覧から除かれます。

##### 非公開/公開のモデル一覧

ON時のモデル一覧の例です。

[![スクリーンショット 2026-04-11 4.22.34.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-11-4-22-34.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-11-4-22-34.png)

OFF時のモデル一覧の例です。

[![スクリーンショット 2026-04-11 4.16.30.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-11-4-16-30.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-11-4-16-30.png)

##### モデルを非行にしても表示?  


モデルを非公開にしているのですが、何故か「Developer」画面とチャット画面では表示されます。

<p class="callout info">バグ?</p>

[![スクリーンショット 2026-04-11 5.01.00.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-11-5-01-00.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-11-5-01-00.png)

[![スクリーンショット 2026-04-11 4.42.55.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-11-4-42-55.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-11-4-42-55.png)

モデルは常に使用可能

<p class="callout info">非公開設定してもモデル一覧に出ないだけで、Developer画面とかチャット画面では使用できます。おそらくバグ?ですかね。現在ベータ版です。2026年4月11日</p>

# モデルのメモリ使用量

##### モデルのメモリ使用量

「LM Studio」関係のモデル用のタスク「node」のメモリ使用量です。

<p class="callout warning">未だ短期間のテストなので詳しく分からないところが多々あります。</p>

モデル「openai/gpt-oss-120b」をロードしているので60GB程度の実メモリを使用して。システム全体では92GBも使用しています。

[![スクリーンショット 2026-04-11 5.05.32.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-11-5-05-32.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-11-5-05-32.png)

##### モデルのロード状態

Developer画面のLocal Serverから現在のモデルのロード状態の詳細を確認出来ます。先のアクティビティモニタでは4つ有りますが、2つが自身が指定してロードしたモデルのプロセスです。他の2つは不明です(未調査)。

[![スクリーンショット 2026-04-11 5.05.37.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-11-5-05-37.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-11-5-05-37.png)

ここで「Server Settings」を確認します。

「未使用のJITロードモデルを自動的にアンロード」がONとなって、10分を指定してます。しかし、10分を経過してもアンロードされません。LM Link動作時にアンロードされるとプロセスが終了してメモリ使用が無くなると推測していたのですが。。。設定方法が間違っているのか?現在の所はモデルがアンロードされてメモリが実行されない原因は不明です。また、API使用時だけの機能なのかは未確認です。

[![スクリーンショット 2026-04-11 5.06.03.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-11-5-06-03.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-11-5-06-03.png)

「LM Studio」アプリを終了

モデル用のプロセス「node」はアプリが終了しても残ります。LM Link機能かの兼ね合いで残る必要が有るのかも。試しにLM LinkをOFFにしましたが特に変化は有りませんでした。

##### メモリを解放

自動的に解放されないので、マニュアルで解放します。「Eject」ボタンを押してモデルを解放します。今回は「openai/gpt-oss-120b」を解放してみました。他のユーザーが使用中でも他のるPC全てからモデルを解放出来るので「Eject」ボタンの使用は注意する必要が有ります。途中で「Eject」されると当然ですが、中途半端に止まります。

[![スクリーンショット 2026-04-11 5.28.25.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-11-5-28-25.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-11-5-28-25.png)

[![スクリーンショット 2026-04-11 5.30.06.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-11-5-30-06.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-11-5-30-06.png)

キャッシュ上には残っている様ですが、使用済みメモリは「92GBから32GB 」と大幅に少なくなりました。アプリの改良を待ちたいと思います。それまでは、手作業でモデルのメモリ使用量を管理しましょう。

# 外部サービス連携(MCP)

｢LM Studioのテスト｣関係のRemote MCPを導入する記事です。「LM Studio」に簡単に機能を追加出来ます。

# MCPの設定

##### 概要

MCP(Model Context Protocol )はAIツール(今回は「LM Studio」)が外部へアクセスするために作られた共通の接続方式をです。例えば、Webの検索、外部データを扱うなどです。

「LM Studio」では次の様な構造となります。他のAIツールでも同等な構成となると思います。

<div drawio-diagram="139"><img src="https://book.a10-objects.jp/uploads/images/drawio/2026-04/drawing-1-1776043364.png" alt=""/></div>

<span style="color: rgb(22, 145, 121);">**LM Studio : LLMアプリ &lt;--&gt; MCP : 外部との共通接続方式 &lt;--&gt; 外部サービス: 実際に処理する部分**</span>

このMCPは複数登録して使用することも可能です。

# Exaの設定

##### Exaの概要

ExtはMCPをサポートとしてLLMアプリ(モデル)に次の様なサービスを主に提供してくれます。Extサービスは無料枠も有りますが基本有料サービスとなっています。今回は、テストなのでユーザー登録もしていない無料枠でテストしています。詳しくは次のExtサービスをご確認ください。

Extサービスの[Webサイト](https://exa.ai)

- Webを検索してAIが扱いやすい形の結果を返します。
- Webページを読み取りMarkdown形式で返します。

「LM Stduio」はローカル処理なので、外部に接続し最新のWeb情報を取得する仕組みを持っていません。しかし、MCPを通して外部のWeb情報を取得出来る様になっています。

Extは主に次の2つの方法のMCPを提供しています。

- リモートMCP
- ローカルMCP

2つの違いをざっくり説明すると、リモートMCPは必要最低限の通信処理が有るのみでExaサイトが大部分の処理を実行します。ローカルMCPではMITライセンス下で提供(ライセンスは[Extサイト](https://exa.ai))されたプログラムで自由に利用できます。ローカルMCPサーバー(JavaScript)を起動し、MCP実装の確認とか動作のカスタマイズ、動作状態の把握などが出来る様になります。しかし、Web処理などの処理は実装されてはいないのでExaサイトを使用することになります。

##### Exaの設定方法

Developer 設定のLoacal Server設定から「mcp.json」アイコンをタップします。

[![スクリーンショット 2026-04-13 10.52.12.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-13-10-52-12.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-13-10-52-12.png)

最初の何も無い設定状態です。

[![スクリーンショット 2026-04-13 10.55.35.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-13-10-55-35.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-13-10-55-35.png)

mcpServersにExtサービスを追加します。

```json
    "exa": {
      "url": "https://mcp.exa.ai/mcp"
    }

```

mcp.jsonにExtサービスを追加した後の全体です。

```json
{
  "mcpServers": {
    "exa": {
      "url": "https://mcp.exa.ai/mcp"
    }
  }
}

```

「Save」ボタンを押して保存します。

「LM Studio」の画面右下に次の様なダイアログが出るので、**<span style="color: rgb(224, 62, 45);">閉じるまで待つか右上の「×」をクリックして閉じます</span>**。

[![スクリーンショット 2026-04-13 6.39.15.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-13-6-39-15.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-13-6-39-15.png)

<p class="callout danger">注意: ここで「Edit mac.json」もしくは「Configure」ボタンを押さないでください。「LM Stduio」アプリおよび設定が壊れてチャットウインドウからモデルの操作ができなくなります。単純な回復は未調査なので、今回は設定ファイル関係(この時点で全ての履歴とモデルは無くなり、新しく導入したと同等)の削除と「LM Stduio」アプリの再インストールがで対応しました。2026-04-13 バージョン0.4.11+1 (0.4.11+1)で発生しました。 他のバージョンでこの現象が発生するかは確認していません。</p>

<p class="callout info">チャットウインドウの左が次の表示の様になり、モデルの切り替えなどが出来なくなります。  
</p>

<p class="callout info">[![スクリーンショット 2026-04-13 5.59.52.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/3pL2026-04-13-5-59-52.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/3pL2026-04-13-5-59-52.png)</p>

<p class="callout info">正しいチャットウインドウの例です。モデル名などが表示されています。[![スクリーンショット 2026-04-13 6.01.47.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/xiM2026-04-13-6-01-47.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/xiM2026-04-13-6-01-47.png)</p>

<details id="bkmrk-%E5%BE%A9%E6%97%A7%E6%96%B9%E6%B3%95"><summary>復旧方法の例(クリーンインストールに近い)</summary>

復旧方法の一例として記述しています。私の場合にはテストなので大きな支障は有りませんが、情報を損失したくない場合には別の方法を使用してください。MCPを今回の様に設定したい場合には<span style="color: rgb(224, 62, 45);">**MCPの設定前に**</span>「~/.lmstudio」をバックアップして行う方法も有ります。

<p class="callout danger">注意: この方法は殆ど全ての情報を無くします。</p>

##### アプリと関連プロセスの終了

「LM Studio」アプリと関連プロセスを完全に終了します。「LM Studio」アプリを終了してもプロセス名「LM (半角スペース)」から始まるプロセスを確認して「LM Studio」を強制終了します。また、「node」という関連プロセス名が有ります。「node」といういプロセス名は他のアプリで同一のプロセス名を割り当てられている事が有るので注意してください。プロセスの上位プロセス名が「LM Studio」のみを終了してください。

通常「LM Studio」アプリを終了すると関連プロセスも自動的に終了(最初にモデルをアンロードするのがコツ)します。終了されない場合にはプロセス名「LM Studio」アプリを強制終了すると終了します。

今回、確認した「LM Studio」バージョンは「バージョン0.4.11+1 (0.4.11+1)」です。

##### 設定ファイルなどの削除

次に不可視フォルダを内容込みで全て削除します。このファイルには履歴とかアプリの設定、モデルファイルなどのほぼ全ての情報が入っています。もし必要なら「.lmstudio.bk」の様に名前を変更して保存して下さい。

~/.lmstudio

##### アプリの再インストール

「LM Studio」アプリをサイトからダウンロードして、置き換えてください。

アプリを起動して、新しいアプリとして、再設定してください。

ここまでで、多くの「LM Studio」情報が初期化され、新しいアプリとして使用できるようになります。

</details>次にEdit mcp.jsonウインドウの右上の「×」をクリックして閉じます。

[![スクリーンショット 2026-04-13 10.59.59.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-13-10-59-59.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-13-10-59-59.png)

# Exaの動作確認

##### <span style="color: #222222;"><span style="caret-color: rgb(34, 34, 34); font-size: 19.6px;">チャットにMCP機能を追加</span></span>  


チャットウインドウで設定したMCPを使用出来る様に変更します。Integrationsアイコンをクリックして一覧を表示します。一覧中に追加したMCPが「MCP/exa」として表示されています。チェックをONとします。

[![スクリーンショット 2026-04-13 11.21.36.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-13-11-21-36.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-13-11-21-36.png)

mcp/exaが有効になるとチャットウインドには次の様に「exa」表示が追加されます。

[![スクリーンショット 2026-04-13 11.21.52.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-13-11-21-52.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-13-11-21-52.png)

##### 動作確認

簡単に動作を確認してみましょう。通常通り質問などしても使用しているモデルがWebへのアクセスが不必要と推論したらMCPは使用されません。次のように具体的にWebアクセスをする質問とします。

「Web検索を使って」今日のイランの情勢を要約し参照URL付きで教えて

[![スクリーンショット 2026-04-13 11.32.00.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-13-11-32-00.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-13-11-32-00.png)

[![スクリーンショット 2026-04-13 11.32.34.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-13-11-32-34.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-13-11-32-34.png)

一度推論して、次にWeb検索、そして、最終的にまとめてレスポンスしている感じの動作をしていました。

今日は「2026-04-13 」Webページは「2026-03-31」ですが、ま、こんなものでしょうか?

<p class="callout info">MCPが起動して検索作業中に実行の有無を尋ねる場合有ります。[![名称未設定.jpg](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/GY39PX7yDB.jpg)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/GY39PX7yDB.jpg)</p>

試しに、MCPをOFFにして同様な質問をしてみました。結果は次の通りです。レスポンスとして『「リアルタイムで今現在のウェブ検索」を実行し、今日の情勢を即座に要約する機能が搭載されておりません。』と明言しています。当然、MCPが動作していると思われる表示は有りませんでした。

[![スクリーンショット 2026-04-13 11.43.50.png](https://book.a10-objects.jp/uploads/images/gallery/2026-04/scaled-1680-/2026-04-13-11-43-50.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-04/2026-04-13-11-43-50.png)