DialFork: Going Beyond Factuality to Evaluate Procedural Hallucination in Conversational Agents
Abstract
DialFork introduces a benchmark and flow-aware metrics to detect procedural hallucinations in conversational agents by measuring dialogue-level process deviation rather than content similarity.
Large language models (LLMs) deployed as conversational agents are increasingly expected to follow procedural logic. While factual hallucination has received extensive attention, a different failure mode has been overlooked: procedural hallucination, in which an agent produces individually fluent and factually plausible utterances while deviating from the intended conversational process. We introduce DialFork, the first benchmark to measure this failure mode on raw dialogue text. DialFork is built by forking conformant dialogues at controlled turn positions and injecting one of four hallucination types, yielding 36,278 dialogues across 24 tasks in 12 domains; 30 human annotators validate the construction. We define three evaluation tasks that characterize procedural deviation at three granularities: how far a set of dialogues deviates from conformant ones (monitoring deployed agents), how far a single dialogue does (procedural retrieval), and at which turn a dialogue first goes off-track (real-time guardrails). For the first two, we propose dialog-flow-aware metrics, FlowKL and FlowScore, that compare dialogues by how they unfold rather than their content. At the dialogue level, FlowScore significantly outperforms all baselines across seven encoders, showing that semantic similarity is no substitute for procedural similarity. We release DialFork under the MIT license at https://github.com/idiap/dialfork, hoping the community will measure conversational process alongside content.
Community
Ask an LLM agent to check the weather. It's polite, fluent and never says anything false... and twenty turns later you still don't have your forecast. 🌦️
That's procedural hallucination: the agent stops following the procedure it was given. Every turn looks fine on its own, so fact-checkers and per-turn quality metrics miss it.
DialFork is a benchmark for catching it, with no annotation needed. We take a conversation where the agent does everything right, replay it with the same seed, and slip the agent a new instruction at some point, so the conversation "forks" 🔱. The fork position gives us labels for free: how far each fork strays and the turn where it starts straying.
- 36,278 English dialogues · 24 tasks · 12 domains · 4 hallucination types
- 3 tasks: set-to-set distance (monitoring), dialog-to-dialog distance (procedural retrieval) and turn prediction (real-time guardrails)
🤗 Dataset: https://huggingface.co/datasets/DialFork/dialfork
💻 Code & leaderboard: https://github.com/idiap/dialfork
Models citing this paper 0
No model linking this paper
Datasets citing this paper 1
Spaces citing this paper 1
Collections including this paper 0
No Collection including this paper