Instructions to use rdecoster/granite-4.0-1b-emergency-classifier-lora with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use rdecoster/granite-4.0-1b-emergency-classifier-lora with PEFT:
from peft import PeftModel from transformers import AutoModelForCausalLM base_model = AutoModelForCausalLM.from_pretrained("ibm-granite/granite-4.0-1b") model = PeftModel.from_pretrained(base_model, "rdecoster/granite-4.0-1b-emergency-classifier-lora") - Notebooks
- Google Colab
- Kaggle
Emergency Report Classifier β LoRA β 1 epoch
Classifies English disaster-related social-media messages into ten humanitarian categories. Adapter only; base weights are required.
Related releases
Compatibility and usage
Works only with ibm-granite/granite-4.0-1b. PEFT format; incompatible with other Granite sizes or versions. Adapter size is approximately 8.1 MiB.
Download classify_example.py from this repository, then run:
pip install torch transformers peft
python classify_example.py --adapter rdecoster/granite-4.0-1b-emergency-classifier-lora --text "We evacuated our home because of the fire."
The script includes the training prompt and ten category names. Verified PyTorch inference uses float32; the MLX precision results below refer to separately merged models.
Training
5,000 HumAID messages; 1 epoch; seed 42. Original base frozen, with no quantization during training. PyTorch, PEFT and TRL on Apple MPS.
LoRA rank 8, alpha 16, dropout 0.05; q_proj/v_proj across 40 layers; 2,129,920 trainable parameters. Learning rate 0.0002 with linear decay; batch 1, accumulation 4; answer-only loss; float32.
Training took approximately 43 minutes. Each release started from the original base; the two-epoch run did not resume the one-epoch adapter. Exact base revision was not recorded in the original training metadata.
Validation comparison
Same 742 messages from Maryland floods 2018, excluded from training. Macro F1 averages the eight categories represented in this event.
| Model | Inference precision | Accuracy | Macro F1 |
|---|---|---|---|
| Original Granite | Float32 | 34.1% | 0.340 |
| LoRA, 1 epoch | Float32 | 71.4% | 0.706 |
| LoRA, 1 epoch | BF16 | 71.7% | 0.709 |
| LoRA, 1 epoch | 4-bit | 67.5% | 0.648 |
| LoRA, 2 epochs | Float32 | 72.8% | 0.707 |
| LoRA, 2 epochs | BF16 | 72.6% | 0.704 |
| LoRA, 2 epochs | 4-bit | 70.8% | 0.673 |
| QLoRA, 1 epoch | 4-bit | 69.0% | 0.664 |
| QLoRA, 2 epochs | 4-bit | 71.8% | 0.702 |
All runs use identical prompts, greedy decoding and a 40-token limit. The original baseline uses PyTorch; adapted precision checks use MLX. LoRA precision checks use merged copies; QLoRA uses a quantized base plus adapter. Framework and conversion differences prevent attributing results solely to quantization.
Canada wildfire test comparison
Same 2,242 messages from Canada wildfires 2016, excluded from training. Macro F1 averages the eight categories represented in this event. These test scores use a different event from the validation scores above.
| Model | Inference precision | Accuracy | Macro F1 |
|---|---|---|---|
| Original Granite 4.0 1B | Float32 | 30.9% | 0.289 |
| Granite 4.2 8B, no task training | BF16 | 39.3% | 0.392 |
| LoRA, 1 epoch | Float32 | 83.7% | 0.698 |
| LoRA, 2 epochs | BF16 | 83.3% | 0.698 |
| LoRA, 2 epochs | 4-bit | 81.5% | 0.661 |
| QLoRA, 2 epochs | 4-bit | 81.4% | 0.702 |
One-epoch LoRA has the highest accuracy; two-epoch QLoRA has the highest macro F1 by a small margin. No statistical significance is established.
All runs used the same messages and prompts, greedy decoding and a 40-token limit. Original and one-epoch LoRA used PyTorch float32/batch 16; two-epoch adapted runs used MLX/batch 1. LoRA MLX results use merged models; QLoRA uses its quantized base plus adapter. Granite 4.2 used BF16/batch 1 with thinking disabled; greedy decoding differs from IBM's recommended sampling. This compares these inference setups, not model size or quantization in isolation.
Data and scope
Trained for humanitarian-computing research using HumAID (Alam et al., 2021). No dataset text or prediction logs are included.
See the source terms and QCRI dataset card, which provide differing license information. Source terms do not explicitly address adapter redistribution; no endorsement or explicit permission is claimed. The base model is Apache-2.0 licensed; this does not automatically determine the adapter or data license.
Results cover individual historical events, not general emergency-response reliability. Public-data exposure during pretraining cannot be ruled out. Research prototype; not validated for autonomous emergency decisions.
- Downloads last month
- 29
Model tree for rdecoster/granite-4.0-1b-emergency-classifier-lora
Base model
ibm-granite/granite-4.0-1b-base