Skip to content

Medical Triage Alignment (MTA) dataset use case#16

Open
barry-ravichandran wants to merge 6 commits into
IBM:mainfrom
barry-ravichandran:feat/medical-triage-prompt-baseline
Open

Medical Triage Alignment (MTA) dataset use case#16
barry-ravichandran wants to merge 6 commits into
IBM:mainfrom
barry-ravichandran:feat/medical-triage-prompt-baseline

Conversation

@barry-ravichandran

Copy link
Copy Markdown

This PR adds in the use case for the Medical Triage Alignment dataset that focuses on multiple choice decision-making in hig stakes medical triage scenarios.

Related paper: https://aclanthology.org/2024.naacl-industry.18/

Below is a summary of the feature additions and misc fixes:

  • Added a new Medical Triage Alignment use case module.
  • Added utilities for downloading and converting the MTA dataset.
  • Added a new example notebook that runs a prompt-aligned MTA benchmark.
  • Fixed a bug in the MCQA positional bias benchmark where empty model responses caused failures.
  • Loosened the mergekit version pin in pyproject.toml so pip can resolve the dependency cleanly.

Add evaluation use case for the MTA (Medical Triage Alignment) dataset.
Supports baseline (neutral) and attribute-aligned system prompts using
chat template format (system + user roles). Includes deterministic
answer shuffling for position bias measurement.

System prompts sourced from ITM-Kitware/align-system.

Signed-off-by: Bharadwaj Ravichandran (Barry) <barry.ravichandran@kitware.com>
Add shared utilities for the Medical Triage Alignment dataset:
- download_raw(): fetch NAACL24 data from ITM-Kitware/align-system
- convert_to_eval(): convert to evaluation format using highest KDMA
  score as ground truth
- convert_to_semantic_pairs(): build contrastive training pairs
- augment_semantic(): augment training data (7 types x 2 orderings)

Signed-off-by: Bharadwaj Ravichandran (Barry) <barry.ravichandran@kitware.com>
Add notebook comparing zero-shot baseline vs attribute-aligned prompts
across 6 MTA ethical attributes. Fetches prompts directly from
ITM-Kitware/align-system via AST parsing. Runs 10 stochastic trials
per condition to report mean +/- std accuracy.

Signed-off-by: Bharadwaj Ravichandran (Barry) <barry.ravichandran@kitware.com>
Return {"mean": 0.0, "std": 0.0} when all responses are None instead
of raising ZeroDivisionError. This occurs when the model outputs
unparseable text at extreme steering strengths.

Signed-off-by: Bharadwaj Ravichandran (Barry) <barry.ravichandran@kitware.com>
Allow mergekit>=0.0.5.1 instead of pinning to exactly 0.0.5.1,
which caused dependency resolution failures during pip install.

Signed-off-by: Bharadwaj Ravichandran (Barry) <barry.ravichandran@kitware.com>
@barry-ravichandran barry-ravichandran force-pushed the feat/medical-triage-prompt-baseline branch from 36d2856 to 48e3dc9 Compare April 7, 2026 18:46
@emiehling

Copy link
Copy Markdown
Collaborator

Thanks @barry-ravichandran I'll take a look!

Signed-off-by: Bharadwaj Ravichandran (Barry) <barry.ravichandran@kitware.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants