# ローカルLLM評価手順（検証用運用記録の傾向に基づく）

## 1. 記録から読み取れる傾向

- **入力長**：記録00000の1,024トークンから記録00160の約12,704トークンまで、ほぼ一定ペース（約73トークン/記録）で増加している。
- **開始待ち時間**：入力長の増加に応じて全体的に長期化する傾向がある一方、同一入力長帯でも1〜80秒と幅が大きい。この差は**同時利用数**で説明できる可能性が高い（同時4件の記録は待ち時間が長くなりやすい）。
- **同時利用数**：1〜4件が周期的に循環しており、負荷変動の要因として評価に組み込むべきである。
- ※上記は記録の並びからの**推測**であり、相関の確定には後述の計測が必要。

## 2. 評価手順

### 手順1：計測環境の固定
- GPUモデル、ドライバ、推論エンジン（llama.cpp、vLLM等）のバージョンを記録する。
- 電源プランを「高性能」に設定し、他の常駐処理を停止する。

### 手順2：測定項目の定義
1. **生成速度**：1秒あたりの出力トークン数。
2. **入力処理時間（プロンプト処理時間）**：リクエスト送信から最初のトークンが出るまでの時間。
3. **GPUメモリ使用量**：`nvidia-smi`を1秒間隔で実行し、最大値と平均値を記録する。
4. **開始待ち時間**：キュー投入から処理開始までの時間。

### 手順3：入力長を変えた測定
- 1,024 / 2,048 / 4,096 / 8,192 / 12,288トークンの5水準のプロンプトを用意する。
- 各水準で同時利用1件の状態生成速度と入力処理時間を10回測定し、平均と標準偏差を取る。
- 目視ではなくタイムスタンプ（ログ）で計測する。

### 手順4：同時利用数を変えた測定
- 同時1〜4件の4水準について、手順3と同じ入力長で測定する。
- 同時数を増やす際は、全リクエストの開始時刻をそろえて実行する。
- 各水準で開始待ち時間の分布（最短・中央値・最長）を記録する。

### 手順5：GPUメモリの確認
- 各組み合わせ実行中の最大メモリ使用量を記録し、搭載メモリに対する余裕率（例：80%未満か）を判定する。
- 同時4件×最長入力でのOOM（メモリ不足エラー）の有無を確認する。

### 手順6：用途別の確認
- 社内文書の要約・コードの説明・FAQ作成・議事録整理の4用途ごとに、出力の正確性（抜け漏れチェック）、応答時間の変動、ログの保存先と保持期間を確認する。

### 手順7：結果のまとめ
- 横軸に入力長、縦軸に待ち時間・生成速度を取り、同時数別に色分けしたグラフを作成する。
- 同時数と待ち時間の相関を数値（相関係数）で確認し、「入力長起因か・同時数起因か」を切り分けて結論とする。