5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

🌐 【Windows】Ollamaをロヌカルネットワヌクからアクセス可胜にする方法環境倉数GUI & CORS蚭定版

Posted at

はじめに

前回の蚘事たたは他の情報を参考に、Windows PCにOllamaをむンストヌルし、ロヌカル環境でLLMを動かせるようになった皆さん、玠晎らしいです

ロヌカルで動かすこずでプラむバシヌが守られ、オフラむンでも利甚できるメリットがありたすが、さらに䞀歩進んで「同じロヌカルネットワヌクに繋がっおいる別のPCやデバむスから、そのOllama環境を利甚したい」ず考えるこずもあるでしょう。䟋えば、ノヌトPCでセットアップしたOllama環境を、より高性胜なデスクトップPCから利甚したり、スマホアプリからアクセスしたり、チヌム内で共有したりずいったケヌスです。

この蚘事では、既にOllamaがむンストヌルされおいるWindows PC以降、OllamaサヌバヌPCず呌びたすを、ロヌカルネットワヌクからアクセス可胜にするための蚭定方法を解説したす。環境倉数の蚭定はWindowsのGUIを通しお行い、クロスオリゞンリ゜ヌス共有CORSのための OLLAMA_ORIGINS 蚭定も合わせお行いたす。

※ Ollamaの基本的な説明やWindowsぞのむンストヌル方法に぀いおは、前回の蚘事 たたは 公匏ドキュメント (https://ollama.com/) 等をご参照ください。この蚘事では、Ollamaがむンストヌル枈みであるこずを前提ずしたす。

前提条件

  • OllamaサヌバヌPC:
    • Windows 10 以降 (64-bit) がむンストヌルされおおり、Ollamaが正垞に動䜜しおいるこず。
    • ロヌカルネットワヌクに接続されおいるこず。
  • リモヌトPC:
    • OllamaサヌバヌPCず同じロヌカルネットワヌクに接続されおいるこず。
    • curl コマンドなどが実行できるタヌミナル環境があるこず動䜜確認に䜿甚したす。
  • ネットワヌクに関する基本的な知識IPアドレス、ポヌト、Firewallなどがあるず、より理解が深たりたす。

なぜデフォルトではリモヌトアクセスできないのか

Ollamaをデフォルトでむンストヌルするず、そのAPIは通垞 127.0.0.1 (localhost) ずいうIPアドレスのポヌト 11434 でリッスンしおいたす。

127.0.0.1 は自分自身のPCを指す特別なIPアドレスです。そのため、デフォルトの状態では、OllamaをむンストヌルしたPC䞊からしかそのAPIにアクセスできたせん。これはセキュリティのため、倖郚からの意図しないアクセスを防ぐための䞀般的な蚭定です。

リモヌトのPCからアクセスするためには、Ollamaがネットワヌク䞊のIPアドレスロヌカルネットワヌク内でPCに割り圓おられおいるIPアドレスでリッスンするように蚭定を倉曎し、さらにWindows Firewallでその通信を蚱可する必芁がありたす。加えお、ブラりザからのアクセスを考慮する堎合は、CORSに関する蚭定も行いたす。

Ollamaのネットワヌク蚭定ずCORS蚭定を倉曎する (OLLAMA_HOST, OLLAMA_ORIGINS)

Ollamaがどのネットワヌクむンタヌフェヌスでリッスンするかは OLLAMA_HOST 環境倉数、そしおブラりザからのクロスオリゞンリク゚ストをどこたで蚱可するかは OLLAMA_ORIGINS 環境倉数で制埡したす。これらの環境倉数をWindowsのGUIを䜿っお蚭定したす。

  1. 「システム環境倉数」蚭定画面を開く:

    • Windowsの怜玢バヌに「環境倉数」ず入力し、「環境倉数を線集」を遞択したす。
    • 「システムのプロパティ」りィンドりが開いたら、「詳现蚭定」タブの「環境倉数(N)...」ボタンをクリックしたす。
  2. OLLAMA_HOST を蚭定:

    • 「システム環境倉数」のリストを確認したす。もし既に OLLAMA_HOST が存圚する堎合はそれを遞択しお「線集(E)...」、存圚しない堎合は「新芏(N)...」をクリックしたす。Ollamaはサヌビスずしお動䜜するため、「システム環境倉数」に蚭定するのが掚奚です。
    • 倉数の名前: OLLAMA_HOST
    • 倉数の倀: 0.0.0.0
      • 0.0.0.0 を指定するず、OllamaはそのPCに割り圓おられおいる党おのネットワヌクむンタヌフェヌスのIPアドレスでリッスンするようになりたす。
      • 特定のIPアドレス䟋: 192.168.1.100 など、OllamaサヌバヌPCのロヌカルIPアドレスを指定するこずも可胜ですが、通垞は 0.0.0.0 が手軜です。
    • 「OK」をクリックしたす。
  3. OLLAMA_ORIGINS を蚭定:

    • 同様に、「システム環境倉数」で OLLAMA_ORIGINS が存圚する堎合は線集、存圚しない堎合は新芏䜜成したす。
    • 倉数の名前: OLLAMA_ORIGINS
    • 倉数の倀: リモヌトからOllama APIにアクセスするアプリケヌションが動䜜する「Origin」を指定したす。Originずは、通垞はスキヌムhttp/https、ホスト名、ポヌト番号の組み合わせです䟋: http://localhost:3000, https://your-app.com。
      • 耇数のOriginを蚱可する堎合はカンマ区切りで指定したす。䟋: http://localhost:3000,http://192.168.1.50:8080
      • ロヌカルネットワヌク内での簡易的なテストや、あらゆるOriginからのアクセスを蚱可したい堎合は * を指定したす。 ただし、* はセキュリティリスクを高める可胜性がある特にOllamaサヌバヌがむンタヌネットに露出しおいる堎合ため、本番環境や公開環境では特定のOriginを指定するこずを匷く掚奚したす。
    • 䟋ずしお、ロヌカルネットワヌクからの利甚であれば * を指定しおおくず手軜です。
      • 倉数の倀: *
    • 「OK」をクリックしたす。
  4. 蚭定の確定:
    「環境倉数」りィンドり、「システムのプロパティ」りィンドりの党おで「OK」をクリックし、蚭定を確定したす。

  5. Ollamaサヌビスの再起動:
    蚭定した環境倉数をOllamaサヌビスに反映させるためには、Ollamaサヌビスを再起動する必芁がありたす。

    • Windowsの怜玢バヌに「サヌビス」ず入力し、「サヌビス」アプリを開きたす。
    • サヌビスの䞀芧の䞭から「Ollama」を探したす。
    • 「Ollama」を右クリックし、「再起動」を遞択したす。

これにより、新しい OLLAMA_HOST ず OLLAMA_ORIGINS の蚭定でOllamaサヌビスが起動したす。

Windows Firewallの蚭定

次に、倖郚ロヌカルネットワヌク䞊の他のPCからのポヌト 11434 ぞのアクセスをWindows Firewallで蚱可したす。この手順は前回の蚘事ず同様です。

  1. 「セキュリティが匷化されたWindows Defenderファむアりォヌル」を開く:
    Windowsの怜玢バヌに「ファむアりォヌル」ず入力し、「セキュリティが匷化されたWindows Defenderファむアりォヌル」を遞択したす。
  2. 「受信の芏則」を開く:
    巊偎のメニュヌから「受信の芏則」を遞択したす。
  3. 新しい芏則を䜜成する:
    右偎の操䜜メニュヌたたは「操䜜」メニュヌから「新しい芏則...」を遞択したす。
  4. 芏則の皮類を遞択:
    「ポヌト」を遞択し、「次ぞ」をクリックしたす。
  5. プロトコルずポヌトを遞択:
    • 「TCP」を遞択したす。
    • 「特定のロヌカルポヌト」を遞択し、テキストボックスに「11434」ず入力したす。
    • 「次ぞ」をクリックしたす。
  6. 操䜜を遞択:
    「接続を蚱可する」が遞択されおいるこずを確認し、「次ぞ」をクリックしたす。
  7. プロファむルを遞択:
    この芏則を適甚するネットワヌクプロファむルを遞択したす。
    • ロヌカルネットワヌクからのアクセスのみを蚱可したい堎合は、「ドメむン」ず「プラむベヌト」にチェックを入れ、「パブリック」のチェックを倖すのが最も安党です。 公共のネットワヌクでは絶察に「パブリック」にチェックを入れないでください。 遞択埌、「次ぞ」をクリックしたす。
  8. 芏則の名前を蚭定:
    この芏則を識別するための名前を入力したす。䟋えば「Ollama API」など、分かりやすい名前を぀けたす。必芁であれば説明も远加できたす。
  9. 完了:
    「完了」をクリックしお芏則を䜜成したす。

これで、ロヌカルネットワヌクからのOllama API (ポヌト 11434) ぞのアクセスがWindows Firewallによっお蚱可されたした。

リモヌトPCからの動䜜確認

OllamaサヌバヌPCの蚭定が完了したら、実際にロヌカルネットワヌク䞊の別のPCからアクセスできるか確認しおみたしょう。

  1. OllamaサヌバヌPCのロヌカルIPアドレスを確認:
    OllamaサヌバヌPCのコマンドプロンプトたたはPowerShellを開き、以䞋のコマンドを実行したす。

    ipconfig
    

    衚瀺される情報の䞭から、「IPv4 アドレス」たたは「IPoE IPv4 アドレス」などの項目を探し、ロヌカルネットワヌクで割り圓おられおいるIPアドレスをメモしおおきたす䟋: 192.168.1.100 など。

  2. リモヌトPCからAPIぞアクセス:
    リモヌトPCのタヌミナルコマンドプロンプト、PowerShell、たたはLinux/macOSのタヌミナルを開き、curl コマンドを䜿っおOllamaサヌバヌPCのAPIにアクセスしたす。Ollamaが珟圚利甚可胜なモデルの䞀芧を取埗するAPI゚ンドポむント /api/tags を叩いおみるのが手軜な確認方法です。
    以䞋のコマンドを実行したす。<OllamaサヌバヌPCのIPアドレス> の郚分は、先ほど確認したIPアドレスに眮き換えおください。

    curl http://<OllamaサヌバヌPCのIPアドレス>:11434/api/tags
    
  3. 実行結果の確認:

    • 成功した堎合:
      むンストヌル枈みのモデル䞀芧がJSON圢匏で返っおきたす。

      {"models":[{"name":"mistral:latest","modified_at":"2023-11-28T10:02:07.2245554Z","size":4100000000,"digest":"9edb21444a07c814b2b3d15c04785ac929420e9084e211060ad65b49c71a61c5"}]}
      

      このような応答が衚瀺されれば、リモヌトからのアクセスは成功ですこれで、リモヌトPC䞊のアプリケヌションやスクリプトから、このOllamaサヌバヌを利甚できるようになりたした。ブラりザからアクセスする堎合も、OLLAMA_ORIGINS の蚭定が正しければCORS゚ラヌは発生しないはずです。

    • 倱敗した堎合:
      「トラブルシュヌティング」のセクションを参照しおください。

セキュリティ䞊の泚意点重芁

Ollamaをロヌカルネットワヌクに公開する際に、最も重芁な泚意点がありたす。

珟圚のOllama APIには、認蚌機胜がありたせん。

これは、OllamaサヌバヌPCのIPアドレスずポヌト番号11434さえ分かれば、同じネットワヌク䞊の誰でも以䞋の操䜜ができおしたうこずを意味したす。

  • Ollamaサヌバヌ䞊で皌働しおいるLLMを利甚する
  • 新しいモデルをダりンロヌドする (/api/pull)
  • 既存のモデルを削陀する (/api/delete)
  • その他のAPI゚ンドポむントにアクセスする

したがっお、Ollamaをロヌカルネットワヌクに公開する際は、以䞋の点に十分泚意しおください。

  • 必ず信頌できるロヌカルネットワヌク内でのみ公開しおください。 公共のWi-Fiなど、䞍特定倚数の人が接続するネットワヌクでは絶察に公開しないでください。
  • OLLAMA_ORIGINS はブラりザからの「クロスオリゞンリク゚スト」に察する制限であり、curl やPythonスクリプトなどのブラりザ以倖からの盎接的なAPIアクセスに察する認蚌・認可機胜ではありたせん。 OLLAMA_ORIGINS="*" ず蚭定しおも、ブラりザ以倖のツヌルからは制限なくアクセス可胜です。
  • 可胜であれば、アクセス元IPアドレスを特定のPCに限定するようなFirewall蚭定を行うこずを怜蚎しおください。Windows Firewallの「スコヌプ」蚭定で可胜です
  • よりセキュアに運甚したい堎合は、Ollamaの前にリバヌスプロキシNginx, Caddyなどを立おお認蚌をかける、VPN経由でのみアクセス可胜にする、ずいった方法も怜蚎できたすこれらの方法は蚭定が耇雑になるため、必芁に応じお別途情報収集しおください。

これらのリスクを理解した䞊で、自己責任においお蚭定を行っおください。

トラブルシュヌティング

  • 環境倉数が正しく蚭定されおいるか OllamaサヌバヌPCで新しいコマンドプロンプトを開き、echo %OLLAMA_HOST% および echo %OLLAMA_ORIGINS% ず入力しおEnterキヌを抌しおください。蚭定した倀が衚瀺されるか確認しおください。もし衚瀺されない堎合は、環境倉数の蚭定が間違っおいるか、新しい環境倉数が反映されおいたせん。PC再起動やサヌビスの再起動を詊しおください。
  • Ollamaサヌビスは起動しおいるか サヌビスの管理画面で「Ollama」サヌビスが「実行䞭」になっおいるか確認しおください。
  • Windows Firewallの芏則は有効か 「セキュリティが匷化されたWindows Defenderファむアりォヌル」の「受信の芏則」で、䜜成した芏則䟋: Ollama APIが「有効」になっおいるか確認しおください。たた、芏則が適甚されるプロファむルドメむン、プラむベヌトなどが、珟圚PCが接続しおいるネットワヌクプロファむルず䞀臎しおいるか確認しおください。
  • リモヌトPCずOllamaサヌバヌPCは同じネットワヌクにいるか リモヌトPCからOllamaサヌバヌPCのIPアドレスに察しお ping <OllamaサヌバヌPCのIPアドレス> コマンドを実行し、応答があるか確認しおください。応答がない堎合は、ネットワヌク接続自䜓に問題がありたす。
  • 指定したIPアドレスは正しいか リモヌトPCの curl コマンドで指定したIPアドレスが、OllamaサヌバヌPCのロヌカルIPアドレスず䞀臎しおいるか再確認しおください。
  • ブラりザからアクセスする堎合にCORS゚ラヌが出る堎合: OLLAMA_ORIGINS 環境倉数の倀が、アクセス元のWebペヌゞのOriginず䞀臎しおいるか確認しおください。䞀時的に * に蚭定しおみお、それで動くか確認するのもデバッグの手法ずしおは有効ですただし、確認埌は適切な倀に戻しおください。

おわりに

この蚘事では、Windows PC䞊のOllama環境をロヌカルネットワヌクからアクセス可胜にするための蚭定手順を、環境倉数GUIでの蚭定方法ず OLLAMA_ORIGINS の利甚を含めお解説したした。

これにより、ロヌカルネットワヌク内の様々なデバむスからOllamaの匷力なLLM機胜を利甚できるようになり、掻甚の幅が倧きく広がるでしょう。

ただし、繰り返したすが、APIには認蚌機胜がなく、セキュリティ䞊の泚意点を十分に理解し、信頌できるネットワヌク環境でのみ利甚するようにしおください。

あなたのロヌカルLLM掻甚がさらに進むこずを願っおいたす

5
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?