Non-goal oriented dialog agents (i.e. chat-bots) aim to produce varying and engaging conversations with a user; however, they typically exhibit either inconsistent personality across conversations or the average personality of all users. This paper addresses these issues by controlling an agent's persona upon generation via conditioning on prior conversations of a target actor. In doing so, we are able to utilize more abstract patterns within a person's speech and better emulate them in generated responses. This work introduces the GENERATIVECONVERSATIONCONTROL model, an augmented and fine-tuned GPT-2 language model that conditions on past reference conversations to probabilistically model multi-turn conversations in the actor's persona. We introduce an accompanying data collection procedure to obtain 10.3M conversations from 6 months worth of Reddit comments. We demonstrate that scaling model sizes from 117M to 8.3B parameters yields an improvement from 23.14 to 13.14 perplexity on 1.7M held out Reddit conversations. Increasing model scale yielded similar improvements in human evaluations that measure preference of model samples to the held out target distribution in terms of realism (31% increased to 37% preference), style matching (37% to 42%), grammar and content quality (29% to 42%), and conversation coherency (32% to 40%). We find that conditionally modeling past conversations improves perplexity by 0.47 in automatic evaluations. Through human trials we identify positive trends between conditional modeling and style matching and outline steps to further improve persona control. Modeling dialog agents, otherwise known as chat-bots, has been a longstanding goal within artificial intelligence research. Historically, approaches to this task can be divided into one of the two categories: retrieval and generative . The former is posed as a search problem where an appropriate response for a conversation is selected from a large set of candidate replies, whereas the latter autoregressively samples a reply, thereby potentially creating a response that the model may not have seen before. The flexibility and creativity afforded by not prespecifying every possible response is a ma-jor draw for generative based approaches. In recent years, advances in neural methods have shown promise in effectively modeling this task. Early progress first demonstrated potential with recurrent network based models capable of holding simple conversations (Sordoni et al., 2015). Further architecture optimizations and tweaks improved user experiences; however, they largely experienced issues with the agent exhibiting an inconsistent personality and producing uninteresting comments (Li et al., 2015). Some works have attempted to alleviate this through conditioning on various factors of the conversation through methods such as sentiment or speaker embeddings (Li et al., 2016), but the added data annotation makes these methods not scale well to the gargantuan amounts of data needed to train larger models. A persona-based conversation task was introduced by Zhang et al. (2018) where a set of Reddit comments and their replies were accompanied by brief descriptions or factoids about the speakers, such as their hobbies and interests. Recent works Wolf et al. (2019) have shown that leveraging this format with pre-trained transformer-based language models yield state-of-the-art (SOTA) performance in generative conversation modeling. How-Speaker Conversation Turn A They are worried about themes becoming an exploit. ever, in our interactions with these models they produced conversations that adhered to the reference facts, but were devoid of unique personality and instead exhibited a mean average style. Personality, as seen through text, manifests itself not just through content, but also through a person's tone, grammar, and vernacular. As such, a criticism of prior persona-based solutions is that the personas only reflect surface-level characteristics of a person's manner of speaking and can result in banal generations. What does showcase a personality are actual conversation examples from a person. By conditioning on previous, unrelated, conversation turns for a speaker, we generate new replies that utilize more abstract personality traits inherent in the reference examples. We define this as a conditional conversation task. Emulating this abstract notion of style requires large amount of data and sufficiently powerful model. We propose a data collection procedure that heuristically scrapes user data and comment threads from Reddit 1 to produce conversations that vary widely in content, speakers, and reference histories to condition on. This work also introduces the GENERATIVECONVERSATIONCONTROL (GCC) model, an augmented and fine-tuned GPT-2 language model. We take advantage of 1 https://reddit.com/ large transformers' ability to model long contexts and dependencies, and successfully model multiturn and multi-actor conversations that are significantly longer (up to 15 turns) than most prior work. We find that scaling model sizes from 117M to 8.3B parameters yields an improvement from 23.14 to 13.14 perplexity on 1.7M held out Reddit conversations. Similar improvements from model scaling are found in human evaluations that measure sample preference to the held out target distribution in terms of realism (31% increased to 37% prefer-ence), style matching (37% to 42%), grammar and content quality (29% to 42%), and conversation coherency (32% to 40%). i We introduce a new conversational task and demonstrate added value over traditional conversation modeling through both better control and response generation. ii We document the creation of a large, multiturn, multi-actor conversational dataset and the techniques used to clean it and extract conversations and reference material for style. iii We demonstrate that by increasing model size from 117M to 8.3B parameters, human evaluations measuring preference of model generated samples over held out target distribution increase with respect to realism, style matching, grammar, and conversation coherency. Automatic evaluations also showcase similar trends with the largest model leading to significantly lower perplexities. Let c represent a multi-turn conversation of variable-length, and let x j represent a single turn that contains a variable-amount of tokens. Mathematically, this is represented as c = ( x 1 , . . . , x | c | ) , with x j = ( x j, 1 , . . . , x j, | x j | ) . Every token, in every turn, belongs to the same fixed vocabulary (i.e. x j,t  V ). Assume that p  (  ) represents the true distribution of content. Standard language modeling involves modeling sequences of tokens. After factorizing, the problem is most commonly construed as a next-token prediction problem where p  ( x ) is approximated via: p  ( x ) = | x | (cid:89) t =1 p  ( x t | x <t ) (1) where  is optimized over a set of documents, D = { x (1) , . . . , x |D| } , using maximum likelihood estimation: L ( , D ) = |D| (cid:88) i =1 log p  ( x ( i ) ) (2) Likewise, to model dialog in the same vein requires just a small alteration. Instead of modeling just a single sequence of tokens, x , the new objective is to model several sequences of tokens that comprise a conversation, c . As such, p  ( c ) is approximated via: p  ( c ) = | c | (cid:89) j =1 p  ( x j | x <j ) = | c | (cid:89) j =1 | x j | (cid:89) t =1 p  ( x j,t | x j,<t , x <j ) (3) where  is optimized over a set of conversations, D = { c (1) , . . . , c |D| } , using maximum likelihood estimation: L ( , D ) = |D| (cid:88) i =1 log p  ( c ( i ) ) (4) 2.2 Conditioning on Prior Conversations To have more control over generation and better insight into the distribution of turns within a conversation, it is better to conditionally model c instead of modeling it unconditionally as in Equation 3. For every turn in a particular conversation, x j  c , let r j be a corresponding set of reference history tuples. These tuples contain (i) a prior turn of conversation (ii) a turn of conversation spoken by the same agent as x j in response to the first member of the tuple. In the event that (ii) corresponds to the beginning of a conversation (i) is left blank. We stipulate that the turns of c and the turns of r j are disjoint. This is defined mathematically as: r j = { ( x k  1 , x k ) | author ( x k ) = author ( x j )  x k /  c } (5) The intention of including previous replies by the same person is to get a better idea of the personality, tone, vernacular, and content of potential responses when predicting next tokens for the given turn. Likewise, the turns that the agent was replying to in r j are also included to get a better idea as to the transition dynamics of how they interact with other agents. We update our prior equations to reflect this change in modeling objective: p  ( c | r ) = | c | (cid:89) j =1 p  ( x j | x <j , r j ) = | c | (cid:89) j =1 | x j | (cid:89) t =1 p  ( x j,t | x j,<t , x <j , r j ) L ( , D ) = |D| (cid:88) i =1 log p  ( c ( i ) | r ( i ) ) (6) 3 Data In order to sufficiently train a model to be able to autoregressively generate turns in a conversation conditioned on prior conversations, we require an ample amount of diverse examples accompanied with plenty of reference material. A suitable source of data for this purpose can be found from comments made on Reddit posts. Thanks to a publicly available archive on pushshift.io , comments are processed from Reddit ranging from October of 2018 to March of 2019 for training, and April of 2019 for validation. The techniques described in this section can naturally be extended to the full range of Reddit data spanning as far back as 2005; however, we choose to focus on just the 6 months in question for the sake of tractability. Comments for a singular post on Reddit naturally exist as a tree structure; however, conversations necessitate a sequence of turns. As such, we obtain conversations by extracting valid paths from the comment graph structure. Paths are extracted sequentially from the longest candidates to shortest, and a candidate path is considered valid if and only if it satisfy the following conditions: 1. The path has a minimum of 5 turns 2. The path has a maximum of 15 turns 3. At least one turn has minimum karma score 2 of 4 within the path 4. All turns in the path have at least 3 words 5. The path shares a maximum of 2 turns with previously extracted paths 6. No turns in the path originate from a not safe for work subreddit These rules were decided upon to ensure that the model is able to learn multi-turn conversations (rules 1 and 2) with appropriate and meaningful comments being made (3, 4, and 6) while ensuring a diverse set of examples (5) are available. Due to memory constraints, comments are only processed on a month to month basis so any conversations that span across months are lost; however, this loss is negligible due to the vast amount of data at hand. Furthermore, this technique possibly results in more relevant references than those collected from prior months as the reference data is temporally local to the conversations in question and reflects users' current personas and interests. After all conversations have been extracted, a reference set of turns (and comments that they were replying to) are collected for every user. We save, at most if available, the top 8 scoring comments for every user. Most users have much more than 8 comments, so an average of 7.1 reference tuples per user are collected, with about half of the tuples containing a parent comment that the user was replying to. All models proposed stem from the GPT-2 model architecture as their base design (Radford et al., 2019). The class of models will be defined as GENERATIVECONVERSATIONCONTROL models, GCC We experiment with the number of layers, l , the hidden size, h , and the number of attention heads, A in the GPT-2 model architecture. Modeling conversations with GCC requires three steps: (i) identify a speaker to emulate and obtain their reference history consisting of comments they made on other Reddit posts, (ii) input the reference history and conversation turns into the model, and (iii) retrieve estimated next-token probabilities only associated with turns in the conversation spoken by the target speaker. Due to supporting multi-actor conversations present in our dataset, special care is needed for presenting this information to the model. In general, this is accomplished by designating a speaker of interest to model in a conversation. As visualized in Figure 1, the designated speaker's reference history tokens are gathered and concatenated together, with a parent comment followed by its associated reply (made by the speaker of interest) followed by another parent comment and so forth. Positional embeddings will signal to the model the order of comments being made; however, additional signal is needed to tell the model which comments are made by the speaker of interest and which are not. This is achieved by token type embeddings that get added to the positional and vocabulary embeddings. All tokens in the reference history that belong to the speaker get the same token type embedding, and all others get a different one. This representation choice allows us to naturally handle multi-actor conversation by only making a distinction between the speaking 2 Karma can be thought of as the net amount of likes and dislikes a comment has, as voted upon by the users of Reddit. user and non speaking users. Reference history sequences larger than 512 are truncated from the end to keep the length within 512 tokens. The conversation turns are similarly represented by concatenating them together in order of occurrence with a special token at the beginning signifying the start of the conversation. For practicality, all turns after the final turn associated with the target speaker are discarded for a given iteration. Each token in the conversation sequence receives a spe-cific token type embedding if it is associated with the speaker of interest, and receives a different type if not. Note, the conversation and reference history have disjoint sets of token type embeddings to differentiate the different types of content. The max length a conversation sequence can be is 512 tokens with extra tokens truncated from the beginning of the conversation to encourage a variety of conversation lengths. In models that have access to the reference history this leads to a total sequence length of 1024 tokens and 512 tokens otherwise. There is flexibility in how to model conversations with reference histories due to the turns in a conversation and reference comments being indirectly related, both content and style-wise. As such, the design choices we consider either encode the references separate from the conversation, or together. Decoder-Only: GCC-DEC The simplest of the three considered models consists of only a transformer for decoding, which is the original configuration for GPT-2 . The input consists of the reference history tokens concatenated with the conversation turn tokens and the corresponding token types. A left-to-right (LR) mask is used across the entire sequence. See Figure 1 for an illustration. Despite it's simplicity we find that this model performs the best. Seq2Seq Baseline: GCC-S2S For this model the reference material with corresponding token types is encoded in a separate transformer using a bidirectional mask. The conversation turns are then decoded with a LR mask using both self-attention and attention against the final hidden states of the encoded reference. This is representative of the typical formulation for attention-based Seq2Seq models (Vaswani et al., 2017). Variational Autoencoder Baseline: GCC-VAE This configuration also encodes the reference history and corresponding token types in a separate transformer using a bidirectional mask. The final hidden state of a special classification token is then linearly transformed into the sufficient statistics of a normal latent state which is then sampled. This latent state is then prepended to the embedded inputs of the conversation turns. The final sequence is then decoded using a LR mask in a separate transformer. We explored this method as latent variables are commonly used to control aspects of style across various areas of study. No Reference Context Baseline: GCC-NRC This version is similar to GCC-DEC except that there are no reference material included when decoding information. This model can be seen as a re-implementation of Olabiyi and Mueller (2019) with the minor differences being that we introduced token types for multi-actor modeling and we did not utilize their random padding strategy. We found this unnecessary as we did not experience overfit-ting due to the large amount of training data available. As such, GCC-NRC will largely serve as our previous SOTA baseline to compare against when demonstrating the advantage of conditioning on prior conversations. It is known that for the language modeling validation perplexity measures using teacher forcing is not the best evaluation of generative capabilities, even if there is correlation between the two. However, it is a commonly used metric for language modeling, and can be parallelized and computed inexpensively without the need for autoregressive sampling of output text. With that in mind, two sets of evaluations were done, the first of which being an architecture search using automatic evaluation with validation perplexity and the second being a qualitative study using Amazon's Mechanical Turk 3 to assess generated samples. All evaluations in this section are done on the validation set (Reddit comments from April, 2019) using perplexity, which is calculated as follows: All models are trained using mixed precision arithmetic, a learning rate that linearly increases from 0 . 0 to 1 . 5 e  4 over the first 1% of iterations followed by it decaying to 0 . 0 over the remaining iterations with a cosine annealing schedule, and the Adam optimization algorithm with default hyper-parameters (Kingma and Ba, 2014). Architecture We evaluate three main architectures under two scenarios: similar total number of encoder and decoder parameters, and similar total number of decoder parameters. As such, a 355M parameter version of GCC-DEC is compared to two versions each of GCC-S2S and GCC-VAE . When present, the encoder and decoder transformers shared the same hidden sizes, number of layers, and number of attention heads. Additionally, all 3 https://www.mturk.com/ Model h l A Params PPL GCC-S2S 768 18 16 375M 22.09 GCC-VAE 768 20 16 362M 22.43 GCC-DEC 1024 24 16 355M 19.10 GCC-S2S 1024 24 16 810M 19.89 GCC-VAE 1024 24 16 711M 20.49 Table 3: Comparison of model architecture perplexity (PPL) trained from scratch for 200K iterations. models were trained from scratch for 200,000 iterations at a global batch size of 256. The results are presented in Table 3. We see that for models with similar parameter counts the GCC-DEC has the advantage, and that under similar decoder sizes having direct access to the reference material (i.e. processing the reference and conversation together in a single decoder) results in superior performance. This indicates that the added complexity from additional encoding is not needed and that concatenating all relevant context is both the simplest, and most effective means of incorporating previous information. Since the parameters are shared and no latent variable bottleneck is used, the model has full access to the information from the references. With this, the self attention operation is able to automatically modify the model's output distribution in complex, non-linear ways without the need for manual architecture design. Pre-training and References We will use GCC-DEC going forward. It is important to see if we can gain additional predictive power using pre-trained models trained on large, diverse, language modeling corpora, or at the very least utilize less computing resources to achieve similar performance. The GCC-DEC trained from scratch in the previous section will be compared against another model of the same size that was pre-trained using Megatron-LM (Shoeybi et al., 2019). The pre-trained GCC-DEC will be fine-tuned for 70,000 iterations at a global batch size of 128. We will also compare against GCC-NRC fine-tuned from the same checkpoint with the same batch size and amount of iterations. The results can be seen in Table 4. We observe that with less data, the pre-trained model quickly eclipses the model trained from scratch and achieves better perplexity, highlighting the need for models with robust linguistic features learned from non-Reddit corpora. Additionally, including refer-Model P.T. Iter. ence history improves performance as well. This difference of 0.47, while smaller than differences between results from different model sizes, is notable due to the large amount of out of sample data that the models were tested on. Model Size Finally, we performed an ablation study on the size of GCC-DEC used. The different size configurations and results can be seen in Table 5. All models fine-tuned from a pre-trained checkpoint for 70,000 iterations at a global batch size of 128. As shown in Shoeybi et al. (2019), perplexity decreases as the size of the model increases. This increase in performance is significant as it has been shown that for conversational models there is a correlation between held-out perplexity measures and human-likeness of sampled turns, especially for models within the same family (Adiwardana et al., 2020). The goal of the human evaluations is to verify the results of the quantitative ablations studies concerning both model size and presence of reference history. This is done by presenting participants on Mechanical Turk with 375 different ground truth conversations of variable lengths (2, 4, and 8 turns) in even proportions. We utilize 3 raters per example in our setting. To filter out spurious raters we explicitly detail in the instructions that payment is contingent on spending at least a certain amount of time on the samples and completing a survey about their Reddit use. If a rater fails to satisfy both these conditions we discard their label. Adopting this simple heuristic for rater quality led to the disqual-ification of 33.2% of our labels. As is common in other work a single conversation is presented with two different realizations for the last turn (Ser-ban et al., 2017). These last turns can be either machine-generated or ground truth depending on the experiment; however, every model generates exactly one reply for each of the ground truth to be used across all experiments. Samples where three new turns are generated can be seen in Table 1 or in Tables 7 13 in the Appendix. When presented with these different realizations, the participant is asked to rate the pair on several qualities such as which is likely to be human generated, which follows the references well, which has good quality, and which exhibits good turn-to-turn coherency. For each of these the rater is asked to decide which in the pair showcases these qualities better. Note that the rater has the option of selecting both of them exhibit the quality of interest, or neither of them do. These were conducted in pairs to provide a frame of reference for the rater. We present the findings as paired results to account for grounding effects. Exact phrasings of these questions, several sample conversations, and details on our Turk setup can be found in Appendix A. We found inter-rater agreement in our studies about 75-80% of the time between 2 of the 3 users who judged samples, and about 10% of the time all 3 agreed unanimously. This is in light of 4 possible choices and 3 raters. It should be noted that our goal is not to make the distribution between model and human statistically different, but rather to make them as close as possible. We have taken several steps to assure the quality of our human evaluations as mentioned in the previous paragraph. Beyond that, any experiment with sufficient statistical power would need a prohibitively expensive number of samples per comparison. The results of this study can be seen in Table 6. We find that in pairwise comparisons bigger models nearly always outperform their smaller counterpart across all tests we ran. For our pairwise tests we only considered pairings between a model and the next largest model size due to the prohibitive cost of computing all pairwise comparisons. For tests against our ground truth we found the results to be rather noisy. Generally, we observed that the models were close to 30-40% in all categories meaning that they were sufficiently similar to the ground truth distribution of data (the neutral options were chosen more frequently). However, we found that Source A Realistic Reference Quality Coherency Source B GCC-NRC (355M) 31% 35% 37% 41% 29% 36% 32% 39% Human GCC-DEC (355M) 32% 34% 38% 40% 31% 33% 32% 36% Human GCC-DEC (774M) 31% 35% 40% 39% 33% 33% 34% 36% Human GCC-DEC (1.2B) 32% 37% 40% 40% 34% 38% 29% 36% Human GCC-DEC (8.3B) 37% 40% 42% 38% 42% 42% 40% 42% Human GCC-DEC (355M) 31% 34% 41% 39% 37% 36% 33% 35% GCC-NRC (355M) GCC-DEC (774M) 33% 33% 39% 40% 34% 29% 34% 36% GCC-DEC (355M) GCC-DEC (1.2B) 31% 31% 40% 38% 33% 32% 38% 38% GCC-DEC (774M) GCC-DEC (8.3B) 41% 37% 39% 43% 38% 38% 42% 39% GCC-DEC (1.2B) Table 6: Experiment results for pairwise comparisons grading if conversation samples seemed human-like (Real-istic), were inline with the reference history (Reference), were interesting and had good grammar (Quality), and if they fit the conversation as a whole (Coherency). our 8.3B parameter model was significantly more polarizing than the rest. The model was capable of generating unique and engaging conversations that, when compared to the ground truth, led to it being explicitly preferred more than other models in all tests. It proved to adhere to the persona more than even the ground truth conversations. In addition to effectively utilizing its references to modulate style as we'd hoped, we also found that its realism, linguistic quality, and coherency was superb. Furthermore, we also tested pairwise comparisons between samples from successive model sizes. On average, the larger model tended to achieve similar or superior performance in all of the categories. All in all, these findings reinforce the results from the quantitative experiments in that larger models better match the target distribution. Reference use From our qualitative study we can clearly see the benefit of using reference history as was alluded to in prior sections. In all four experiments the presence of references leads to better ground truth performance compared to GCC-NRC . In Figure 2 we delve deeper into the results of the ground truth experiments and display labeler preference as a function of conversation length. As can be seen, when the conversation has built up a lot of context, GCC-NRC (355M) moves away from the user style, instead focusing presumably on the style within the conversation. Alternatively, GCC-DEC (355M) adheres more closely to the references instead of the prior conversation context, thus resulting in higher style match for longer conversations. However, this over-adherance to the conversation style does seem to impact conversation quality for longer conversations. It is possible that our inclusion of random reference conversations leads to Figure 2: Test scores compared against the number of dialog turns given as context prior to generating samples for GCC-DEC (355M) and GCC-NRC (355M). this quality degradation. To investigate this future work could consider incorporating information retrieval components to select contextually relevant reference conversations for more accurate personality transfer that does not degrade conversation quality. Transformer Language Models Radford et al. released the first widely used transformer based generative language model, GPT . Follow up work, GPT-2 , showed that language modeling quality improved as model size grew, up to 1.5B parameters (Radford et al., 2019), and that large transformer language models were able to successfully incorporate long term dependencies to model and generate diverse content. Further work with generative transformer language models would go on to push model scale by testing up to 8.3B parameters and 11B parameters in two separate studies (Shoeybi et al., 2019; Raffel et al., 2019). These results have demonstrated performance scaling not only for the original language modeling task, but also on plenty of downstream NLP tasks as well (Radford et al., 2019; Dai et al., 2019; Howard and Ruder, 2018; Liu et al., 2019; Zellers et al., 2019; Yang et al., 2019; Devlin et al., 2018). We demonstrate that this scaling trend applies to the conditional conversation modeling task as well and validate the efficacy of transformer based language models for dialog modeling. Dialog Modeling Generative, non-goal oriented dialog modeling (i.e. chit-chat) has a history of difficulty with modeling long contexts (Serban et al., 2016b), exhibiting a consistent personality (Li et al., 2016), and producing interesting and engaging responses (Li et al., 2015). In general approaches to mitigating these issues have included: tweaking the base recurrent network architecture to introduce persona-based latent variables (that are either learned, amortized, or adversarially generated) (Serban et al., 2017; Bak and Oh, 2019; Chan et al., 2019; Olabiyi et al., 2019), learning speaker embeddings to modulate style (Li et al., 2016), and conditioning on outside information or heuristics to control generation (Young et al., 2018; Joshi et al., 2017; Ghazvininejad et al., 2018). One particular way that inconsistent personalities have been addressed is by conditioning the model on a set of sentences describing the target personality (Zhang et al., 2018; Mazare et al., 2018). As described in the prior section large transformer models have demonstrated success in generating diverse and engaging content. Recent work in conversational modeling has built upon the success of these transformer-based architectures to allow for longer contexts and incorporating multiple turns (Wolf et al., 2019; Olabiyi and Mueller, 2019). Several datasets have been proposed for multiturn conversation modeling (Serban et al., 2016a; Lowe et al., 2015); however, these are limited to relatively short median conversation lengths of 3 and 6-turn respectively. Contexts of these lengths are not able to take full advantage of GPT-2 and other large transformer's modeling capabilities. Addressing this shortcoming and curating a dataset of diverse conversations that cover a wider distribution of conversation lengths from 0 to 15 turn contexts is a central goal of this work. Concurrent work has shown the value of leveraging large amounts of Reddit data to harvest naturally occurring conversations for the purposes of downstream conversational tasks (Zhang et al., 2019). However, this work does not address the issue of stylistic control or the effects of scaling models to large sizes, which are central themes of our work. Other concurrent work has also shown the benefit of learning from large amounts of social media conversations, but it also did not attempt to influence the model output style nor did it scale up the model to 8.3 billion parameters (Adiwardana et al., 2020). When a large conversational model is trained on a diverse collection of multi-turn conversations, it is able to generate quality conversations that are engaging, coherent, and plausibly human. Furthermore, when conditioned on prior conversations, the model is able to utilize a speaker's personality when choosing how to reply in a conversation to allow for greater control and more diverse responses. In the future, we aim to leverage these pre-trained models to advance SOTA on downstream conversational tasks, such as knowledge-grounded conversations or question answering. Recent advancements in learnable information retrieval systems could select contextually relevant references to further strengthen the quality of generated dialogue.
abstain method method abstain result objective abstain result result abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain method abstain abstain abstain objective method abstain objective abstain other result abstain objective method objective abstain abstain abstain abstain abstain abstain other abstain other abstain abstain abstain abstain abstain abstain abstain abstain abstain other abstain abstain abstain abstain abstain other abstain abstain abstain abstain abstain abstain method abstain abstain abstain abstain method abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain method abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain other abstain result abstain abstain abstain abstain result abstain abstain abstain result abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain abstain result result abstain abstain abstain abstain result abstain result result result abstain abstain abstain result abstain abstain abstain result abstain result abstain abstain abstain abstain abstain abstain other other other other objective other other other other other other other objective other abstain other abstain abstain objective abstain