Views
No views yet
<verdict> prefix; the score P(CONSISTENT) ∈ (0,1) is recovered by softmaxing the logits over the two single-token verdict words CONSISTENT and INCONSISTENT. The model is intended as a frozen reward signal during GRPO planner training and as a faithfulness-auditing tool offline.| Subfolder | Input class | Negative strategies | Notes |
|---|---|---|---|
GB-S12 | BEV plot + speed profile | S1, S2 | Lighter — no scene-description corruption. |
GB-S123 | BEV plot + speed profile | S1, S2, S3 | All three failure modes. |
GP-S12 | Forward camera overlay + speed | S1, S2 | First-person view; uses calibration parquets. |
GP-S123 | Forward camera overlay + speed | S1, S2, S3 | All three failure modes. |
W replaced with geometrically incompatible donor waypoints.R.move_justification is swapped from a donor.R.scene is swapped from a different scene.1import torch
2from peft import PeftModel
3from transformers import AutoModelForImageTextToText, AutoProcessor
4
5BASE = "Qwen/Qwen3-VL-4B-Instruct"
6ADAPTER = "mjf-su/FaithfulnessCritic"
7SUBFOLDER = "GB-S12" # or GB-S123, GP-S12, GP-S123
8
9processor = AutoProcessor.from_pretrained(BASE, trust_remote_code=True)
10processor.tokenizer.padding_side = "left"
11
12base = AutoModelForImageTextToText.from_pretrained(
13 BASE, dtype=torch.bfloat16, trust_remote_code=True,
14)
15model = PeftModel.from_pretrained(base, ADAPTER, subfolder=SUBFOLDER)
16model.eval().to("cuda")
17
18# Build the chat-template prompt with image(s) + text and append "<verdict>"
19# at the end so the next-token logits are over CONSISTENT / INCONSISTENT.
20# See `critic_rewards.py:CriticRewardBase._build_prompt` for the full template
21# and `_score_logit_mode` for the scoring path used to produce P(CONSISTENT).critic_library/Gemini_samples/{BEV,fPOV}/.(Image, R, A, W):GB-* adapters consume a BEV trajectory plot + a speed-vs-time strip rendered purely from W.GP-* adapters consume the camera frame with W projected as a teal polyline (full calibration + egomotion required) plus the same speed strip.<think>{ "scene": ..., "move_justification": ... }</think>.<action> Longitudinal: <label> | Lateral: <label> </action> from the canonical 7-longitudinal × 11-lateral vocabulary.<wp>[x, y, θ]</wp>, vehicle-relative, 0.25 s spacing, 6 s horizon.<verdict> prefix. Two scoring paths are supported:| Mode | What it does | Range |
|---|---|---|
logit (default) | Softmax over the two single-token verdict ids at the prompt's last position. | P(CONSISTENT) ∈ (0,1) |
generate | Greedy-decode 8 tokens, regex-parse CONSISTENT / INCONSISTENT. | {0.0, 0.5, 1.0} |
logit mode for reward signals (smooth) and generate mode for human-readable verdicts.r=256, lr=1e-4).CONSISTENT / INCONSISTENT verdict token.(R, A, W) triplets from a Gemini-curated subset of PhysicalAI-Reason-US.scene_id, same train/val split.seed=42) planner outputs from two driving VLM planners, with gemini-3-pro-preview (few-shot, system-prompt + 6 worked examples) used as the LLM judge. Per-axis verdicts are aggregated to a single overall ∈ {CONSISTENT, INCONSISTENT, AMBIGUOUS}. Agreement = accuracy treating Gemini's overall as ground truth, computed on the subset where both Gemini and the critic returned a non-null verdict (Gemini parse failures and AMBIGUOUS are skipped).Planner Critic Agreement P R F1 μP|C μP|IC
─────────────────────────────────────────────────────────────────────────
MetaAction-1e GB-S12 0.764 0.763 0.750 0.756 0.750 0.222
MetaAction-1e GB-S123 0.724 0.732 0.683 0.707 0.683 0.238
MetaAction-1e GP-S12 0.732 0.729 0.717 0.723 0.717 0.254
MetaAction-1e GP-S123 0.732 0.737 0.700 0.718 0.700 0.238
ADEnReward GB-S12 0.694 0.672 0.717 0.694 0.717 0.328
ADEnReward GB-S123 0.653 0.644 0.633 0.639 0.633 0.328
ADEnReward GP-S12 0.734 0.714 0.750 0.732 0.750 0.281
ADEnReward GP-S123 0.694 0.696 0.650 0.672 0.650 0.266CONSISTENT as the positive class.P(CONSISTENT) on Gemini-CONSISTENT records (higher is better).P(CONSISTENT) on Gemini-INCONSISTENT records (lower is better; the spread μP|C − μP|IC ≈ 0.45–0.53 across variants indicates the critic is well-discriminating despite a non-trivial decision-boundary error rate).GB-S12 for MetaAction-1e (0.764), GP-S12 for ADEnReward (0.734). Adding S3 (scene-description corruption) to the training mix did not improve agreement on either planner in this benchmark.CONSISTENT verdict means R/A/W are mutually self-consistent and consistent with the scene; it does not mean the trajectory is collision-free, comfortable, or legally compliant.generate mode; the reward signal is best read via logit mode.null (parse / render failure) when calibration parquets or camera frames are missing — see n_critic_failure in the eval summaries.mjf-su/FaithfulnessCritic/
├── GB-S12/ adapter_config.json + adapter_model.safetensors
├── GB-S123/ ...
├── GP-S12/ ...
└── GP-S123/ ...