Add frozen Thinker cache-path control

This commit is contained in:
Xin Wang
2026-08-24 01:07:42 +08:00
parent c5e2e044a8
commit 3cc0c3da85
2 changed files with 69 additions and 15 deletions
+32
View File
@@ -1072,6 +1072,38 @@ and `valid/`, and writes the aggregate metrics to `metrics.json`. Add
Treat Sessions 1, 2, and 3 as the official test set: inspect their metrics only
after the training recipe and hyperparameters have been fixed.
To isolate whether a score change comes from LoRA or from the dense-cache
reconstruction path, run the same evaluator without `--adapter-checkpoint` and
load the original frozen 8-second head:
```bash
FROZEN_HEAD=checkpoints/easycom_open_stream_2fps_8s_head_seed0.pth
CUDA_VISIBLE_DEVICES=0,1,2 \
OMP_NUM_THREADS=1 \
MKL_NUM_THREADS=1 \
OPENBLAS_NUM_THREADS=1 \
PYTORCH_ALLOC_CONF=expandable_segments:True \
TORCH_NCCL_ASYNC_ERROR_HANDLING=1 \
torchrun --standalone --nproc_per_node=3 eval_omni_turn_lora.py \
--model-id /data1/yfzx/wangx/Models/Qwen2.5-Omni-3B \
--cache-dir /data1/yfzx/wangx/Datasets/easycom/omni_lora_cache_dense_8s/Session_3 \
--cache-dir /data1/yfzx/wangx/Datasets/easycom/omni_lora_cache_dense_8s/Session_2 \
--cache-dir /data1/yfzx/wangx/Datasets/easycom/omni_lora_cache_dense_8s/Session_1 \
--head-checkpoint "${FROZEN_HEAD}" \
--output-dir results/easycom_frozen_8s_dense_cache_control \
--batch-size 2 \
--block-cache-size 32 \
--dtype bfloat16 \
--flash-attention-2 \
--ddp-timeout-minutes 60
```
This control should approach the previously reported frozen 8-second score of
58.51937 full-timeline mean mAP. A material mismatch indicates a representation
difference between dense-cache reconstruction and the earlier open-stream
feature files; a close match isolates the regression to LoRA/head training.
For a speed-only alternative, `train_omni_turn_lora.py` supports a two-GPU
producer-consumer benchmark. The producer GPU runs the frozen AV towers and
places current-tail embeddings in a bounded CPU queue while the consumer GPU