ドキュメント

CLI リファレンス

Ollaya は単一のバイナリです。CLI、サーバー、モデルランナーがその中にあります。Ollama を使ったことがあれば、コマンドは馴染み深く感じられるでしょう。

コマンド 動作
ollaya serve 127.0.0.1:11435 でサーバーを起動します
ollaya run MODEL [STATE] 状態についての質問に答えるか、プロンプトを開きます。必要に応じてモデルを取得してロードします
ollaya pull MODEL レジストリからモデルをダウンロードします
ollaya list (ls) このマシン上のモデルを一覧表示します
ollaya ps メモリにロードされたモデルを一覧表示します
ollaya show MODEL モデルの詳細、機能、ライセンスを表示します
ollaya stop MODEL 実行中のモデルをアンロードします
ollaya stop CLI が起動したサーバーを停止します
ollaya mcp [--http [ADDR]] MCP 経由で AI エージェントにモデルを提供します(Agents)
ollaya rm MODEL… 1 つ以上のモデルを削除します
ollaya cp SOURCE DESTINATION モデルを新しい名前でコピーします
ollaya create NAME [-f Modelfile] Modelfile からモデルを作成します
ollaya update [--check] 最新リリースを現在のものに上書きインストールします
ollaya -v サーバー(およびクライアント)のバージョンを表示します

serve と update を除くすべてのコマンドは、OLLAYA_HOST のサーバーと通信します。そこから応答がなく、アドレスがローカルの場合、CLI は(モデルなしの ollaya stop を除いて)ollaya serve をバックグラウンドで起動し、~/.ollaya/logs/server.log(または OLLAYA_LOG_DIR の server.log)にログを記録します。

モデル名

モデルは name:tag として参照します。tag を省略すると latest が使われます。名前は大文字小文字を区別しません。

ollaya run laya                 # same as laya:latest, a router
ollaya run laya:multilingual
ollaya pull laya:en-fp32

laya:en のようなモデルは、1 つの重みファイルを共有する fp16 と fp32 のグラフを持ちます。精度はモデルのロード時に選ばれます。CUDA GPU では fp16、CPU では fp32 です。-fp16 と -fp32 の tag でどちらかに固定できます。

ollaya run

ollaya run laya --preset triage "Your app crashed during checkout and I was charged twice. Please refund one of the charges."

run はサーバーに接続し(必要なら起動し)、モデルがこのマシンになければ取得し、ロードして、質問ごとに 1 行を出力します。答え、バー、その確率です。

