Per-query results, contrasts, and run checkpoints for CADIF (a Composition Assay for De-confounding Instruction-Following), a control-task battery for instruction-following retrieval. A paper describing CADIF is in preparation.
CADIF asks whether an instruction-conditioned retriever actually uses an instruction's composition, or only exploits the topical words it adds. The headline readout is a within-model contrast, the correct instruction scored against its own word-shuffled twin:
Delta_comp(q) = pMRR_real(q) - pMRR_placebo(q)
A bag-of-words ranker is invariant to the shuffle, so BM25 scores Delta_comp = 0 exactly. That
algebraic zero anchors a floor that neither lexical expansion nor topic drift can lift. This
dataset releases the per-query arrays behind every number in the paper, so each verdict is
checkable rather than trusted.
Code: the battery that produced these files is at
github.com/tardellirs/cadif, archived on Zenodo (10.5281/zenodo.21297047). Base corpora: the FollowIR and mFollowIR query/document pairs are not redistributed here; they are loaded from their original sources (Weller et al., 2024, 2025).
| Group | Count | Pattern | Contents |
|---|---|---|---|
| Per-query marginals | 57 | <model>_marginal_<collections>_pool<N>.json | The core files. Per-query p-MRR for every arm (REAL / SWAP / PLACEBO / NO-INSTR) and the de-confounded contrasts, for each model, collection group, and pool depth. |
| Compliance Ratio | 6 | oracle_cr*.json | The oracle ceiling and the oracle-normalized Compliance Ratio (per-query delta_comp, oracle, CR). |
| FLIP crossover | 9 | flip_crossover_*.json | The fluent meaning-inversion crossover (interaction I per pair). The *_v2_42.json files are the N=38 audited set (Promptriever, RepLLaMA, mE5-large, and the ContextualAI reranker at 1B and 2B); the remaining files are the earlier curated run. |
| Checkpoints | 31 | checkpoints/ckpt_*.rows.json / .npz | Resumable run state (doc vectors for bi-encoders, per-query rows for rerankers), so a preempted GPU run resumes rather than restarts. |
| Auxiliary | ~9 | symbolic_follower.json, null_family_sesoi.json, bm25_floor.json, cross_model_table.json, nevir_crossover.json, fluency_dissociation.json, crosslingual_mfollowir.json | The model-free symbolic follower (positive control), the empirical SESOI null family, the BM25 floor, and the cross-model / NevIR / fluency / cross-lingual analyses. |
*_marginal_*.json){
"model": "...", "pool": 1000, "n": 104,
"aggregate": { "pmrr": [...], "follow_gain": [...] },
"per_query": [
{
"id": "robust04:305", "n_pool": 100, "n_cut": 26,
"pmrr_real": 0.0093, // correct-instruction demotion
"pmrr_placebo": ..., // word-shuffled twin
"pmrr_swap": ..., // wrong-instruction (drift confound)
"real_minus_placebo": ..., // Delta_comp <-- the headline
"real_minus_swap": ...,
"ndcg_og": ..., "ndcg_changed": ...
// graded runs add: pmrr_surface, real_minus_surface
}
]
}
The paper's verdict for a model is mean(real_minus_placebo) with its paired bootstrap CI,
sign-flip randomization p, TOST equivalence, and power. All of those are reproduced from the
per_query arrays by cadif/stats.py in the code repository.
from huggingface_hub import hf_hub_download
import json, numpy as np
repo = "tardellirs/cadif-followir-results"
f = hf_hub_download(repo, "ctxl-rerank-v2-instruct-multilingual-6b_marginal_robust04-news21-core17_pool1000.json",
repo_type="dataset")
d = json.load(open(f))
dcomp = np.array([q["real_minus_placebo"] for q in d["per_query"]])
print(f"Delta_comp = {dcomp.mean():+.4f} (n={len(dcomp)})") # +0.0720 -> clears the floor
excluir_cadif_*.json files hold the cross-benchmark
replication on ExcluIR (Zhang et al., 2024; 1036 exclusionary Wikipedia-QA items), where both a
bi-encoder and a cross-encoder follower clear the same algebraic floor (BM25 Delta_comp = 0
exact) on a corpus and construction independent of FollowIR.Released under CC-BY-4.0. The underlying model weights and the FollowIR/mFollowIR corpora retain their own licenses.
Until the accompanying paper is publicly available, please cite this dataset (this entry will be superseded by the article citation once it appears):
@misc{cadif2026,
title = {CADIF: A Composition Assay for De-confounding Instruction-Following},
author = {Stekel, Tardelli},
year = {2026},
publisher = {Hugging Face},
doi = {10.57967/hf/9547},
url = {https://doi.org/10.57967/hf/9547}
}
500 commits
Per-query results, contrasts, and run checkpoints for CADIF (a Composition Assay for De-confounding Instruction-Following), a control-task battery for instruction-following retrieval. A paper describing CADIF is in preparation.
CADIF asks whether an instruction-conditioned retriever actually uses an instruction's composition, or only exploits the topical words it adds. The headline readout is a within-model contrast, the correct instruction scored against its own word-shuffled twin:
Delta_comp(q) = pMRR_real(q) - pMRR_placebo(q)
A bag-of-words ranker is invariant to the shuffle, so BM25 scores Delta_comp = 0 exactly. That
algebraic zero anchors a floor that neither lexical expansion nor topic drift can lift. This
dataset releases the per-query arrays behind every number in the paper, so each verdict is
checkable rather than trusted.
Code: the battery that produced these files is at
github.com/tardellirs/cadif, archived on Zenodo (10.5281/zenodo.21297047). Base corpora: the FollowIR and mFollowIR query/document pairs are not redistributed here; they are loaded from their original sources (Weller et al., 2024, 2025).
| Group | Count | Pattern | Contents |
|---|---|---|---|
| Per-query marginals | 57 | <model>_marginal_<collections>_pool<N>.json | The core files. Per-query p-MRR for every arm (REAL / SWAP / PLACEBO / NO-INSTR) and the de-confounded contrasts, for each model, collection group, and pool depth. |
| Compliance Ratio | 6 | oracle_cr*.json | The oracle ceiling and the oracle-normalized Compliance Ratio (per-query delta_comp, oracle, CR). |
| FLIP crossover | 9 | flip_crossover_*.json | The fluent meaning-inversion crossover (interaction I per pair). The *_v2_42.json files are the N=38 audited set (Promptriever, RepLLaMA, mE5-large, and the ContextualAI reranker at 1B and 2B); the remaining files are the earlier curated run. |
| Checkpoints | 31 | checkpoints/ckpt_*.rows.json / .npz | Resumable run state (doc vectors for bi-encoders, per-query rows for rerankers), so a preempted GPU run resumes rather than restarts. |
| Auxiliary | ~9 | symbolic_follower.json, null_family_sesoi.json, bm25_floor.json, cross_model_table.json, nevir_crossover.json, fluency_dissociation.json, crosslingual_mfollowir.json | The model-free symbolic follower (positive control), the empirical SESOI null family, the BM25 floor, and the cross-model / NevIR / fluency / cross-lingual analyses. |
*_marginal_*.json){
"model": "...", "pool": 1000, "n": 104,
"aggregate": { "pmrr": [...], "follow_gain": [...] },
"per_query": [
{
"id": "robust04:305", "n_pool": 100, "n_cut": 26,
"pmrr_real": 0.0093, // correct-instruction demotion
"pmrr_placebo": ..., // word-shuffled twin
"pmrr_swap": ..., // wrong-instruction (drift confound)
"real_minus_placebo": ..., // Delta_comp <-- the headline
"real_minus_swap": ...,
"ndcg_og": ..., "ndcg_changed": ...
// graded runs add: pmrr_surface, real_minus_surface
}
]
}
The paper's verdict for a model is mean(real_minus_placebo) with its paired bootstrap CI,
sign-flip randomization p, TOST equivalence, and power. All of those are reproduced from the
per_query arrays by cadif/stats.py in the code repository.
from huggingface_hub import hf_hub_download
import json, numpy as np
repo = "tardellirs/cadif-followir-results"
f = hf_hub_download(repo, "ctxl-rerank-v2-instruct-multilingual-6b_marginal_robust04-news21-core17_pool1000.json",
repo_type="dataset")
d = json.load(open(f))
dcomp = np.array([q["real_minus_placebo"] for q in d["per_query"]])
print(f"Delta_comp = {dcomp.mean():+.4f} (n={len(dcomp)})") # +0.0720 -> clears the floor
excluir_cadif_*.json files hold the cross-benchmark
replication on ExcluIR (Zhang et al., 2024; 1036 exclusionary Wikipedia-QA items), where both a
bi-encoder and a cross-encoder follower clear the same algebraic floor (BM25 Delta_comp = 0
exact) on a corpus and construction independent of FollowIR.Released under CC-BY-4.0. The underlying model weights and the FollowIR/mFollowIR corpora retain their own licenses.
Until the accompanying paper is publicly available, please cite this dataset (this entry will be superseded by the article citation once it appears):
@misc{cadif2026,
title = {CADIF: A Composition Assay for De-confounding Instruction-Following},
author = {Stekel, Tardelli},
year = {2026},
publisher = {Hugging Face},
doi = {10.57967/hf/9547},
url = {https://doi.org/10.57967/hf/9547}
}
500 commits