Ollamaの実験的な並行実行の機能の紹介
こんにちは、皆さん!今回は、Ollamaの最新リリース(v0.1.33)で追加された実験的な並行機能についてご紹介します。これにより、複数のリクエストを同時に処理する能力が大幅に向上しました。
注意事項
あくまでも(v0.1.33)時点では実験的機能のため、動作が安定しない可能性があります。 運用環境での利用は慎重に検討してください。
新しい並行機能の概要
Ollamaの最新リリースでは、次の2つの環境変数を設定することで、新しい並行機能を利用できます。
- OLLAMA_NUM_PARALLEL: 単一のモデルに対して複数のリクエストを同時に処理する機能
- OLLAMA_MAX_LOADED_MODELS: 複数のモデルを同時にロードする機能
これらの機能を有効にするためには、以下の環境変数を設定して ollama serve
を実行します。
例: bashの場合
OLLAMA_NUM_PARALLEL=4 OLLAMA_MAX_LOADED_MODELS=4 ollama serve
例: Windowsの場合
Windowsのシステムの設定で環境変数として設定します
環境変数の設定方法
それでは、これらの環境変数をどのように設定するかを詳しく見ていきましょう。
ステップ1: 環境変数の設定
まず、ターミナルで以下のコマンドを実行して環境変数を設定します。
export OLLAMA_NUM_PARALLEL=2
export OLLAMA_MAX_LOADED_MODELS=2
ステップ2: Ollamaの起動
次に、以下のコマンドでOllamaを起動します。
ollama serve
これで、Ollamaは指定した設定で起動し、複数のリクエストとモデルを同時に処理できるようになります。
ステップ3: Ollamaでllama3のチャット実行する
ターミナルを2つひらいて、以下のコマンドを実行して、llama3とのチャットを2個並列して実行します。
ollama run llama3
実際の利用シナリオ
この新機能は、以下のようなシナリオで特に有効です。
-
大規模なデータ処理: 複数のクエリを同時に実行することで、データ処理のスループットを向上させることができます。
-
リアルタイムアプリケーション: ユーザーからの同時リクエストに迅速に応答できるため、リアルタイム性が求められるアプリケーションに最適です。
-
複数モデルの利用: 複数のモデルを同時にロードすることで、異なるタスクに対して迅速に対応することができます。
まとめ
Ollamaの実験的な並行機能は、複数のリクエストとモデルを同時に処理する能力を大幅に向上させる強力な機能です。環境変数を設定するだけで、これらの機能を簡単に利用できるので、ぜひ試してみてください。
この新機能についてもっと詳しく知りたい方は、公式ガイドを参照してください。
参考
チャンネル Prompt Engineer さんの動画がとてもわかりやすいです。
OllamaでLLMを動作させてみようとおもってるかたは、ぜひともチェックしてみてください。環境変数を設定して動作確認している様子を確認することができます。