evaluate 0 0 0

shahoismael/prompt-quality-vs-response-compliance

published by @shahoismael

Alignment dataset tracked in the /datasets sub-catalog.

Lifetime downloads
99
Last 30 days
75
Likes
-
Size
628 KB
Created on HF
2026-09-19
Age
1 months ago

Description

Response Compliance Confounds Prompt Quality in LLM-as-a-Judge Scoring — per-item results

Per-item numeric results from a study that measures prompt quality and response

compliance as separate constructs, rather than treating a model's response

score as a proxy for the person's prompting skill.

A four-agent evaluator on a locally hosted Qwen 2.5-7B-Instruct judge scores each

prompt as an artefact before any response exists, then scores the resulting

response twice on identical… See the full description on the dataset page: https://huggingface.co/datasets/shahoismael/prompt-quality-vs-response-compliance.

Tags

language:enlicense:cc-by-4.0size_categories:1K<n<10Kformat:csvmodality:tabularmodality:textlibrary:datasetslibrary:pandaslibrary:polarslibrary:mlcroissantregion:usprompt-engineeringllm-as-a-judgeevaluationconstruct-validityverbosity-biasifeval

README current version from Hugging Face


license: cc-by-4.0
language:

  • en
    pretty_name: Response Compliance Confounds Prompt Quality — per-item results
    tags:
  • prompt-engineering
  • llm-as-a-judge
  • evaluation
  • construct-validity
  • verbosity-bias
  • ifeval
    size_categories:
  • 1K<n<10K
    configs:
  • config_name: main_run
    data_files: main_run_500.csv
  • config_name: ablation
    data_files: baseline_120.csv
  • config_name: benchmark_manifest
    data_files: benchmark_manifest.csv

Response Compliance Confounds Prompt Quality in LLM-as-a-Judge Scoring — per-item results

Per-item numeric results from a study that measures prompt quality and response
compliance as separate constructs, rather than treating a model's response
score as a proxy for the person's prompting skill.

A four-agent evaluator on a locally hosted Qwen 2.5-7B-Instruct judge scores each
prompt as an artefact before any response exists, then scores the resulting
response twice on identical items: once against criteria extracted from that
prompt, and once against a fixed rubric that never sees it.

Code: https://github.com/shahoismael/prompt-quality-vs-response-compliance
Archived: https://doi.org/10.5281/zenodo.22849706

Authors. Shaho Ismael Hassen (0000-0002-6403-7748),
Ahmed Abdulfatah Abdlrazaq (0000-0002-3054-045X) and
Ekhlas Mohammed Noori (0009-0000-8998-3741),
Salahaddin University-Erbil, Erbil, Iraq.

What this is not

No prompt or response text from LMSYS-Chat-1M or WildChat-1M appears here.
The LMSYS agreement prohibits transfer of the dataset to third parties and
WildChat-1M carries flow-down obligations under the AI2 ImpACT licence. Prompts
are identified by SHA-256 hash only. benchmark_manifest.csv lets anyone who
rebuilds the corpus from the original sources verify it is byte-identical to the
one used here.

Files

main_run_500.csv — 500 rows, one per sampled prompt

Column Meaning
idx, source item index; ifeval, lmsys or wildchat
prompt_sha256 SHA-256 of the prompt text — the only identifier released
prompt_words, response_words word counts
response_ttr type-token ratio; the screen keeps rows at ≥ 0.10
kept 1 if the row survives the response screen (498 of 500)
ambiguity_A, structure_T model-judged prompt dimensions, 1–5
Q primary prompt-quality measure, (A + T) / 2
specificity_Sp, completeness_Cp deterministic prompt dimensions, 0–1
Q4 secondary four-dimension composite
pq_confidence ensemble-dispersion confidence for the prompt score
S_raw compliance against criteria extracted from the prompt
S_cal S_raw after the length correction
S_fixed compliance against a fixed rubric that never saw the prompt
fixed_confidence ensemble-dispersion confidence for S_fixed
bias_variance judge instability across four content-preserving conditions
n_loose, n_routed loose constraints scored; how many the router deferred
latency_s whole-item wall-clock seconds, CPU inference
strict_acc_checked, strict_n_total, strict_n_unverifiable in-pipeline strict checker, reported with its coverage rather than as accuracy
loose_acc in-pipeline loose accuracy

S_raw, S_cal are empty for 2 items whose every loose judgment was deferred by
the confidence router, so analyses on them run at n = 496.

baseline_120.csv — 120 rows, the ablation subsample

The same items judged by two baselines on byte-identical prompts and responses:
a naive single-pass judge (naive_*) and a chain-of-thought judge (cot_*),
each with score, bias variance, and per-judgment and whole-item latency.
main_run_idx joins back to the main run. Two rows fail the response screen,
leaving 118.

benchmark_manifest.csv — 4,275 rows

