summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md21
1 files changed, 20 insertions, 1 deletions
diff --git a/README.md b/README.md
index 50f98ec..bf5e6ac 100644
--- a/README.md
+++ b/README.md
@@ -40,7 +40,7 @@ positiveは`base, user`の順でカンマ区切り、negativeは`base\nuser`のé
モデルは `<root>/checkpoints`、`vae`、`lora`、`controlnet` からだけ読み込みます。
VAE componentは生成に常に必要です。`model.vae`を省略した場合はcheckpoint内蔵VAEを使い、
-指定した場合だけ外部VAEへ置き換えます。設定されたLoRAは起動時にすべてロードされ、3つの
+指定した場合だけ外部VAEへ置き換えます。設定されたLoRAは初回生成時にすべてロードされ、3つの
生成ツールに共通して適用されます。MCP呼び出しごとのLoRA切替には対応しません。
Depth/Openpose の annotator 重みは `controlnet_aux` のローカルキャッシュに事前配置して
ください。推論時のダウンロードは行いません。
@@ -53,6 +53,25 @@ GPU を使わないテストは `uv run pytest`、lint は `uv run ruff check .`
`uv run pyright` で実行できます。実モデルの smoke test は環境依存のため自動テストには
含めていません。
+起動・MCP初期化・ツール一覧取得では画像モデルをロードせず、CUDAを初期化しません。
+設定とモデルファイルの存在は起動時に確認し、有効な生成要求の実行時にSD本体・VAE・LoRAを
+ワーカースレッドでロードします。モデル互換性やCUDAのエラーは初回生成時に返されます。
+同一プロセスではロード済みモデルを再利用し、stdioプロセスの終了で解放します。
+一覧取得と生成を別プロセスで行うクライアントでは、生成プロセスごとのロードが必要です。
+
+実際のCLI/stdio経路の一覧取得とVRAMを確認するには次を実行します(常駐化は不要です)。
+
+```powershell
+uv run python script\smoke_stdio.py --config data\config.toml `
+ --result data\verification-lazy-load\list.json
+```
+
+`--images 2`を追加すると、固定seedで同じ接続から2枚生成し、PNG、画素ハッシュ、時間、
+PNGメタデータ、stderr、生成前後とプロセス終了後の`nvidia-smi`結果を記録します。
+seed固定は確認スクリプト内だけに適用され、製品のMCPスキーマやseed処理は変えません。
+要求の待機上限は`--timeout`で指定します(既定300秒)。Windowsでプロセス別VRAMが
+`N/A`の場合は取得不能として扱い、GPU全体の使用量とプロセスの終了も確認してください。
+
実GPUとMCP経路を使う`generate_image` smoke testは次のように実行できます。
```powershell