# 明日の作業方針（2026-06-18 まとめ / 翌日対応用）

## プロジェクトの全体像（確認済み）
1. **濃度の判定はLLMではない** → 濃度判定AI（RF-DETRスープ抽出＋ResNet濃度分類）または CSV の記入値が担当
2. **LLMは濃度を「参考情報」として受け取り**、総合的な評価を行う（濃度を当てさせない）
3. LLMの構造化評価出力を **学習データ** として、最終的なAIモデルを開発する
4. LLMは濃度判定が苦手 → 濃度は別AI/CSVに分離（この設計で確定）

## 今日までに完成・検証したこと
- **GPU化**: RTX 5060 + torch cu128。CPU比6〜8倍速。venvは `C:\rmlenv`
- **濃度判定の全520件精度**（人間ラベル基準・キャリブレーション適用後）
  - 高信頼(high)222件: 完全一致77% / ±1以内96% / MAE0.27
  - キャリブレーション: linear `{10→11,11→12,12→12,13→13,14→13}`（`calibration.json`、resolver自動適用）
- **可読性レイヤー**: スープが読めるか(RF-DETR抽出信頼度)で判定。湯気量は直接の閾値にしない
- **skip_if_steamy**: 不可読かつ湯気多(steam_mean≥0.8)はLLMに送らず`判定不可`レコードを生成
- **①前処理キャッシュ完了**: 全520件 → `density_cache.jsonl` ＋ `prepared_best_frames\`（最良フレーム画像）
- **10件テスト成功**: cache稼働・スキップ5/送信5・429なし・出力品質良好

## 残っている唯一の判断（明日決める）
**最終学習に使う「総合スコア」をどう作るか:**
- (A) LLMに総合スコアを1項目として出させる → プロンプト方針 `APIテスト/豚山スープ画像評価プロンプト方針.md` に総合点項目を追加してから全件実行
- (B) LLMは各項目（photo_quality/visual_density/water_level/oil_emulsification/boiling_heat_state/image_condition_score）だけ出し、後段モデルで合成
- ※ どちらでも今のパイプラインは動く。(A)なら学習データに直接スコアが入る

## 明日の実行手順
### 1. （Aを選ぶ場合のみ）プロンプトに総合スコア項目を追加
`APIテスト/豚山スープ画像評価プロンプト方針.md` に総合点の定義を追記。

### 2. 全件LLM送信（②）
```powershell
cd "C:\Users\NX023286.NEXYZ\Documents\開発しているもの\制作中\AIラーメン評価アルゴリズム分析"
$env:PYTHONIOENCODING = "utf-8"; $env:PYTHONUTF8 = "1"
& "C:\rmlenv\Scripts\python.exe" -u "local_batch_api\batch_process.py" --input "学習データ" --config "local_batch_api\config.test10.yaml"
```
- `density cache: 520 件読み込み` が出れば前処理なし（キャッシュ稼働）
- 既存10件は `already_done` でスキップ（二重課金なし）
- 残り約375件を4並列で送信 → **約10分・約330円**
- 不可読＋湯気多135件は自動でLLMスキップ（`判定不可`記録）

### 3. 結果確認
```powershell
& "C:\rmlenv\Scripts\python.exe" "local_batch_api\inspect_results.py"
```
学習データは `local_batch_api\output_full\training_dataset.csv` / `.jsonl` に出力される。

## 速度・費用メモ
- 並列設定（`config.test10.yaml` の concurrency）: `api_workers: 4` / `requests_per_minute: 60`。速くしたいなら 6〜8並列/120rpm。429が出たら下げる（自動リトライ実装済みなので事故にはならない）
- 費用: 全件 約330円（多くて400円台）。10件 約9円
- BytePlus上限はコンソール Activation Management で確認可（公開固定値なし・アカウント単位）

## 主要ファイル
- `local_batch_api/density_resolver.py` — 可読性＋最良フレーム＋濃度解決＋キャリブレーション
- `local_batch_api/prepare_densities.py` — ①前処理キャッシュ生成（--resume対応）
- `local_batch_api/batch_process.py` — ②LLM送信（cache読込・skip_if_steamy・最良フレーム送信）
- `local_batch_api/config.test10.yaml` — 設定（density / concurrency / paths）
- `local_batch_api/full_density_eval.py` — 全件精度検証
- `local_batch_api/fit_calibration.py` — キャリブレーション学習
- `local_batch_api/inspect_results.py` / `verify_cache.py` — 確認用
