ローカルAIはネットなしで動くのか:通信が発生する場面と確かめ方
AIを使いこなすClaudeで執筆し、GPTで自動校閲・修正しています。

結論から言うと、モデルのファイルと必要な実行環境が手元にそろっていれば、ローカルLLMの推論(質問して答えを得る処理)自体はネットなしで動かせます。ただし「ローカルAI=一切通信しない」ではありません。モデルの検索・ダウンロード、アプリやランタイムの更新、クラウド機能、Python環境での確認通信などは、使うツールによってネットを必要とします。 この記事では、公式ドキュメントで確認できた範囲で「通信が起きる場面」を一覧にし、回線を切って実際に確かめる手順を示します。対象は主にOllama、LM Studio、Hugging Faceのライブラリを使うPythonです。今回の自動校閲で確認したのは2026年10月29日時点の各公式ページで、仕様は変わる可能性があります。
公式資料で確認できたこと
- LM Studio:ダウンロード済みのモデルをオフラインで実行でき、チャット入力やアップロードした文書は端末の外に出ないと説明されています。一方、Discoverタブでのモデル検索、モデルや「LM Runtimes」のダウンロード、macOS/Windowsでのアプリ更新の確認にはネット接続が必要とされています(LM Studio Docs: Offline Operation)。
- Ollama:ローカル実行時はプロンプトやデータを運営側は見ないと説明されています。クラウドモデル(:cloud系)とウェブ検索は別機能で、OLLAMA_NO_CLOUD=1または~/.ollama/server.jsonのdisable_ollama_cloud: trueでローカル専用にできます。モデルの取得(pull)はHTTPSです。macOS/Windowsではアプリが更新を自動でダウンロードします。確認した範囲では、この更新確認を止める方法は書かれていませんでした(Ollama FAQ)。
- Ollamaのクラウドモデル:ダウンロード不要で、利用にはサインインかAPIキーが必要です。プロンプトと応答はクラウド側で処理されます(Ollama Cloud)。
- Hugging Face(Python):HF_HUB_OFFLINE=1を設定するとHubへのHTTP呼び出しをしなくなり、キャッシュ済みファイルだけを使います。キャッシュがなければエラーになります。また、transformersなどはデフォルトで利用状況データを収集することがあり、HF_HUB_DISABLE_TELEMETRY=1で無効にできます(huggingface_hub 環境変数)。
通信が発生しうる場面の一覧
上の資料と、一般的な使い方から整理した表です。「資料で確認」は上記の公式ページに記載があるもの、「要確認」は今回読んだ公式ページでは確認できていないものです。
- モデルの検索(LM StudioのDiscover)、通信の有無:あり、切る・避ける方法:事前に済ませる、根拠:資料で確認
- モデルのダウンロード/ollama pull、通信の有無:あり、切る・避ける方法:事前に済ませる。別PCで取得して持ち込む(LM Studioはサイドロード可)、根拠:資料で確認
- LM Studioのランタイム取得、通信の有無:あり、切る・避ける方法:事前に必要な形式分を取得、根拠:資料で確認
- アプリ更新の確認・取得(macOS/Windows)、通信の有無:あり、切る・避ける方法:更新はオンライン時にまとめて行う。止める設定は未確認、根拠:資料で確認(Ollamaは確認したFAQに停止方法の記載なし)
- Ollamaのクラウドモデル・ウェブ検索、通信の有無:あり、切る・避ける方法:OLLAMA_NO_CLOUD=1、根拠:資料で確認
- Python+transformers等のHub確認、通信の有無:Hubからのファイル取得時は、キャッシュ済みでも更新確認あり、切る・避ける方法:HF_HUB_OFFLINE=1、根拠:資料で確認
- Hugging Faceライブラリの利用状況送信、通信の有無:既定であり。対象はライブラリごとの方針による、切る・避ける方法:HF_HUB_DISABLE_TELEMETRY=1、根拠:資料で確認
- ツールが公開するローカルAPI(127.0.0.1:11434など)、通信の有無:自分のPC内の通信、切る・避ける方法:外部公開しない、根拠:Ollamaは既定で127.0.0.1に待ち受け
- 上記以外のバックグラウンド通信、通信の有無:不明、切る・避ける方法:実際に切って確認、根拠:要確認
注意点が二つあります。まず、ローカルAPIの通信は「インターネット通信」ではありませんが、OLLAMA_HOST=0.0.0.0:11434のようにすると同じネットワークの他の端末から届く状態になります。オフライン目的なら既定のままにします。次に、ローカルで推論する設定でも、AIにウェブ検索ツールや外部サービス連携を持たせれば、その分の通信は発生します。
ネットを切って試すオフライン確認手順
以下は公式の仕様を踏まえて本稿で提案する手順で、この記事のために実行した結果ではありません。
1. オンラインのうちに準備する
使うモデルを取得し、一度は実際に回答まで動かします。Ollamaなら、次のように名前を確認します。
ollama pull (使うモデル名)
ollama listモデル名は説明用の書き方なので、自分が使うものに置き換えてください。LM Studioなら、モデルをダウンロードして一度チャットを送っておきます。Pythonなら、一度オンラインでfrom_pretrainedを実行してキャッシュを作ります。
2. 回線を物理的に切る
ブラウザのタブを閉じるだけでは確認になりません。Wi-FiをオフにしてLANケーブルも抜き、モバイル通信やテザリングなど別の接続経路も切ります。機内モードを使う場合も、Wi-Fiなどがオフになっているか確認します。切ったあと、ブラウザのキャッシュ表示に注意し、未閲覧の外部ページを新たに取得できないことも確かめます。
3. アプリを再起動して試す
回線を切った状態でアプリ(またはOllamaのサーバー)を終了してから起動し直します。起動時の挙動も含めて見るためです。そのうえで、次のような機密を含まない短い質問を送ります。
次の文を30字以内で要約してください。
「ローカルで動くAIは、モデルのファイルが手元にあれば推論に通信を必要としません。」4. Pythonの場合は環境変数を付けて試す
huggingface_hubの環境変数はライブラリの読み込み前に設定する必要があるため、起動前に指定します。次はmacOS/Linuxのシェルでの説明用の例です。your_script.pyは実際のスクリプト名に置き換えます。
HF_HUB_OFFLINE=1 HF_HUB_DISABLE_TELEMETRY=1 python your_script.pyWindows PowerShellでは、$env:HF_HUB_OFFLINE="1"と$env:HF_HUB_DISABLE_TELEMETRY="1"をそれぞれ実行してから、python your_script.pyを起動します。これらはHubへのアクセスと対応する利用状況送信を抑える設定で、スクリプト内の外部APIなど、すべての通信を止めるものではありません。キャッシュが足りなければエラーで止まるので、不足ファイルの発見にも役立ちます。
5. Ollamaでクラウド機能を無効にして試す
Ollama FAQのOS別の方法でOLLAMA_NO_CLOUD=1をサーバーに設定するか、~/.ollama/server.jsonに"disable_ollama_cloud": trueを設定します。新規作成時のJSONは次の形です。既存ファイルがある場合は、ほかの設定を残してこの項目を追加・変更します。
{
"disable_ollama_cloud": true
}どちらの場合もOllamaを再起動し、ログのOllama cloud disabled: trueを確認します。そのうえで、取得済みのローカルモデルで回答が返ることを確かめます。この設定はOllamaのクラウドモデルとウェブ検索を無効にするもので、更新などを含むすべての通信を止める設定ではありません。
結果の読み方
- 回答が返る、考えられる原因:モデルが手元にある、対処:オフライン運用の見込みあり
- モデルが見つからない、考えられる原因:取得が未完了、または保存先が違う、対処:オンラインで取得し直し、一覧を確認
- Pythonがキャッシュ不足のエラー、考えられる原因:必要ファイルが未取得、対処:オンラインで一度実行してから再試行
- 起動時に更新エラーや警告が出る、考えられる原因:更新確認の失敗、対処:動作に影響しなければ許容。気になるなら更新方針を決める
- :cloud系のモデルが動かない、考えられる原因:クラウド処理が前提、対処:ローカルモデルに切り替える
本当に通信していないかを知りたいとき
回線を切って動くことは「動作にネットが必須でない」ことの確認であり、「通信を一切試みていない」ことの証明ではありません。後者を知りたい場合は、OS標準のネットワーク監視機能やファイアウォールのログで、アプリ名ごとの接続先を見る方法があります。本稿では各アプリの通信先を実測していないので、機密性が高い用途では自分の環境でこの確認を行ってください。
なお、通信を避けることと情報管理は別の話です。ローカル実行でも、チャット履歴やキャッシュは端末に残ります。共有PCや持ち出し端末で扱う場合は、保存場所の管理を別に考えてください。