idx, source, prompt_sha256, prompt_words for every prompt in the master
benchmark, so a rebuilt corpus can be verified as identical.

Reproducing the headline numbers

import csv, math
rows = list(csv.DictReader(open("main_run_500.csv")))
f = lambda v: (lambda x: None if math.isnan(x) else x)(float(v)) if v.strip() else None

kept = [r for r in rows if (f(r["response_ttr"]) or 0) >= 0.10]
sub  = [r for r in kept if None not in (f(r["S_raw"]), f(r["response_words"]), f(r["Q"]))]

def r2(xs, ys):
    n = len(xs); mx = sum(xs)/n; my = sum(ys)/n
    sxy = sum((a-mx)*(b-my) for a, b in zip(xs, ys))
    return sxy*sxy / (sum((a-mx)**2 for a in xs) * sum((b-my)**2 for b in ys))

L = [f(r["response_words"]) for r in sub]
Q = [f(r["Q"])              for r in sub]
S = [f(r["S_raw"])          for r in sub]
print(len(sub), r2(L, S), r2(Q, S))   # 496  0.2555  0.0076

Response length explains 25.6% of the prompt-derived compliance score;
prompt quality explains 0.76%. Scored against the fixed rubric instead,
length explains 3.5% — so the effect belongs to the extracted criteria, not
to the judge.

The response screen matters

Two of the 500 responses were repetition loops of 24,271 and 33,864 words
(type-token ratio 0.017 and 0.018, against a next-lowest of 0.190). Fitted with
them included, the length regression returns a slope indistinguishable from zero
and R² = 2.5 × 10⁻⁷ — the opposite conclusion from the same data. Ordinary least
squares places no bound on the leverage of a single observation, and generative
pipelines produce such observations routinely. Apply the screen.

Limitations

One judge model, from one family, at one size. The corpus is English. No prompt
here was written under assessment conditions. Bias variance measures a judge's
agreement with itself, never its accuracy.

Licence

These derived results are released CC-BY-4.0. The code is MIT. Content derived
from IFEval remains Apache-2.0. LMSYS-Chat-1M and WildChat-1M must be obtained
from their own maintainers under their own terms.

Citation

@software{hassen_response_compliance_confounds_prompt_quality,
  author  = {Hassen, Shaho Ismael and Abdlrazaq, Ahmed Abdulfatah and
             Noori, Ekhlas Mohammed},
  title   = {Response Compliance Confounds Prompt Quality in LLM-as-a-Judge
             Scoring: evaluator, results and figure code},
  year    = {2026},
  doi     = {10.5281/zenodo.22849706},
  url     = {https://doi.org/10.5281/zenodo.22849706},
  license = {MIT}
}

README history 4 revisions

Every night we snapshot the README of every dataset in the catalog. When the SHA changes we archive the new version and diff it against the last. This is the evolving thought record of the alignment-data field: what the author decided to say about the corpus, and how that framing shifted over time.

  1. 2026-10-09Add factorial ablation per-item results (v1.2.0)ab68a0e6.4 KB
    Loading...
  2. 2026-10-08Update dataset card: revised title, authors and ORCIDs, updated citation135de846.4 KB
    Loading...
  3. 2026-09-19Upload 6 files91526f06 KB
    Loading...
  4. 2026-09-19initial commit1000cdc27 B
    Loading...

Used by abliterated models none yet

No abliterated models in our catalog have declared this dataset in their YAML metadata yet. This can mean the dataset is used but not declared, is used outside abliteration workflows, or is new. The link will populate automatically as models are indexed.

Community discussions 1 thread · 1 open · 1 comments

Threads posted by the community on Hugging Face: bug reports, questions about usage, pull requests on the README, license clarifications. Click any thread to expand and read the full conversation inline. Newest first.

  1. 2026-09-20[bot] Conversion to Parquetopen1 💬#1
    Loading...

Related datasets same stage · evaluate

Read further

Metadata

License
cc-by-4.0

Download the dataset

0

Copy any of these snippets into your notebook or terminal. All three fetch directly from Hugging Face using your own credentials.

Recommended: datasets library (Python)
from datasets import load_dataset
ds = load_dataset("shahoismael/prompt-quality-vs-response-compliance")
Raw snapshot (Python)
from huggingface_hub import snapshot_download
snapshot_download(repo_id="shahoismael/prompt-quality-vs-response-compliance", repo_type="dataset")
git clone (requires git-lfs)
git clone https://huggingface.co/datasets/shahoismael/prompt-quality-vs-response-compliance
Catalog is the map. Apps are the tools.

Run models on your own machine, not in the cloud.

Every model page has an "Open in Abliteration" button that hands the model directly to the first-party desktop client, at the quantization your rig can actually run. No API keys, no subscription, no prompt leakage.

Open in Abliteration