CoolFace
Modelpublic

jatshi/EvidenceAgent-MM-Qwen3-1.7B-GRPO-LoRA

sourceHugging Faceapache-2.0updated 2mo agoView on Hugging Face
0likes14downloads
Model Card

EvidenceAgent-MM Qwen3-1.7B GRPO LoRA

This repository contains the final LoRA adapter for EvidenceAgent-MM, a verifiable multimodal meeting and classroom assistant. The adapter turns retrieved evidence into a strict JSON response containing an answer or safe refusal, claim-level evidence IDs, missing-evidence fields, a clarification question, and confidence.

The adapter must be loaded on top of Qwen/Qwen3-1.7B. It is not an ASR, OCR, or speaker-diarization model; those upstream tools belong to the EvidenceAgent-MM retrieval pipeline.

Training

The training chain was executed on one RTX 4090:

  1. 1.supervised fine-tuning on schema-valid grounded responses;
  2. 2.DPO on chosen/rejected evidence and refusal behavior;
  3. 3.100 GRPO steps with a shaped verifiability reward.

The native Qwen chat template was used with thinking disabled. The GRPO run used 80 training examples from the checked-in EAMM bronze benchmark. Mean training reward increased from 0.5532 over the first 20 steps to 0.7796 over the last 20 steps (0.7101 across all 100 steps).

Evaluation

The held-out benchmark is deliberately small: 120 questions across 12 synthetic meeting sessions, with session-level train/validation/test separation. Validation and test each contain 20 questions from two sessions. These numbers demonstrate the structured-output and evidence-contract behavior on this bronze benchmark; they are not evidence of broad real-world meeting generalization.

SplitSamplesTotal rewardValid JSONGroundingCitationAbstentionMean latency
test200.92001.00001.00000.80000.80005.38 s
validation200.92001.00001.00000.80000.80005.29 s

Inference was measured with Transformers on an RTX 4090. Peak allocated VRAM was approximately 3.40 GiB.

Usage

python
import torch
from peft import PeftModel
from transformers import AutoModelForCausalLM, AutoTokenizer

base_id = "Qwen/Qwen3-1.7B"
adapter_id = "jatshi/EvidenceAgent-MM-Qwen3-1.7B-GRPO-LoRA"

tokenizer = AutoTokenizer.from_pretrained(adapter_id)
base = AutoModelForCausalLM.from_pretrained(
    base_id,
    torch_dtype=torch.bfloat16,
    device_map="auto",
)
model = PeftModel.from_pretrained(base, adapter_id)

messages = [
    {
        "role": "system",
        "content": (
            "Return only the EvidenceAgent-MM JSON contract. Cite only evidence "
            "IDs present in the supplied context; clarify or abstain when evidence "
            "is insufficient."
        ),
    },
    {
        "role": "user",
        "content": (
            "Question: 谁提出了低延迟检索方案?\n"
            "Evidence:\n"
            "- [meeting:utt:01] 00:10-00:14 张同学:我建议采用方案 A。\n"
            "- [meeting:ocr:01] slide 4: 方案 A,P95=40ms"
        ),
    },
]
inputs = tokenizer.apply_chat_template(
    messages,
    tokenize=True,
    add_generation_prompt=True,
    enable_thinking=False,
    return_tensors="pt",
).to(model.device)
with torch.inference_mode():
    output = model.generate(inputs, max_new_tokens=512, do_sample=False)
print(tokenizer.decode(output[0, inputs.shape[-1]:], skip_special_tokens=True))

Limitations

  • —The benchmark sessions are synthetic and templated; only two sessions are held out for each evaluation split.
  • —Reward components validate schema, status, citation overlap, grounding, and abstention behavior. They do not replace human factuality review.
  • —The model can still omit secondary cross-modal citations, reflected in the citation score of 0.80.
  • —Use the full EvidenceAgent-MM evidence gate in safety-sensitive settings. Do not treat model confidence as calibrated probability.

Reproducibility

Training code, dataset generator, reward implementation, DeepSpeed single-GPU comparison, evaluation scripts, and deterministic ablations are in the EvidenceAgent-MM repository.

Framework versions for this run: PyTorch 2.10.0+cu128, Transformers 5.14.1, TRL 0.29.1, PEFT 0.20.0.