TRIAGE-4B-P19-SFT

SFT checkpoints of TRIAGE for early sepsis prediction (P19), one per cross-validation split. Part of the TRIAGE collection.

TRIAGE trains an LLM to reason dialectically over the competing clinical outcomes. Given a patient's irregularly sampled medical time series, the model writes a rationale for sepsis and a rationale for no sepsis before it commits to a final decision, and the risk score is read from the model's probability over that decision. This mitigates risk polarization, the collapse of graded risk into overconfident predictions under conventional LLM reasoning, so that one model gives both a clinician-readable rationale and a risk score comparable across patients.

The SFT + RL checkpoints post-trained from this stage are released as TRIAGE-4B-P19.

Model description

Base model Qwen/Qwen3-4B-Base
Task Early sepsis prediction on P19 (PhysioNet Challenge 2019): will the patient experience sepsis onset within the next 6 hours
Training supervised fine-tuning on dialectical-reasoning data with TRL, 3 epochs (triage_sft/)
Layout split_1 … split_5, one checkpoint per split, each in its own subfolder
Selection per split, the checkpoint with the best validation AUPRC over the SFT run

Input and output format

The model expects the chat-style prompt the training data uses: the patient's static features and per-variable (time, value) series, the question, and the reasoning order (which outcome to argue for first). The exact prompt and how it is built from the raw data are in triage_sft/data/P19/.

The answer has three headed sections, in the order the prompt asks for:

## Rationale for sepsis
...

## Rationale for no sepsis
...

## Final Decision
1

0 means no sepsis and 1 means sepsis. The risk score is the next-token probability of "1" at the decision position, renormalised over the two tokens "0" and "1", averaged over the two rationale orderings.

Quick start

from transformers import AutoModelForCausalLM, AutoTokenizer

split = "split_1"  # one of split_1 ... split_5
repo  = "Hyeongwon/TRIAGE-4B-P19-SFT"

tokenizer = AutoTokenizer.from_pretrained(repo, subfolder=split)
model     = AutoModelForCausalLM.from_pretrained(repo, subfolder=split, torch_dtype="auto", device_map="auto")

Scoring is two-step: sample the dialectical reasoning at temperature 0.7 up to the ## Final Decision header, then read the logits of "0" and "1" at the next position. A complete predict_risk function is in the GitHub README.

Data

No data is included in this repository. P19 asks to be cited: Reyna et al., Early Prediction of Sepsis From Clinical Data: The PhysioNet/Computing in Cardiology Challenge 2019, Critical Care Medicine, 2019.

License

Model checkpoints are released under CC BY-NC 4.0 (non-commercial). The base model and the datasets remain under their own licences.

Citation

@article{jang2026triage,
  title={TRIAGE: Dialectical LLM Reasoning for Explainable Risk Prediction on Irregularly Sampled Medical Time Series},
  author={Jang, Hyeongwon and Chu, Gyouk and Kim, Changhun and Yoon, Hangyul and Lee, Jeonguk and Yang, Eunho and Park, Joonhyung},
  journal={arXiv preprint arXiv:2606.09030},
  year={2026}
}

Framework versions

  • Transformers: 4.57.3
  • PyTorch: 2.6.0
  • Datasets: 3.6.0
  • Tokenizers: 0.22.2
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for Hyeongwon/TRIAGE-4B-P19-SFT

Finetuned
(523)
this model

Collection including Hyeongwon/TRIAGE-4B-P19-SFT

Paper for Hyeongwon/TRIAGE-4B-P19-SFT