フラグ 効果
--preset NAME プリセットを使います。組み込み(triage、email、guard、moderation、router、agent)か、ollaya preset create で保存したものです
--questions FILE|@FILE|JSON これらの質問(質問 id → 質問)を使い、モデル自身のものを上書きします。ファイルパス、@file(標準入力なら @-)、または { で始まるインライン JSON です
--format text|json text(既定)はテーブルを出力します。json は /api/decide のレスポンス全体を出力します
--keepalive DURATION その後モデルをロードしたままにする時間:5m、1h、0(今すぐアンロード)、-1(ロードしたまま)
--verbose 各選択肢の確率、ルーティングの決定、所要時間も出力します
--state-json 状態を JSON として解析します。JSON オブジェクトや配列に見える状態はどのみち検出されます
--image FILE 判定対象の PNG 画像で、ビジョンモデル(decider:2b-vision)用です。REPL を含め、すべての状態に付きます

質問の出どころは、最初に一致したものが優先されます。--questions、次に --preset、次にモデルに組み込まれた質問(qwen3guard のもの、または Modelfile で追加したもの)、最後に triage プリセットです。run が triage にフォールバックすると、その旨を stderr に出力します。

--questions は curl -d のように、コマンドラインで直接 JSON を受け取ることもできます。{ で始まる値はインライン JSON で、それ以外はファイルパスです。@file は常にファイルで(ファイル名が { で始まる場合に便利です)、@- は標準入力から質問を読み、その場合状態はコマンドラインに書きます。

ollaya run winnow:e4b --questions '{"topic":{"type":"choice","criteria":["billing","access","other"]}}' "..."
ollaya run winnow:e4b --questions @questions.json "..."
cat questions.json | ollaya run winnow:e4b --questions @- "..."

状態はコマンドラインの残りの部分です。状態がない場合、run はパイプされた標準入力を読みます。

cat ticket.txt | ollaya run laya --preset triage

状態なしで端末上で実行すると、run はプロンプトを開きます。状態を入力して Enter を押します。複数行は """ で囲みます。コマンド:

コマンド 効果
/preset NAME 組み込みの質問セットに切り替えます
/set questions FILE JSON ファイルの質問を使います
/show モデルと現在の質問を表示します
/clear 画面を消去します
/bye 終了します(または Ctrl+D)
/?, /help ヘルプ

ollaya serve

CLI とあなたのアプリケーションが通信するサーバーを起動します。ネイティブ API(/api/*)と TypeSafe 互換 API(/v1/*)を提供します。詳しくは API リファレンス を参照してください。Linux のインストーラはこれを ollaya systemd サービスとして実行します。

ollaya serve

これが必要になることはほとんどありません。サーバーが起動していないときは、他のコマンドがバックグラウンドで起動します。OLLAYA_HOST で既にサーバーが動いている場合、ollaya serve はその旨を告げて終了します。サーバーをフォアグラウンドで実行するには、先に ollaya stop でそれを停止してください。

環境変数で設定します。

変数 既定値 効果
OLLAYA_HOST 127.0.0.1:11435 バインドするアドレス。CLI の接続先
OLLAYA_MODELS ~/.ollaya/models モデルストア
OLLAYA_KEEP_ALIVE 5m 最後のリクエスト後にモデルをロードしたままにする時間
OLLAYA_MAX_LOADED_MODELS 3 同時にロードしたままにするモデル数
OLLAYA_MAX_QUEUE 512 503 QUEUE_FULL になる前に処理中の判定リクエスト数
OLLAYA_LOAD_TIMEOUT 5m モデルのロードに許される時間
OLLAYA_DEVICE auto auto(インストーラが CUDA ライブラリを追加した場合は NVIDIA GPU、それ以外は CPU)、cpu、cuda、cuda:<n>
OLLAYA_API_KEY 未設定 Authorization: Bearer <key> を要求します。CLI もそれを送ります
OLLAYA_ORIGINS 未設定 追加で許可するブラウザオリジン。カンマ区切り
OLLAYA_REGISTRY ollaya.dev モデル名の既定のレジストリホスト
OLLAYA_LOG info ログレベル。debug はすべてのリクエストをステータスと所要時間つきで記録します
OLLAYA_LOG_DIR 未設定 stderr の代わりに <dir>/server.log に記録します(なければ作成。追記のみで、ローテーションはしません)

systemd サービスの場合は、sudo systemctl edit ollaya と Environment= 行で変更します。

ollaya pull

モデルをダウンロードし、各レイヤーを sha256 で検証します。ルーターを取得すると、それがルーティングするすべてのモデルも取得します。このマシンに必要なレイヤーだけがダウンロードされ、中断したダウンロードは再開します。

ollaya pull laya

ollaya list と ollaya ps

list はこのマシン上のモデルを ID、サイズ、取得した時刻とともに表示します。ps はロードされたモデル、実行されているデバイス(cpu、cuda:0)、精度、アンロードされる時刻を表示します。

NAME                ID             SIZE     MODIFIED
laya:latest         b87ca1631b11   11 KB    13 seconds ago
laya:multilingual   ba7a334675b4   684 MB   13 seconds ago
laya:en             bf30e4654e94   854 MB   30 seconds ago

ollaya show

モデルのアーキテクチャ、パラメータ、コンテキスト長、精度、言語、機能、ライセンスを出力します。ルーターの場合はルートを出力します。

フラグ 出力内容
--questions モデルに組み込まれた質問
--license ライセンス
--modelfile モデルを再作成する Modelfile
--parameters パラメータ(固定した精度など)

ollaya stop

ollaya stop MODEL は、実行中のモデルを、処理中のリクエストが終わり次第アンロードします。keep-alive が切れるのを待ちません。

モデルなしの ollaya stop は OLLAYA_HOST のサーバーを停止し、すべてのモデルをアンロードします。停止するのは、あなたが ollaya serve で、または別のコマンドの実行で起動したサーバーだけです。Linux の systemd サービスのような他のユーザーのサーバーは決して停止しません。それは sudo systemctl stop ollaya で停止します。

ollaya rm と ollaya cp

ollaya cp laya:en my-guardrail
ollaya rm my-guardrail

rm は、他のどのモデルも使っていない blob も削除します。ルーターを削除しても、それがルーティングするモデルは残ります。cp は既存の宛先を上書きします。

ollaya preset

プリセットは、どのモデルでも再利用できる名前付きの質問セットです。ollaya run MODEL --preset NAME、または /api/decide で "preset": "NAME" です。6 つが組み込みです。自分のものは次のように保存します。

ollaya preset create billing-check --questions billing.json --description "Billing, and how upset the customer is"
ollaya run winnow:e4b --preset billing-check "I was charged twice this month."
コマンド 効果
ollaya preset list 組み込みとカスタムのプリセットを、その質問 id とともに
ollaya preset show NAME プリセットの質問を JSON で
ollaya preset create NAME --questions FILE|@FILE|JSON [--description TEXT] カスタムプリセットを保存し、同名のものを置き換えます。--questions は ollaya run と同じ形式を受け取ります
ollaya preset rm NAME... カスタムプリセットを削除します。組み込みプリセットは削除できません

名前は小文字、数字、-、_ です。カスタムプリセットはサーバーが保存するため(モデルの隣の presets/ に)、CLI、API、MCP サーバーのすべてがそれらを参照できます。プリセットは Modelfile の QUESTIONS で作ったモデルとは異なります。1 つのモデルに縛られず、何もコピーしません。

ollaya update

最新リリースを現在のものに上書きインストールします。インストールスクリプトを同じプレフィックスにもう一度実行するので、モデル、プリセット、systemd サービスはそのままです。

ollaya update --check   # only say whether a newer release exists
ollaya update

デスクトップアプリに付属するバイナリ(macOS アプリ、Windows インストーラ、AppImage、または .deb と .rpm パッケージ)は新しいアプリをインストールすることで更新され、コンテナは新しいイメージを取得することで更新されます。ollaya update はそれを変更せず、その旨を告げます。

ollaya create

Modelfile からモデルをビルドします。たとえば質問セット、再フィットした較正、固定した精度を焼き込むためです。-f の既定は ./Modelfile です。

ollaya create triage -f Modelfile