# onw 使い方マニュアル **日本語** | [English](MANUAL_en.md) ・ [README に戻る](README.md) インストールが終わったあとの使い方を、画面ごとに説明します(画面は v1.0.1、Windows 11、NPU 3720 のものです)。 インストールの方法と対応モデルの一覧は [README](README.md) にあります。 - [onw ウィンドウとタスクトレイ](#onw-ウィンドウとタスクトレイ) - [「モデル」タブ:モデルを選んでダウンロード](#「モデル」タブ:モデルを選んでダウンロード) - [「サーバー」タブ:読み込んで使う](#「サーバー」タブ:読み込んで使う) - [チャット画面](#チャット画面) - [ベンチマーク](#ベンチマーク) - [「設定」タブ](#「設定」タブ) - [他のアプリから使う(OpenAI 互換 API ほか)](#他のアプリから使う(openai-互換-api-ほか)) - [更新](#更新) - [アンインストール](#アンインストール) - [困ったとき](#困ったとき) ## onw ウィンドウとタスクトレイ インストールが終わると、onw はタスクトレイ(Ubuntu は画面右上)に常駐し、**onw ウィンドウ**が開きます。 ウィンドウには「サーバー」「モデル」「設定」の 3 つのタブがあります。 トレイの onw アイコンを右クリックすると、次のメニューが出ます。 | メニュー | 内容 | |---|---| | onw を開く(モデル・サーバー・設定) | onw ウィンドウを開きます(アイコンのダブルクリックでも開きます) | | チャットを開く/ベンチマークを開く | ブラウザでチャット画面・ベンチマークを開きます(モデルが動作中のとき) | | OpenAI API のURLをコピー | 他のアプリに貼る base URL をコピーします | | モデルをロード/アンロード(サーバー停止) | 前回のモデルを読み込む/止めてメモリを空けます | | 終了(サーバーも停止) | onw ごと終わります | ウィンドウを閉じてもサーバーは動き続けます。 ## 「モデル」タブ:モデルを選んでダウンロード onw ウィンドウの「モデル」タブ 使えるモデルの一覧です。各列の意味は次のとおりです。 - **画像**:「可」なら画像を読めます(チャットに画像を添付できます)。 - **サイズ**:ダウンロードの大きさ。 - **メモリ目安**:動かしている間に使うメモリの目安です。今の設定(コンテキスト長、メモリ節約モードなど)を反映しています。 この PC のメモリでは足りないかもしれないモデルは、行が赤みがかった色になります。 - **速度**:テスト機(NPU 3720)での生成速度の目安。Lunar Lake 以降の NPU ではもっと速くなります。 - **状態**:使用中・取得済み・未取得・ダウンロード中(%)・更新あり(新しい版が出ている)・途中(ダウンロードが途中で止まった)。 モデル名の下には、思考の種類(「思考:切替」=思考モードで考えさせられる、「思考:常に考える」)と短い説明が出ます。 迷ったら **Gemma 4 E4B**(画像も読める・使用メモリ約 6 GB)がおすすめです。「ダウンロード」を押すと、行の背景が 進み具合のバーになり、終わると「ロード」ボタンに変わります。行の右端の「⋯」からは、モデルのフォルダを開く・ コンパイル結果(キャッシュ)を削除する・モデルを削除する、ができます。 ボタンが「ダウンロードして変換」のモデル(LFM2.5 24B-A2B など、ライセンスの都合で変換済みの重みを配布できないもの)は、元のモデルを Hugging Face から取得して、この PC で onw 用に変換します。押すと、必要な空き容量・かかる時間・ライセンスを確認してから始まり、終わると元のファイルは消えます。サイズの列には「変換後の大きさ(変換中に要る空き)」が出ます。進み具合のバーは、ダウンロードと変換を合わせたものです。 - **保存先**:「変更…」でダウンロード先を好きなドライブにできます(C ドライブが狭いときなど)。 - **ほかの場所**:すでにモデルを別の場所に持っている場合(`hf download` で入れた、自分で変換した など)は、「追加…」で そのフォルダ(またはモデルのフォルダをまとめて入れた親フォルダ)を選べば一覧に出ます。コピーは不要です。 「外す…」で探す場所から外せます(フォルダやモデルは消えません)。 ## 「サーバー」タブ:読み込んで使う 「サーバー」タブ(Gemma 4 E4B が動作中) 下の「使うモデル」でモデルを選び、「ロード」を押します。 - **初回だけ、NPU 向けの準備(コンパイル)に 10〜30 分ほど**かかります(モデルと PC によります。テスト機では Gemma 4 E4B が約 4〜11 分、Qwen3.5-9B が約 13 分)。進み具合は「NPU 向けの準備 3/6」のように出ます。その間も PC は普通に使えます。 - 2 回目以降は結果が保存されているので、20 秒ほどで「動作中」になります。 - 一度に動かせるのは 1 モデルです。別のモデルを選んで「切り替え」を押すと、今のモデルを止めてから読み込みます。 動作中になると、上の段に次のものが出ます。 | 項目・ボタン | 内容 | |---|---| | モデル名・速度・メモリ | 動いているモデルと、その目安 | | チャット/ベンチマーク | ブラウザでチャット画面・ベンチマークを開きます | | ログ | サーバーのログ(読み込みやエラーの記録)を開きます | | アンロード | サーバーを止めてメモリを空けます | | 場所 | モデルのフォルダ | | メモリ・NPU | PC のメモリのうち onw(サーバーと、NPU が使う分)・ほかのアプリ・空きの横棒と、NPU の使用率 | | OpenAI API | 他のアプリに入れる base URL とモデル名。「コピー」で URL をコピーします | 読み込みに失敗したときは、状態が「ロード失敗」になり、止まった理由が表示されます。 **このモデルの既定**:その下のカードで、今のモデルの「思考」(考えない/少し/普通/じっくり)と「生成設定」(貪欲(温度 0)・ モデルの推奨値・自分で指定)を決めます。API で思考や温度を送らないアプリ(OpenCode など)のリクエストと、チャット画面の 初期値に使い、アプリが送った値はそのまま使います。モデルごとに保存され、「このモデルに保存」ですぐ反映されます(サーバーの 再起動は要りません)。 ## チャット画面 チャット画面(思考モードで回答したところ) 「サーバー」タブかトレイの「チャット」で、ブラウザに開きます(`http://localhost:8000/chat`)。 - **送る**:メッセージを入れて Enter(改行は Shift+Enter)。回答中は「送信」が「停止」になり、押すとそこで止めます。 回答中に上へスクロールすると自動スクロールが止まり、右下の「↓ 最新へ」で最新の位置に戻れます。 - **画像**:📎 で添付するか、画像を貼り付け(Ctrl+V)・ドロップします(画像を読めるモデルのとき)。 - **思考**:考えない/少し/普通/じっくり の 4 段階のスライダーです。考えた内容は回答の上の「思考」欄に入り、クリックで開閉できます。 gpt-oss・llm-jp は考える量そのもの(low/medium/high)が変わり、必ず考えるので「考えない」は選べません。ほかのモデルの 「少し」「普通」は考える長さに上限(約 512/2048 トークン)を付け、上限で思考を打ち切って答えます。考えた分も最大トークンに数えます。 - **細かい指定**:温度(0 なら毎回同じ答え)、最大トークン(回答の長さの上限。既定はコンテキストが許す限りで、会話とプロンプトの残りの文脈いっぱいまで書けます)、Top P・Top K・繰り返し抑制(Gemma では 1.2 以上を推奨。赤字で表示されます)・出現ペナルティ(一度出た言葉を出にくくする)。 読み込むと、モデルの推奨値が最初から入っています(「(モデルの推奨値)」と表示。モデルの `generation_config.json` に値があればそれを、なければ onw の `onw/sampling.json` の値を使います)。元のモデルに推奨がない llm-jp は onw が選んだ値です(「(onw の推奨値)」と表示)。 Qwen 系は思考モードをオンにすると、思考用の推奨値に切り替わります(自分で変えた値はそのまま)。温度 0 にすると、毎回同じ答えになる代わりに、長い文章で同じ言葉を繰り返しやすくなります。 考えるだけで最大トークンを使い切ったときは、その旨が表示されます(最大トークンを増やしてください)。 - 回答の下の行は、応答が始まるまでの秒数・トークン数・生成速度(tok/s)・会話の長さ(文脈)です。 画像を添付して質問したところ ### 回答のボタン 回答の下の「コピー」で回答の Markdown をコピー、「原文」で Markdown のまま表示(もう一度押すと整形した表示)、最後の回答の 「再生成」で同じ質問にもう一度答えさせます。コードブロックには言語名と「コピー」ボタンが付き、コードだけをコピーできます。 ### 会話の履歴 左の欄に、これまでの会話が保存されます(☰ で表示・非表示)。 - 「日付順」(今日・昨日・過去 7 日間…)と「モデル別」で並べ替えられます。 - 会話をクリックすると開いて、続きを話せます。別のモデルで始めた会話は、今のモデルが続きを答えます。 - ✎ で名前を変更、🗑 で削除。「会話履歴をすべて削除」で全部消せます(どちらも元に戻せません)。 - 会話はこの PC の onw の設定フォルダ(Windows は `%APPDATA%\onw\chats`、Ubuntu は `~/.config/onw/chats`)にだけ保存されます。 添付した画像は、縮小した写しが保存されます。 ## ベンチマーク 「ベンチマークを実行」で、128・1K・2K・4K(8K も選べます)トークンのプロンプトを読ませ、プロンプトの読み込み(プリフィル)の速さと、そのあとの生成(デコード)の速さを表にします。プロンプトはこのモデル自身のトークナイザーで長さを合わせ、毎回違う一文で始めるので、前の会話は再利用されません。温度 0・思考オフで、「回数」を増やすと一番速かった回を出します。「結果をコピー(Markdown)」で、アプリ・モデル・CPU・OS と一緒に表をコピーできます(記事などに)。チャット画面の上部にも、直前の回答のプリフィル速度と生成速度が出ます。 ## 「設定」タブ 設定は 4 つのタブに分かれています。変えた項目があると画面の下に「未保存の設定があります」のバーが出るので、 「保存」で反映します(「元に戻す」で取り消し)。サーバーの再起動が要る設定のときは、保存のあとに聞かれます。 ### 一般 設定の「一般」タブ | 項目 | 内容 | |---|---| | 言語 | 画面の言語。auto は OS に合わせます(日本語・英語・中国語(簡体字)) | | 起動時に前回ロードしたモデルを自動でロードする | onw の起動時に、前回のモデルを読み込みます | | ログイン時にトレイを起動する | PC にログインしたら onw を起動します | | 起動時と 1 日ごとに更新を確認する | 新しい版を確認します。「今すぐ確認」ですぐ確認します | ### サーバーと API 設定の「サーバーと API」タブ | 項目 | 内容 | |---|---| | ポート | API とチャット画面のポート(既定 8000) | | API キー(任意) | 設定すると、`/v1` の API に `Authorization: Bearer キー` が必要になります | | コンテキスト長 | 会話で使える最大の長さ。KV キャッシュは実際に使った分だけメモリを使うので、大きくしても短い会話は遅くなりません。変えても再コンパイルはありません | | LAN からの接続を許可する | 他の PC から API を使えるようにします(API キーの設定をおすすめします) | ### 速さとメモリ 設定の「速さとメモリ」タブ | 項目 | 内容 | |---|---| | デバイス | NPU(既定)か CPU | | 先読み検証(PLD)で高速化する | 要約や書き直しなど、元の文章をなぞる回答が速くなります | | メモリ節約モード | 1 トークン用と 16 トークン用のグラフを入れ替えて、片方だけを持ちます。待機中のメモリが約 4 割減る代わりに、回答の出だし数秒は遅めで、先読み検証は使いません。初回のコンパイルも並列にせず 1 つずつ行います(コンパイル中のメモリを抑えるため)。効くモデルがあるときだけ表示され、この PC で効くモデルの名前が出ます | | 厳格 | メモリ節約モードの追加。2 種類のグラフを同時に持たないので、メモリは最小になりますが、回答のたびに書き始めるまで数秒待ちます | | エキスパートのメモリ | Qwen3.6 系の MoE 用。上限を超えるエキスパートは SSD に置いたまま、必要なときだけ読みます(メモリが少なくても動きますが、遅くなります) | | 64 トークン処理 | 長いプロンプトの処理が約 2〜2.5 倍速くなります(dense モデル。Qwen3.6 系は別の方法で速くしています)。16 トークン用のグラフの代わりに読み込むので、メモリはほぼ増えません(+0.3〜0.5 GB)。auto はオン。off にすると今までどおり 16 トークンずつ(短い入力の多い使い方や、NPU 3720 で先読み検証を使いたいとき) | ### 詳細 設定の「詳細」タブ | 項目 | 内容 | |---|---| | NPUW 重み共有 | 重みを 1 コピーにしてメモリとコンパイル時間を減らします。auto は Lunar Lake 以降でオン(MoE と区間の多いモデルは対象外)。おかしな出力になったら off にしてください | | 実験的な 3 つ | MoE モデルでも NPUW 重み共有を使う・NPUW の非同期実行・コンパイル結果を重みなしで保存する。NPUW 重み共有がオンのときだけ効きます。おかしな出力や読み込みエラーが出たらオフに戻してください | 詳細タブの変更は、モデルを読み込み直したあとに反映されます。どの設定で再コンパイルが要るかは [README の表](README.md#onw-コマンドと設定) にまとめてあります。 ## 他のアプリから使う(OpenAI 互換 API ほか) onw は **OpenAI 互換 API** です。OpenAI の API に対応したアプリ(チャットアプリ、エディターの拡張機能、自作の プログラムなど)で、次のように設定します。 - **base URL**:`http://localhost:8000/v1`(「サーバー」タブの「コピー」でコピーできます) - **モデル名**:「サーバー」タブに出る名前(例:`gemma-4-E4B-it-onw`) - **API キー**:設定していなければ何を入れても構いません **モデルの切り替え**:`/v1/models` には、このパソコンにあるモデルが全部出ます(文脈長 `context_length`、最大出力 `max_output_tokens` つき。読み込み中のものは `"loaded": true`)。リクエストのモデル名に別のモデルの名前を指定すると、 今のモデルを閉じてそのモデルを読み込んでから答えます(同時に読み込むのは 1 つだけ。初めてのモデルはコンパイルのぶん 時間がかかります)。知らない名前のときは今のモデルが答えます。設定「API からモデルを切り替えられるようにする」で オフにできます。 温度などを送らないアプリ(OpenCode など)では、「サーバー」タブの「このモデルの既定」で生成設定を「モデルの推奨値」に すると、温度 0 で同じ言葉を繰り返すのを避けられます。 **Anthropic 形式・Responses API のアプリ**:onw は OpenAI のチャット API のほかに、Anthropic の Messages API (`/v1/messages`、Claude Code など)と OpenAI の Responses API(`/v1/responses`、Codex CLI など)にも答えます。 - **Claude Code**:環境変数 `ANTHROPIC_BASE_URL=http://localhost:8000`、`ANTHROPIC_AUTH_TOKEN=onw`(API キーを設定 していればそのキー)で起動します。モデル名は何でも構いません(今読み込んでいるモデルが答えます)。 - **Codex CLI**:`~/.codex/config.toml` に次のように書きます。 ```toml model = "onw" model_provider = "onw" [model_providers.onw] name = "onw" base_url = "http://localhost:8000/v1" wire_api = "responses" ``` エージェントのアプリは最初に長い指示(数千〜数万トークン)を送るので、最初の回答までは時間がかかります(2 回目からは 前の会話の続きを再利用するので速くなります)。ツール呼び出しに強いモデル(Ornith-1.5-9B、Qwen3.5-9B など)を使って ください。 ツール呼び出し、思考(`reasoning_content`)、ストリーミングなど、使える機能の詳細は [README の「サーバー」](README.md#サーバー(openai-互換-api)) を見てください。 ## 更新 新しい版が出ると、トレイの通知と onw ウィンドウの右下にお知らせが出ます。「更新する」を押すと、onw を入れ替えて 再起動し、同じモデルを読み込み直します(設定と会話の履歴はそのまま残ります)。お知らせの「変更点」で、何が 変わったかを読めます。 使う Python パッケージが変わる版では、再起動の途中でパッケージを入れ替えます(数分かかることがあり、Windows では その間コンソールに進み具合が出ます)。入れ替えに失敗したときは onw ウィンドウに案内が出るので、onw を終了して `setup.bat`(Ubuntu は `setup.sh`)をもう一度実行してください。 ## アンインストール onw のフォルダーにある `uninstall.bat`(Windows。既定では `%LOCALAPPDATA%\onw`)か `uninstall.sh`(Ubuntu。`~/onw`)を 実行します。消すものの一覧を出して確認したあと、onw を止めて、次を削除します。 - プログラム本体(onw のフォルダー) - 設定・ログ・会話の履歴と、ダウンロードしたモデル(モデルを残すには `uninstall.bat --keep-models`) - スタートメニュー(Ubuntu はアプリ一覧)の項目と、ログイン時の起動 設定で追加したモデルのフォルダーは消しません。保存先を onw の外のフォルダーにしている場合は、そこのモデルを消すか 別に確認します。コマンドでは `onw uninstall`(確認なしは `--yes`)です。 Microsoft Store 版の Python で入れた場合、設定とモデルはその Python 専用の見えない場所(`%LOCALAPPDATA%\Packages\PythonSoftwareFoundation.Python.3.…\LocalCache\Roaming\onw`)にあります。`uninstall.bat` はそこも正しく消します。 入れ直すときは、セットアップが python.org 版の Python を入れるよう案内します(Store 版は使いません)。 ## 困ったとき | 症状 | 対処 | |---|---| | 最初のロードがなかなか終わらない | 初回は NPU 向けのコンパイルに 10〜30 分かかります。「サーバー」タブの「NPU 向けの準備 k/n」が進んでいれば正常です | | メモリが足りない | 設定の「メモリ節約モード」(と「厳格」)、Qwen3.6 系なら「エキスパートのメモリ」を試してください。コンテキスト長を小さくしても、メモリはほとんど減りません | | 同じ言葉を何度も繰り返す(例:「訪れる訪れる訪れる…」) | 温度 0 では、一度繰り返しに入ると抜け出せないことがあります(特に Gemma。NPU の計算は CPU とわずかに違うため、CPU では出ない質問でも起きます)。チャット画面の「繰り返し抑制」を 1.2 くらいにしてください。Gemma を読み込むと、横に赤字で推奨値が出ます。API では `repetition_penalty: 1.2` を付けます | | 回答が出ず、思考だけで終わる | 最大トークンが足りません。チャット画面の「最大トークン」を増やしてください(「常に考える」モデルは 2048 以上がおすすめ) | | 「タスクトレイの onw は … のまま動いています」と出る | トレイのメニューから「終了」して、onw を起動し直してください | | モデルの状態が「途中」 | ダウンロードが途中で止まっています。「削除」してからダウンロードし直してください | | 読み込みに失敗する | 「サーバー」タブの「ログ」を開くと、理由が書いてあります。[Hugging Face のコミュニティ](https://huggingface.co/ryugyosoft/onw/discussions) で質問できます |