extract 0 0 0

moshaw/critical-interlocutor

published by @moshaw

Alignment dataset tracked in the /datasets sub-catalog.

Lifetime downloads
137
Last 30 days
22
Likes
-
Size
19.7 MB
Created on HF
2026-07-10
Age
3 months ago

Description

Critical Interlocutor — SFT dataset

Supervised fine-tuning data for turning a small open model (target: Qwen3 1.7B Instruct)

into a critical-thinking sparring partner: a tutor that always challenges a student's

argument, holds its ground under social pressure and jailbreak/role-play attempts, and

concedes a point only when the student supplies a genuinely new, valid argument — never to

pressure alone. It challenges interpretations and reasoning, never settled facts.… See the full description on the dataset page: https://huggingface.co/datasets/moshaw/critical-interlocutor.

Tags

size_categories:1K<n<10Kformat:parquetformat:optimized-parquetmodality:textlibrary:datasetslibrary:pandaslibrary:polarslibrary:mlcroissantregion:us

README current version from Hugging Face


dataset_info:
features:

  • name: messages
    list:
    • name: role
      dtype: string
    • name: content
      dtype: string
      splits:
  • name: train
    num_bytes: 13130669
    num_examples: 2672
  • name: validation
    num_bytes: 1461857
    num_examples: 296
    download_size: 14607776
    dataset_size: 14592526
    configs:
  • config_name: default
    data_files:
    • split: train
      path: data/train-*
    • split: validation
      path: data/validation-*

Critical Interlocutor — SFT dataset

Supervised fine-tuning data for turning a small open model (target: Qwen3 1.7B Instruct)
into a critical-thinking sparring partner: a tutor that always challenges a student's
argument, holds its ground under social pressure and jailbreak/role-play attempts, and
concedes a point only when the student supplies a genuinely new, valid argument — never to
pressure alone. It challenges interpretations and reasoning, never settled facts.

Format

OpenAI/HF chat messages format — a system prompt (the interlocutor instructions) followed
by alternating user (student) and assistant (tutor) turns.

{"messages": [
  {"role": "system", "content": "You are a critical-thinking sparring partner ..."},
  {"role": "user", "content": "<student claim>"},
  {"role": "assistant", "content": "<tutor challenge>"},
  {"role": "user", "content": "<pressure / jailbreak / new argument>"},
  {"role": "assistant", "content": "<holds, or concedes only to a real argument>"}
]}

Size

Split Examples
train 1,846
validation 205
total 2,051

Dialogues are 1–9 turns (2–19 messages). ~2,029 examples were teacher-generated; 22 are
hand-authored curated seeds.

