Inconsistent dialogue responses and how to recover from them (2024)

Abstract: One critical issue for chat systems is to stay consistent about preferences, opinions, beliefs and facts of itself, which has been shown a difficult problem. In this work, we study methods to assess and bolster utterance consistency of chat systems. A dataset is first developed for studying the inconsistencies, where inconsistent dialogue responses, explanations of the inconsistencies, and recovery utterances are authored by annotators. This covers the life span of inconsistencies, namely introduction, understanding, and resolution. Building on this, we introduce a set of tasks centered on dialogue consistency, specifically focused on its detection and resolution. Our experimental findings indicate that our dataset significantly helps the progress in identifying and resolving conversational inconsistencies, and current popular large language models like ChatGPT which are good at resolving inconsistencies however still struggle with detection.

## introduction for years, inconsistencies in human-to-chatbot conversations have been evident @xcite @xcite , even in the era of large language models @xcite . we categorize these inconsistencies as either extrinsic or intrinsic. extrinsic inconsistencies @xcite arise when there's a discrepancy between a statement and an external source of information, such as a knowledge base. on the other hand, intrinsic inconsistencies @xcite @xcite occur within the dialogue itself. these can manifest in two ways: through an intra-utterance contradiction @xcite , where a single sentence contains conflicting information, or a history contradiction @xcite , where a current state-我尤其是喜欢朱婷，打比赛时的那个劲儿，真帅。 i especially like zhu ting, she is so handsome when she plays the game. ## data collection the candidate conversations for annotation are sampled from two open-source conversation datasets: lccc and naturalconv. lccc @xcite is a large collection of short conversations from the chinese social media platform weibo. natural-conv @xcite is an annotator-written dataset containing conversations around news items on topics like film and sports. they are different in content and style. lccc conversations tend to be short in number of turns, and more in the style of daily chitchat. naturalconv conversations, in contrast, are two to five times longer and contain more serious discussions about events in sports, films, and other areas. 20,000 and 10,000 conversations are sampled from the lccc and naturalconv respectively for annotation. when sampling, conversations that are shorter than 4 turns or contain utterances shorter than 5 words are filtered out. the sampled conversations are generally consistent, therefore the goal of data annotation is to create an alternative conversation that contains inconsistent utterances. to achieve this, we truncate the original conversation to create a common conversation context. for lccc, the last utterance is truncated for inconsistent continuation writing; for naturalconv, a random turn between 8 and l -4 foot_0 and the following turns are chosen for truncation, where l is the length of the conversation. finally, a specified source turn is sampled from the last turn or the turn before the last. this source turn is designated to be the source of the inconsistency where the following inconsistent continuation needs to form inconsistency with the utterance from the same speaker in this turn. ## annotation guidelines the annotation process has been divided into three different tasks: inconsistent continuation, inconsistency explanation, and inconsistency resolution, which are required to be performed to each candidate conversation by one annotator when given a candidate conversation and a specified source turn. inconsistent continuation. the annotator first tries to create a natural continuation of the conversation by providing a possible utterance to the candidate conversation, but forms an inconsistency with the specified source utterance (a2 in figure 1 is the continuation, and a1 is the source.) the annotators are instructed to write the utterance with contradictory viewpoints, reasoning, and argumentation, instead of providing simple negation to the source utterance. for example, for the specified utterance i went to the supermarket yesterday., the continuation meeting the annotation requirement is i have been staying home for the past four days, not really wanting to go anywhere, instead of i didn't go to the supermarket yesterday. inconsistency explanation. after writing the continuation of the candidate conversation, the annotator is instructed to write down the rationale behind the created inconsistency (the dashed box in figure 1 ). they are asked to follow this template when writing the rationale: the specified utterance means x, but the continuation utterance means y, which is in contradiction with x., where the utterance meanings should be explicit. in the example above, the explanation one may write is the specified utterance indicates that i went out of my home yesterday, but the continuation utterance means that i didn't go out for many days including yesterday, which is in contradiction with the previous statement. ## data overview after annotation, 17,806 conversations from lccc and 9,374 conversations from naturalconv have valid annotation. they are further split into train, dev and test sets, shown in ## consistency checking in this section, we experimentally verify whether the proposed cider could help the detection of inconsistency in conversation via two task settings: (1) checking the consistency between two sentences (pair-check); (2) checking the consistency between an utterance and its preceding context (diag-check). the (inconsistency) checker is initialized as roberta-base @xcite with a linear binary classification head on the top. the input of the encoder for pair-check is formatted as "[cls] {sentence 1} [sep] {sentence 2} [sep]" while for diag-check, "[cls] {context} [sep] {utterance} [sep]", where the [cls] and [sep] are special tokens. baselines. we compare cider with several related datasets: implementation details. for cider, when creating consistent training instances of pair-check, we regard all the utterances in the context of the 6 www.fudan-disc.com/sharedtask/aidebater21/tracks.html same speaker without inconsistent label as being consistent with the current response; and when creating the training instances of diag-check, we drop current response with inconsistency and regard the previous response as being consistent with the context. check is demonstrated in there is a substantial distribution difference between the datasets with the checker trained on one dataset performing the best on the corresponding test set. c turn cider has the largest exceeding f1 points over the second best, 36.1, indicating that the checker trained on other datasets is not good at detecting the consistency in the test set of cider and the training set of cider could provide useful supervision for it. moreover, we compare the 0shot transfer ability of checkers across the datasets. results show that c turn cider has the best transfer results on all the other three datasets, surpassing the second best by 18.0, 38.0, and 5.6 f1 points, respectively, demonstrating c turn cider covering many similar linguistic phenomena in other datasets. on the whole, cider provides robust supervision to check whether a pair of sentences are consistent, regardless of they are in a dialogue or not. results for diag-check. the performance of the checkers trained on different datasets for diag-check is demonstrated in ## consistency resolution inconsistent responses of a conversational model could be detected by a consistency checker in advance, avoiding being exposed to users. however, inconsistent responses from a user can not be ignored by chat systems. the existence of inconsistent content may confuse the conversational model and induce undesired responses. resolving the occurred inconsistency is necessary to maintain a smooth dialogue flow with clear semantics. the proposed cider dataset contributes to resolving the occurred inconsistency in a dialogue with clarification responses, which is a valuable source to train an inconsistency resolution model. we choose the base version of two representative conditional generative models to initialize the resolver: bart @xcite and t5 @xcite . they both follow an encoder-decoder structure and generate clarification responses in a sequence-to-sequence fashion: the conversational text with inconsistency is fed into the encoder and the clarification response is generated autoaggressively by the decoder. like the checking experiments in section 6, we consider two task settings: ( 1 ) generating a clarification response for a pair of inconsistent utterances (pair-resolve); (2) generating a clarification response for a dialogue, of which the current response is inconsistent to the preceding context (diag-resolve). the input of the encoder for pair-resolve is formatted as "[cls] {utterance 1} [sep] {utterance 2} [sep]" while for diag-resolve, "[cls] {context} [sep] {re-sponse} [sep]". implementation details. we use the same optimization configuration of checkers to train the resolvers, except that a learning rate of 3e-4 is used for t5. bart and t5 are loaded with pretrained parameters from @xcite and @xcite , respectively. in decoding, we adopt nucleus sampling @xcite with top-0.90 probability mass across the experiments. evaluation. we use bleu @xcite and rouge @xcite , including rouge-1 (r-1), rouge-2 (r-2) and rouge-l (r-l), to measure the similarity between the generated text and the ground truth. results. according to rows #1 and #2 in analysis. we go through 200 randomly selected instances (100 from pair-resolve and 100 from diag-resolve) of the best-performing bart resolver to 1) check whether the generated responses successfully clarify the inconsistent content and 2) explore the possible reasons that the clarification fails. the numbers of successful instances are presented in ## conclusion we present cider, a comprehensive dialogue dataset comprising 27,180 annotated dialogues to investigate conversational inconsistencies. the annotations of cider cover the whole life span of inconsistencies: the human-authored utterances with inconsistent content demonstrate the introduction of inconsistencies; the explanations help understand the inconsistencies; and the clarification responses exemplify how to resolve the inconsistencies. through rigorous experiments and analysis, we show that cider significantly advance the detection and resolution of conversational inconsistencies, and large language models, chatgpt and gpt4, exhibit commendable performance in resolving these conversational inconsistencies but struggle with identifying them.