注釈
こんにちは、SunFounderのRaspberry Pi & Arduino & ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。
参加する理由は?
エキスパートサポート:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。
学び&共有:ヒントやチュートリアルを交換してスキルを向上させましょう。
独占的なプレビュー:新製品の発表や先行プレビューに早期アクセスしましょう。
特別割引:最新製品の独占割引をお楽しみください。
祭りのプロモーションとギフト:ギフトや祝日のプロモーションに参加しましょう。
👉 私たちと一緒に探索し、創造する準備はできていますか?[here]をクリックして今すぐ参加しましょう!
17. Ollama でテキストトーク
このレッスンでは、ローカルで大規模言語モデル(LLM)およびビジョンモデルを実行できるツール Ollama の使い方を学びます。 Ollama のインストール、モデルのダウンロード、そして Pidog との接続方法を紹介します。
始める前に
以下を完了していることを確認してください:
すべてのモジュールをインストールする(重要) —
robot-hat、vilib、Pidogモジュールをインストールし、スクリプトi2samp.shを実行します。
1. Ollama(LLM)のインストールとモデルのダウンロード
Ollama は以下のいずれかの場所にインストールできます:
Raspberry Pi 上(ローカル実行)
同じローカルネットワーク内の別のコンピュータ(Mac / Windows / Linux)
推奨モデルとハードウェアの目安
Ollama Hub にある任意のモデルを選択できます。 モデルには 3B、7B、13B、70B... などさまざまなサイズがあり、小さいモデルは動作が速く少ないメモリで済みますが、大きいモデルはより高品質な応答を提供する代わりに、強力なハードウェアが必要です。
以下の表を参考に、デバイスに合ったモデルサイズを選んでください。
モデルサイズ |
最低必要RAM |
推奨ハードウェア |
|---|---|---|
約3Bパラメータ |
8GB(16GB推奨) |
Raspberry Pi 5(16GB)または中程度のPC/Mac |
約7Bパラメータ |
16GB以上 |
Pi 5(16GB、ギリギリ動作)または中程度のPC/Mac |
約13Bパラメータ |
32GB以上 |
高メモリ搭載のデスクトップPC/Mac |
30B+ パラメータ |
64GB以上 |
ワークステーション / サーバー / GPU推奨 |
70B+ パラメータ |
128GB以上 |
複数GPUを搭載したハイエンドサーバー |
Raspberry Pi へのインストール
Raspberry Pi に Ollama を直接インストールして実行する場合:
64-bit Raspberry Pi OS を使用してください
強く推奨: Raspberry Pi 5(16GB RAM)
以下のコマンドを実行します:
# Ollama のインストール
curl -fsSL https://ollama.com/install.sh | sh
# 軽量モデルをダウンロード(テストに最適)
ollama pull llama3.2:3b
# クイックテスト(「hi」と入力してEnter)
ollama run llama3.2:3b
# APIを提供(デフォルトポート 11434)
# LANからアクセス可能にするには OLLAMA_HOST=0.0.0.0 を設定
OLLAMA_HOST=0.0.0.0 ollama serve
Mac / Windows / Linux(デスクトップアプリ)へのインストール
Ollama Download Page から Ollama をダウンロードしてインストールします。
Ollama アプリを開き、Model Selector に移動し、検索バーに
llama3.2:3bと入力します(最初に使うのに適した軽量モデルです)。
ダウンロードが完了したら、チャットウィンドウに「Hi」と入力します。初回使用時、自動的にモデルのダウンロードが開始されます。
Settings → Expose Ollama to the network を有効にします。 これにより Raspberry Pi から LAN 経由で接続できます。
警告
以下のようなエラーが表示された場合:
Error: model requires more system memory ...
モデルがマシンのメモリに対して大きすぎます。 より小さいモデル を使用するか、より高性能なPCに切り替えてください。
2. Ollama のテスト
Ollama のインストールとモデルの準備が完了したら、最小限のチャットループで素早くテストできます。
手順
新しいファイルを作成します:
cd ~/pidog/examples nano test_llm_ollama.py
以下のコードを貼り付けて保存します(
Ctrl+X→Y→Enter):from pidog.llm import Ollama INSTRUCTIONS = "You are a helpful assistant." WELCOME = "Hello, I am a helpful assistant. How can I help you?" # If Ollama runs on the same Raspberry Pi, use "localhost". # If it runs on another computer in your LAN, replace with that computer's IP address. llm = Ollama( ip="localhost", model="llama3.2:3b" # you can replace with any model ) # Basic configuration llm.set_max_messages(20) llm.set_instructions(INSTRUCTIONS) llm.set_welcome(WELCOME) print(WELCOME) while True: text = input(">>> ") if text.strip().lower() in {"exit", "quit"}: break # Response with streaming output response = llm.prompt(text, stream=True) for token in response: if token: print(token, end="", flush=True) print("")
プログラムを実行します:
python3 test_llm_ollama.pyこれで、ターミナルから直接 Pidog とチャットできます。
Ollama Hub にある 任意のモデル を選択できますが、8〜16GB RAM しかない場合は、
moondream:1.8bやphi3:miniのような小さいモデルを推奨します。コード内で指定するモデル名は、Ollama ですでにダウンロード済みのモデルと一致している必要があります。
exitまたはquitと入力するとプログラムを終了できます。接続できない場合は、Ollama が実行されていること、そしてリモートホストを使用している場合は両方のデバイスが同じ LAN 上にあることを確認してください。
トラブルシューティング
「model requires more system memory ...」のようなエラーが表示される。
モデルがデバイスに対して大きすぎることを意味します。
moondream:1.8bやgranite3.2-vision:2bのような小さいモデルを使用してください。または、より多くの RAM を搭載したマシンに切り替え、Ollama をネットワークに公開します。
コードが Ollama に接続できない(connection refused)。
以下を確認してください:
Ollama が実行されていること(
ollama serveまたはデスクトップアプリが開いていること)。リモートコンピュータを使用している場合、Ollama の設定で Expose to network が有効になっていること。
コード内の
ip="..."が正しい LAN IP と一致していることを再確認。両方のデバイスが同じローカルネットワーク上にあることを確認。