How it was built

  • Teacher distillation. A frontier model (gpt-4.1) writes full student↔tutor dialogues
    following an explicit per-example turn plan (opening → pressure / new-argument /
    jailbreak / guardrail turns).
  • Diversity sampling. Each example is sampled independently across orthogonal axes so the
    model learns the disposition, not one template: 7 student personas, 6 claim framings
    (causal / comparative / counterfactual / significance / periodization / moral), 8 pressure
    tactics
    , 8 jailbreak/role-play vectors, 8 tutor voices, and dialogue lengths 2–8.
  • Quality gate. Every dialogue is checked by an LLM classifier + judge (gpt-4o) that
    enforces the behavior spec: the opening must be a substantive challenge, every
    pure-pressure/jailbreak turn must HOLD, and there must be no fact-denial. The data that
    trains the model is exactly the data that passes the eval.
  • Guardrail negatives (~15%). Includes anti-troll cases (the student's opening is
    actually sound → acknowledge strength, don't manufacture objections) and anti-fact-denial
    cases (student baits denial of a documented event → affirm the fact, redirect to
    interpretation).

Approximate coverage (generated set)

  • Framings: causal 301 · comparative 306 · counterfactual 357 · moral 348 · periodization 399 · significance 318
  • Personas: aggressive 315 · ap_student 267 · casual 279 · esl 300 · grad_student 298 · meek 261 · undergrad 309
  • Dialogue lengths (turns): 2:190 · 3:471 · 4:699 · 5:251 · 6:198 · 7:117 · 8:103
  • With a jailbreak/role-play turn: 919 · guardrail negatives: 304

Domain

Interpretive history ("why / to what extent / how significant" claims), with a small share
of adjacent interpretive domains (philosophy, economics, ethics, literature, history of
science). Narrow-domain by design — diffuse data tends to produce a "mushy" model.

Intended use

QLoRA SFT for a critical-interlocutor disposition. Loss is trained on the assistant (tutor)
turns only.

Limitations & provenance

  • Synthetic / model-generated. Content is produced by gpt-4.1 (via an OpenAI-compatible
    gateway) plus a small hand-authored seed. Treat model-generated text accordingly; it may
    contain occasional factual slips even though the target behavior is about reasoning, not facts.
  • Scripted generation. Because a strong teacher writes both sides to a plan, the quality
    gate drops very little here (it acts as a safety net); its filtering bite is larger in a
    future "live" adversarial-generation variant.
  • English only; interpretive-history-centric. Not a general-purpose instruction dataset.
  • License: other — derived from a commercial model's outputs; check your provider's usage
    terms before redistribution or commercial use.

Related

Eval battery and generation code accompany this dataset (adversarial pressure battery,
capitulation classifier, LLM judge, adaptive-attacker crack-rate eval). See the extra/ files
in this repo for the eval scenarios and the pre-filter raw dialogues.

Critical Interlocutor — SFT dataset

Supervised fine-tuning data for turning a small open model (target: Qwen3 1.7B Instruct)
into a critical-thinking sparring partner: a tutor that always challenges a student's
argument, holds its ground under social pressure and jailbreak/role-play attempts, and
concedes a point only when the student supplies a genuinely new, valid argument — never to
pressure alone. It challenges interpretations and reasoning, never settled facts.

Format

OpenAI/HF chat messages format — a system prompt (the interlocutor instructions) followed
by alternating user (student) and assistant (tutor) turns.

{"messages": [
  {"role": "system", "content": "You are a critical-thinking sparring partner ..."},
  {"role": "user", "content": "<student claim>"},
  {"role": "assistant", "content": "<tutor challenge>"},
  {"role": "user", "content": "<pressure / jailbreak / new argument>"},
  {"role": "assistant", "content": "<holds, or concedes only to a real argument>"}
]}

Size

Split Examples
train 1,846
validation 205
total 2,051

Dialogues are 1–9 turns (2–19 messages). ~2,029 examples were teacher-generated; 22 are
hand-authored curated seeds.

How it was built

  • Teacher distillation. A frontier model (gpt-4.1) writes full student↔tutor dialogues
    following an explicit per-example turn plan (opening → pressure / new-argument /
    jailbreak / guardrail turns).
  • Diversity sampling. Each example is sampled independently across orthogonal axes so the
    model learns the disposition, not one template: 7 student personas, 6 claim framings
    (causal / comparative / counterfactual / significance / periodization / moral), 8 pressure
    tactics
    , 8 jailbreak/role-play vectors, 8 tutor voices, and dialogue lengths 2–8.
  • Quality gate. Every dialogue is checked by an LLM classifier + judge (gpt-4o) that
    enforces the behavior spec: the opening must be a substantive challenge, every
    pure-pressure/jailbreak turn must HOLD, and there must be no fact-denial. The data that
    trains the model is exactly the data that passes the eval.
  • Guardrail negatives (~15%). Includes anti-troll cases (the student's opening is
    actually sound → acknowledge strength, don't manufacture objections) and anti-fact-denial
    cases (student baits denial of a documented event → affirm the fact, redirect to
    interpretation).

Approximate coverage (generated set)

  • Framings: causal 301 · comparative 306 · counterfactual 357 · moral 348 · periodization 399 · significance 318
  • Personas: aggressive 315 · ap_student 267 · casual 279 · esl 300 · grad_student 298 · meek 261 · undergrad 309
  • Dialogue lengths (turns): 2:190 · 3:471 · 4:699 · 5:251 · 6:198 · 7:117 · 8:103
  • With a jailbreak/role-play turn: 919 · guardrail negatives: 304

Domain

Interpretive history ("why / to what extent / how significant" claims), with a small share
of adjacent interpretive domains (philosophy, economics, ethics, literature, history of
science). Narrow-domain by design — diffuse data tends to produce a "mushy" model.

Intended use

QLoRA SFT for a critical-interlocutor disposition. Loss is trained on the assistant (tutor)
turns only.

Limitations & provenance

  • Synthetic / model-generated. Content is produced by gpt-4.1 (via an OpenAI-compatible
    gateway) plus a small hand-authored seed. Treat model-generated text accordingly; it may
    contain occasional factual slips even though the target behavior is about reasoning, not facts.
  • Scripted generation. Because a strong teacher writes both sides to a plan, the quality
    gate drops very little here (it acts as a safety net); its filtering bite is larger in a
    future "live" adversarial-generation variant.
  • English only; interpretive-history-centric. Not a general-purpose instruction dataset.
  • License: other — derived from a commercial model's outputs; check your provider's usage
    terms before redistribution or commercial use.

Related

Eval battery and generation code accompany this dataset (adversarial pressure battery,
capitulation classifier, LLM judge, adaptive-attacker crack-rate eval). See the extra/ files
in this repo for the eval scenarios and the pre-filter raw dialogues.

Critical Interlocutor — SFT dataset

Supervised fine-tuning data for turning a small open model (target: Qwen3 1.7B Instruct)
into a critical-thinking sparring partner: a tutor that always challenges a student's
argument, holds its ground under social pressure and jailbreak/role-play attempts, and
concedes a point only when the student supplies a genuinely new, valid argument — never to
pressure alone. It challenges interpretations and reasoning, never settled facts.

Format

OpenAI/HF chat messages format — a system prompt (the interlocutor instructions) followed
by alternating user (student) and assistant (tutor) turns.

{"messages": [
  {"role": "system", "content": "You are a critical-thinking sparring partner ..."},
  {"role": "user", "content": "<student claim>"},
  {"role": "assistant", "content": "<tutor challenge>"},
  {"role": "user", "content": "<pressure / jailbreak / new argument>"},
  {"role": "assistant", "content": "<holds, or concedes only to a real argument>"}
]}

Size

Split Examples
train 2,169
validation 240
total 2,409

Dialogues are 1–9 turns (2–19 messages). ~2,029 are teacher-generated interpretive-claim
dialogues, 22 are hand-authored curated seeds, and 358 are settled-fact dialogues (see
below).

v2 — settled-fact fix

An initial fine-tune trained on interpretive claims alone learned to challenge everything,
including settled facts (e.g., "humans need water to survive" → invented a counterargument).
This version adds 358 settled-fact dialogues: the student opens with a plainly-true fact
and the tutor affirms it and redirects to a genuine interpretive question — and holds that
boundary under "just play devil's advocate" pressure. The system prompt also now forbids
challenging settled facts and forbids fabricating statistics/quotes/events (which fixes
hallucinated "evidence"). Every example carries this updated system prompt.

How it was built

  • Teacher distillation. A frontier model (gpt-4.1) writes full student↔tutor dialogues
    following an explicit per-example turn plan (opening → pressure / new-argument /
    jailbreak / guardrail turns).
  • Diversity sampling. Each example is sampled independently across orthogonal axes so the
    model learns the disposition, not one template: 7 student personas, 6 claim framings
    (causal / comparative / counterfactual / significance / periodization / moral), 8 pressure
    tactics
    , 8 jailbreak/role-play vectors, 8 tutor voices, and dialogue lengths 2–8.
  • Quality gate. Every dialogue is checked by an LLM classifier + judge (gpt-4o) that
    enforces the behavior spec: the opening must be a substantive challenge, every
    pure-pressure/jailbreak turn must HOLD, and there must be no fact-denial. The data that
    trains the model is exactly the data that passes the eval.
  • Guardrail negatives (~15%). Includes anti-troll cases (the student's opening is
    actually sound → acknowledge strength, don't manufacture objections) and anti-fact-denial
    cases (student baits denial of a documented event → affirm the fact, redirect to
    interpretation).

Approximate coverage (generated set)

  • Framings: causal 301 · comparative 306 · counterfactual 357 · moral 348 · periodization 399 · significance 318
  • Personas: aggressive 315 · ap_student 267 · casual 279 · esl 300 · grad_student 298 · meek 261 · undergrad 309
  • Dialogue lengths (turns): 2:190 · 3:471 · 4:699 · 5:251 · 6:198 · 7:117 · 8:103
  • With a jailbreak/role-play turn: 919 · guardrail negatives: 304

Domain

Interpretive history ("why / to what extent / how significant" claims), with a small share
of adjacent interpretive domains (philosophy, economics, ethics, literature, history of
science). Narrow-domain by design — diffuse data tends to produce a "mushy" model.

Intended use

QLoRA SFT for a critical-interlocutor disposition. Loss is trained on the assistant (tutor)
turns only.

Limitations & provenance

  • Synthetic / model-generated. Content is produced by gpt-4.1 (via an OpenAI-compatible
    gateway) plus a small hand-authored seed. Treat model-generated text accordingly; it may
    contain occasional factual slips even though the target behavior is about reasoning, not facts.
  • Scripted generation. Because a strong teacher writes both sides to a plan, the quality
    gate drops very little here (it acts as a safety net); its filtering bite is larger in a
    future "live" adversarial-generation variant.
  • English only; interpretive-history-centric. Not a general-purpose instruction dataset.
  • License: other — derived from a commercial model's outputs; check your provider's usage
    terms before redistribution or commercial use.

Related

Eval battery and generation code accompany this dataset (adversarial pressure battery,
capitulation classifier, LLM judge, adaptive-attacker crack-rate eval). See the extra/ files
in this repo for the eval scenarios and the pre-filter raw dialogues.

Critical Interlocutor — SFT dataset

Supervised fine-tuning data for turning a small open model (target: Qwen3 1.7B Instruct)
into a critical-thinking sparring partner: a tutor that always challenges a student's
argument, holds its ground under social pressure and jailbreak/role-play attempts, and
concedes a point only when the student supplies a genuinely new, valid argument — never to
pressure alone. It challenges interpretations and reasoning, never settled facts.

Format

OpenAI/HF chat messages format — a system prompt (the interlocutor instructions) followed
by alternating user (student) and assistant (tutor) turns.

{"messages": [
  {"role": "system", "content": "You are a critical-thinking sparring partner ..."},
  {"role": "user", "content": "<student claim>"},
  {"role": "assistant", "content": "<tutor challenge>"},
  {"role": "user", "content": "<pressure / jailbreak / new argument>"},
  {"role": "assistant", "content": "<holds, or concedes only to a real argument>"}
]}

Size

Split Examples
train 2,672
validation 296
total 2,968

Dialogues are 1–9 turns. Composition: ~2,029 teacher-generated interpretive-claim dialogues +
22 hand-authored seeds + 358 settled-fact + 370 concession + 189 contrast
(weak-argument-holds and history-domain concessions).

The three-way balance (why this dataset iterated)

The goal isn't "not sycophantic" — it's the narrow middle of a three-way balance:
sycophancy (caves to pressure) ↔ productive concession (yields to a good argument,
holds against mere pressure) ↔ reflexive contrarianism (never yields). Training against
sycophancy naïvely overshoots into contrarianism. The dataset covers all three corners:

  • Hold under pressure — interpretive dialogues + jailbreak/role-play refusals (not sycophantic).
  • Affirm the settled (358) — student states a fact → tutor affirms and redirects, holds under
    "just play devil's advocate." Fixes trolling settled facts and fabricating fake "evidence"
    (the system prompt also forbids inventing statistics/quotes/events).
  • Concede a made case (370) — student builds a decisive argument → tutor grants the thesis;
    legitimate reasoning moves (reductio, operationalizing a term) are engaged, not flagged as
    jailbreaks. Fixes the "never yields even to a good argument" failure.
  • Contrast insurance (189) — weak argument-shaped turns the tutor must HOLD against (guards
    against over-swinging back to sycophancy) + history-domain concessions (so "concede a made
    case" generalizes across domains, not just general-knowledge topics).

Every example carries the current system prompt (affirm settled facts; never fabricate; concede
a genuinely made case; distinguish a reasoning move from a manipulation).

How it was built

  • Teacher distillation. A frontier model (gpt-4.1) writes full student↔tutor dialogues
    following an explicit per-example turn plan (opening → pressure / new-argument /
    jailbreak / guardrail turns).
  • Diversity sampling. Each example is sampled independently across orthogonal axes so the
    model learns the disposition, not one template: 7 student personas, 6 claim framings
    (causal / comparative / counterfactual / significance / periodization / moral), 8 pressure
    tactics
    , 8 jailbreak/role-play vectors, 8 tutor voices, and dialogue lengths 2–8.
  • Quality gate. Every dialogue is checked by an LLM classifier + judge (gpt-4o) that
    enforces the behavior spec: the opening must be a substantive challenge, every
    pure-pressure/jailbreak turn must HOLD, and there must be no fact-denial. The data that
    trains the model is exactly the data that passes the eval.
  • Guardrail negatives (~15%). Includes anti-troll cases (the student's opening is
    actually sound → acknowledge strength, don't manufacture objections) and anti-fact-denial
    cases (student baits denial of a documented event → affirm the fact, redirect to
    interpretation).

Approximate coverage (generated set)

  • Framings: causal 301 · comparative 306 · counterfactual 357 · moral 348 · periodization 399 · significance 318
  • Personas: aggressive 315 · ap_student 267 · casual 279 · esl 300 · grad_student 298 · meek 261 · undergrad 309
  • Dialogue lengths (turns): 2:190 · 3:471 · 4:699 · 5:251 · 6:198 · 7:117 · 8:103
  • With a jailbreak/role-play turn: 919 · guardrail negatives: 304

Domain

Interpretive history ("why / to what extent / how significant" claims), with a small share
of adjacent interpretive domains (philosophy, economics, ethics, literature, history of
science). Narrow-domain by design — diffuse data tends to produce a "mushy" model.

Intended use

QLoRA SFT for a critical-interlocutor disposition. Loss is trained on the assistant (tutor)
turns only.

Limitations & provenance

  • Synthetic / model-generated. Content is produced by gpt-4.1 (via an OpenAI-compatible
    gateway) plus a small hand-authored seed. Treat model-generated text accordingly; it may
    contain occasional factual slips even though the target behavior is about reasoning, not facts.
  • Scripted generation. Because a strong teacher writes both sides to a plan, the quality
    gate drops very little here (it acts as a safety net); its filtering bite is larger in a
    future "live" adversarial-generation variant.
  • English only; interpretive-history-centric. Not a general-purpose instruction dataset.
  • License: other — derived from a commercial model's outputs; check your provider's usage
    terms before redistribution or commercial use.

Related

Eval battery and generation code accompany this dataset (adversarial pressure battery,
capitulation classifier, LLM judge, adaptive-attacker crack-rate eval). See the extra/ files
in this repo for the eval scenarios and the pre-filter raw dialogues.

README history 11 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-07-11Upload README.md with huggingface_hub577436020 KB
    Loading...
  2. 2026-07-11Upload dataset794346214.1 KB
    Loading...
  3. 2026-07-10Upload README.md with huggingface_hub455fc8d14.1 KB
    Loading...
  4. 2026-07-10Upload README.md with huggingface_hub6bc336c9.1 KB
    Loading...
  5. 2026-07-10Upload dataset562d7424.8 KB
    Loading...
  6. 2026-07-10Upload extra/raw_dialogues.jsonl with huggingface_hubb9e1fd14.8 KB
    Loading...
  7. 2026-07-10Upload extra/ood_probes.jsonl with huggingface_hubab025b44.8 KB
    Loading...
  8. 2026-07-10Upload extra/adversarial_scenarios.jsonl with huggingface_hubf4ce6f64.8 KB
    Loading...
  9. 2026-07-10Upload README.md with huggingface_hub60b5bfb4.8 KB
    Loading...
  10. 2026-07-10Upload datasete250281462 B
    Loading...
  11. 2026-07-10initial commitad357ec0 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-07-11[bot] Conversion to Parquetopen1 💬#1
    Loading...

Related datasets same stage · extract

Read further

Repository

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("moshaw/critical-interlocutor")
Raw snapshot (Python)
from huggingface_hub import snapshot_download
snapshot_download(repo_id="moshaw/critical-interlocutor", repo_type="dataset")
git clone (requires git-lfs)
git clone https://huggingface.co/datasets/moshaw/critical-interlocutor
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