Controlling and Assessing Appropriate Persona Use in LLM-based Dialogue Generation
Organizations: UNIST · POSTECH · POSCO Holdings Inc.
Abstract
In persona-based dialogue generation (PDG), LLMs often overuse persona attributes by incorporating them regardless of dialogue context, resulting in unnatural responses. Despite its practical significance, the underlying causes remain unexplored, with no method to mitigate this problem or metric to assess the appropriateness of persona use. To address these issues, we first conduct a comprehensive analysis of LLM-based PDG, revealing that LLMs exhibit a systematic bias to incorporate all given persona attributes, and that existing metrics fail to capture contextual appropriateness. Building on these findings, we propose Self-CONtrastive Persona Overuse Suppression (SCONPOS) to mitigate overuse by directly intervening in LLMs' internal representations at the prompt encoding stage, without requiring any response generation. We further propose the Persona Appropriateness Score (PAS), a novel metric that penalizes both overuse and underuse. Experimental results demonstrate that SCONPOS systematically reduces overuse, and PAS captures the contextual appropriateness of persona use.
Figures & tables
| Utterance type | Persona setting | PersonaChat | MBTI-S2Conv | ||||||||||||||||||
| Overuse ( ) | Consistency ( ) | Ref. Similarity ( ) | Overuse ( ) | Consistency ( ) | Ref. Similarity ( ) | ||||||||||||||||
| C.Score | P-Dist | P-F1 | BLEU | R-L | B.Score | P-Dist | P-F1 | BLEU | R-L | B.Score | |||||||||||
| Persona irrelevant | No | 0.598 | 0.112 | 0.333 | 0.052 | 0.043 | 0.097 | 0.833 | 0.344 | 0.235 | 0.084 | 0.135 | 0.163 | 0.851 | |||||||
| +Noise | 0.822 | 0.517 | 0.399 | 0.067 | 0.043 | 0.096 | 0.833 | 0.527 | 0.263 | 0.093 | 0.122 | 0.146 | 0.849 | ||||||||
| All | 0.898 | 0.919 | 0.496 | 0.074 | 0.042 | 0.091 | 0.831 | 0.616 | 0.273 | 0.096 | 0.116 | 0.146 | 0.848 | ||||||||
| Persona relevant | No | 0.666 | 0.070 | 0.356 | 0.053 | 0.044 | 0.090 | 0.834 | 0.858 | 0.347 | 0.115 | 0.108 | 0.122 | 0.854 | |||||||
| Vanilla | CoT | Decomp. | Self-refine | CAA | SCONPOS | |
| PersonaChat | ||||||
| Overuse ( ) | 0.917 | 0.867 | 0.899 | 0.913 | 0 .830 | 0.743 |
| ROUGE-L ( ) | 0.086 | 0.090 | 0.090 | 0.079 | 0 .091 | 0.103 |
| PAS ( ) | 0.049 | 0.128 | 0.081 | 0.086 | 0 .224 | 0.301 |
| MBTI-S2Conv | ||||||
| Overuse ( ) | 0.861 | 0.819 | 0.864 | 0.848 | 0 .816 | 0.722 |
| Vanilla | CAA | SCONPOS | |
| Extract: MBTI-S2Conv Steer: PersonaChat | |||
| Overuse ( ) | 0.917 | 0.901 (-2%) | 0.811 (-12%) |
| ROUGE-L ( ) | 0.086 | 0.094 (+9%) | 0.111 (+28%) |
| PAS ( ) | 0.049 | 0.049 (0%) | 0.206 (+320%) |
| Extract: PersonaChat Steer: MBTI-S2Conv | |||
| Overuse ( ) | 0.861 | 0.825 (-4%) | 0.791 (-8%) |
| Vanilla (All) | SCONPOS | SCONPOS (dup.) | |
| PersonaChat | |||
| Overuse ( ) | 0.821 | 0.649 | 0.628 |
| ROUGE-L ( ) | 0.091 | 0.105 | 0.103 |
| PAS ( ) | 0.422 | 0.441 | 0.419 |
| MBTI-S2Conv | |||
| Overuse ( ) | 0.882 | 0.817 | 0.813 |
| Cost | CAA | SCONPOS | |
|---|---|---|---|
| Total extraction time (min) | 254.2 | 56.9 | |
| Response generation time | 180.5 | - | |
| Vector extraction time | 73.7 | 56.9 | |
| Inference time (sec/it) | 4.32 | 4.20 | |
| Storage space (KB) | 20 | 20 | |
| Dataset | ICL Method | Persona Appropriateness | Dialogue Coherence |
|---|---|---|---|
| PersonaChat | Vanilla | 0.76 | 0.68 |
| CoT | 0.70 | 0.60 | |
| Decomp. | 0.74 | 0.72 | |
| Self-refine | 0.66 | 0.58 | |
| MBTI-S2Conv | Vanilla | 0.68 | 0.60 |
| CoT | 0.62 | 0.64 |
| Metric | Overuse | C.Score | P-Dist | P-F1 | PAS |
|---|---|---|---|---|---|
| Pearson’s | -0.028 | 0.026 | 0.010 | -0.043 | 0.093 |
| -value | 0.530 | 0.562 | 0.817 | 0.343 | 0.038 |
Appendix figures & tables27 assets
Supplementary material from the paper’s appendix.
Appendix
| Method | Model | PersonaChat | MBTI-S2Conv | ||
|---|---|---|---|---|---|
| Layer ratio | Layer ratio | ||||
| SCONPOS | Llama3.1 | 5.0 | 0.5 | 5.0 | 0.5 |
| Qwen2.5 | 5.0 | 0.7 | 5.0 | 0.5 | |
| DeepSeek-chat | 2.0 | 0.5 | 2.0 | 0.5 | |
| CAA | Llama3.1 | 5.0 | 0.4 | 5.0 | 0.3 |
| Qwen2.5 | 5.0 | 0.6 | 5.0 | 0.7 | |
| Metric | Overuse | C.Score | P-Dist | P-F1 | PAS |
|---|---|---|---|---|---|
| Pearson’s | - 0.197 | -0.054 | - 0.235 | 0.028 | 0.155 |
| -value | 0.050 | 0.595 | 0.019 | 0.779 | 0.123 |
| Train data ratio | PersonaChat | MBTI-S2Conv | |||||
|---|---|---|---|---|---|---|---|
| Overuse ( ) | ROUGE-L ( ) | PAS ( ) | Overuse ( ) | ROUGE-L ( ) | PAS ( ) | ||
| Vanilla | 0.858 | 0.096 | 0.157 | 0.805 | 0.135 | 0.385 | |
| 5% | 0.717 | 0.104 | 0.306 | 0.700 | 0.143 | 0.513 | |
| 10% | 0.700 | 0.103 | 0.335 | 0.709 | 0.141 | 0.513 | |
| 25% | 0.673 | 0.106 | 0.362 | 0.710 | 0.141 | 0.517 | |
| 50% | 0.672 | 0.106 | 0.358 | 0.705 | 0.142 | 0.517 | |
| Method | PersonaChat | MBTI-S2Conv | |||||
|---|---|---|---|---|---|---|---|
| Overuse ( ) | ROUGE-L ( ) | PAS ( ) | Overuse ( ) | ROUGE-L ( ) | PAS ( ) | ||
| Vanilla | 0.858 | 0.096 | 0.157 | 0.805 | 0.135 | 0.385 | |
| One layer (SCONPOS) | 0.652 | 0.106 | 0.377 | 0.708 | 0.142 | 0.508 | |
| Mid 3 layers | 0.591 | 0.105 | 0.352 | 0.650 | 0.149 | 0.490 | |
| All layers | 0.690 | 0.093 | 0.289 | 0.663 | 0.127 | 0.468 | |
| Method | Vector extraction time (min) | Inference time (sec/it) |
|---|---|---|
| One layer (SCONPOS) | 56.9 | 4.20 |
| Mid 3 layers | 57.7 | 4.52 |
| All layers | 59.0 | 5.22 |
| Model | Cost | CAA | SCONPOS |
| Llama3.1 | Total extraction time (min) | 254.2 | 56.9 |
| Response generation time | 180.5 | - | |
| Vector extraction time | 73.7 | 56.9 | |
| Inference time (sec/it) | 4.32 | 4.20 | |
| Storage space (KB) | 20.0 | 20.0 | |
| Qwen2.5 | Total extraction time (min) | 199.4 | 52.3 |
| Model | Persona setting | PersonaChat | MBTI-S2Conv | ||||||||||||||||||
| Overuse ( ) | Consistency ( ) | Ref. Similarity ( ) | Overuse ( ) | Consistency ( ) | Ref. Similarity ( ) | ||||||||||||||||
| C.Score | P-Dist | P-F1 | BLEU | R-L | B.Score | P-Dist | P-F1 | BLEU | R-L | B.Score | |||||||||||
| Llama3.1 | No | 0.651 | 0.236 | 0.352 | 0.056 | 0.040 | 0.087 | 0.832 | 0.360 | 0.249 | 0.089 | 0.122 | 0.138 | 0.845 | |||||||
| +Noise | 0.881 | 0.622 | 0.411 | 0.066 | 0.041 | 0.084 | 0.831 | 0.627 | 0.285 | 0.101 | 0.105 | 0.124 | 0.842 | ||||||||
| All | 0.940 | 0.913 | 0.493 | 0.071 | 0.039 | 0.083 | 0.829 | 0.741 | 0.298 | 0.104 | 0.100 | 0.123 | 0.841 | ||||||||
| Qwen2.5 | No | 0.574 | 0.049 | 0.308 | 0.051 | 0.047 | 0.109 | 0.837 | 0.427 | 0.268 | 0.096 | 0.138 | 0.156 | 0.854 | |||||||
| Model | Persona setting | PersonaChat | MBTI-S2Conv | ||||||||||||||||||
| Overuse ( ) | Consistency ( ) | Ref. Similarity ( ) | Overuse ( ) | Consistency ( ) | Ref. Similarity ( ) | ||||||||||||||||
| C.Score | P-Dist | P-F1 | BLEU | R-L | B.Score | P-Dist | P-F1 | BLEU | R-L | B.Score | |||||||||||
| Llama3.1 | No | 0.730 | 0.173 | 0.374 | 0.056 | 0.041 | 0.086 | 0.833 | 0.861 | 0.345 | 0.121 | 0.113 | 0.122 | 0.848 | |||||||
| Match | 0.761 | 0.649 | 0.429 | 0.066 | 0.043 | 0.088 | 0.833 | 0.867 | 0.364 | 0.121 | 0.107 | 0.120 | 0.847 | ||||||||
| +Noise | 0.820 | 0.758 | 0.462 | 0.067 | 0.042 | 0.088 | 0.833 | 0.893 | 0.370 | 0.121 | 0.103 | 0.118 | 0.846 | ||||||||
| All | 0.881 | 0.884 | 0.497 | 0.071 | 0.041 | 0.085 | 0.831 | 0.913 | 0.380 | 0.121 | 0.099 | 0.116 | 0.846 | ||||||||
| Utterance type | Persona setting | Agent only | |||||||||
| PersonaChat | MBTI-S2Conv | ||||||||||
| Llama3.1 | Qwen2.5 | DeepSeek-chat | GPT4.1 | Llama3.1 | Qwen2.5 | DeepSeek-chat | GPT4.1 | ||||
| Persona irrelevant | No | 57.8 | 42.1 | 76.1 | 49.0 | 48.8 | 47.5 | 38.9 | 45.0 | ||
| +Noise | 63.5 | 49.0 | 68.5 | 55.7 | 69.4 | 56.3 | 40.7 | 58.9 | |||
| All | 75.0 | 60.5 | 83.4 | 64.1 | 79.8 | 57.9 | 43.7 | 73.1 | |||
| Persona relevant | No | 59.2 | 44.1 | 73.2 | 51.8 | 104.6 | 94.6 | 112.0 | 130.2 | ||
| Utterance type | Persona setting | Partner + Agent | |||||||||
| PersonaChat | MBTI-S2Conv | ||||||||||
| Llama3.1 | Qwen2.5 | DeepSeek-chat | GPT4.1 | Llama3.1 | Qwen2.5 | DeepSeek-chat | GPT4.1 | ||||
| Persona irrelevant | No | 57.2 | 41.2 | 76.3 | 48.2 | 44.6 | 44.8 | 35.0 | 39.3 | ||
| +Noise | 59.3 | 45.7 | 74.9 | 51.5 | 62.3 | 51.7 | 41.8 | 50.0 | |||
| All | 73.7 | 56.4 | 75.3 | 64.5 | 71.1 | 56.7 | 42.2 | 70.2 | |||
| Persona relevant | No | 59.3 | 44.3 | 73.9 | 51.7 | 104.7 | 94.5 | 111.8 | 130.2 | ||
| Utterance type | Persona setting | PersonaChat | MBTI-S2Conv | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Overuse ( ) | Consistency ( ) | Ref. Similarity ( ) | Overuse ( ) | Consistency ( ) | Ref. Similarity ( ) | ||||||||||||||||
| C.Score | P-Dist | P-F1 | BLEU | R-L | B.Score | P-Dist | P-F1 | BLEU | R-L | B.Score | |||||||||||
| Llama3.1 | No | 0.621 | 0.236 | 0.340 | 0.056 | 0.040 | 0.087 | 0.832 | 0.328 | 0.241 | 0.087 | 0.123 | 0.139 | 0.844 | |||||||
| +Noise | 0.824 | 0.523 | 0.363 | 0.060 | 0.040 | 0.085 | 0.831 | 0.546 | 0.271 | 0.100 | 0.106 | 0.127 | 0.841 | ||||||||
| All | 0.948 | 0.913 | 0.423 | 0.063 | 0.039 | 0.085 | 0.830 | 0.718 | 0.282 | 0.100 | 0.101 | 0.125 | 0.840 | ||||||||
| Qwen2.5 | No | 0.539 | 0.072 | 0.304 | 0.051 | 0.047 | 0.112 | 0.838 | 0.397 | 0.260 | 0.096 | 0.140 | 0.158 | 0.854 | |||||||
| Utterance type | Persona setting | PersonaChat | MBTI-S2Conv | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Overuse ( ) | Consistency ( ) | Ref. Similarity ( ) | Overuse ( ) | Consistency ( ) | Ref. Similarity ( ) | ||||||||||||||||
| C.Score | P-Dist | P-F1 | BLEU | R-L | B.Score | P-Dist | P-F1 | BLEU | R-L | B.Score | |||||||||||
| Llama3.1 | No | 0.736 | 0.421 | 0.371 | 0.057 | 0.041 | 0.086 | 0.833 | 0.861 | 0.344 | 0.124 | 0.114 | 0.122 | 0.848 | |||||||
| Match | 0.754 | 0.793 | 0.393 | 0.060 | 0.043 | 0.089 | 0.833 | 0.875 | 0.358 | 0.122 | 0.105 | 0.118 | 0.845 | ||||||||
| +Noise | 0.807 | 0.839 | 0.403 | 0.062 | 0.043 | 0.087 | 0.832 | 0.889 | 0.362 | 0.122 | 0.103 | 0.117 | 0.845 | ||||||||
| All | 0.890 | 0.978 | 0.437 | 0.065 | 0.041 | 0.084 | 0.831 | 0.918 | 0.370 | 0.122 | 0.099 | 0.115 | 0.845 | ||||||||
| Model | Method | PersonaChat | MBTI-S2Conv | |||||
| Overuse ( ) | ROUGE-L ( ) | PAS ( ) | Overuse ( ) | ROUGE-L ( ) | PAS ( ) | |||
| Llama3.1 | Vanilla | 0.917 | 0.086 | 0.049 | 0.861 | 0.120 | 0.322 | |
| CoT | 0.867 | 0.090 | 0.128 | 0.819 | 0.120 | 0.402 | ||
| Decomp. | 0.899 | 0.090 | 0.081 | 0.864 | 0.116 | 0.326 | ||
| Self-refine | 0.913 | 0.079 | 0.086 | 0.848 | 0.111 | 0.335 | ||
| CAA | 0 .830 | 0 .091 | 0 .224 | 0 .816 | 0 .127 | 0 .423 | ||
| Model | Method | PersonaChat | MBTI-S2Conv | |||||
|---|---|---|---|---|---|---|---|---|
| Overuse ( ) | ROUGE-L ( ) | PAS ( ) | Overuse ( ) | ROUGE-L ( ) | PAS ( ) | |||
| Llama3.1 | Vanilla | 0.92 0.74 (-19%) | 0.09 0.10 (+19%) | 0.05 0.30 (+515%) | 0.86 0.72 (-16%) | 0.12 0.14 (+12%) | 0.32 0.54 (+68%) | |
| CoT | 0.87 0.70 (-20%) | 0.09 0.09 (+5%) | 0.13 0.32 (+149%) | 0.82 0.73 (-11%) | 0.12 0.14 (+14%) | 0.40 0.52 (+29%) | ||
| Decomp. | 0.90 0.62 (-31%) | 0.09 0.09 (+5%) | 0.08 0.42 (+418%) | 0.86 0.74 (-14%) | 0.12 0.14 (+20%) | 0.33 0.48 (+47%) | ||
| Self-refine | 0.91 0.68 (-26%) | 0.08 0.08 (+6%) | 0.09 0.35 (+305%) | 0.85 0.73 (-14%) | 0.11 0.13 (+15%) | 0.34 0.53 (+58%) | ||
| Qwen2.5 | Vanilla | 0.88 0.72 (-19%) | 0.10 0.11 (+7%) | 0.14 0.34 (+150%) | 0.83 0.75 (-10%) | 0.13 0.14 (+5%) | 0.35 0.45 (+28%) | |
| Model | MBTI-S2Conv PersonaChat | PersonaChat MBTI-S2Conv | |||||
|---|---|---|---|---|---|---|---|
| Overuse ( ) | ROUGE-L ( ) | PAS ( ) | Overuse ( ) | ROUGE-L ( ) | PAS ( ) | ||
| Llama3.1 | 0.917 | 0.086 | 0.049 | 0.861 | 0.120 | 0.322 | |
| +SCONPOS | 0.811 (-12%) | 0.111 (+28%) | 0.206 (+320%) | 0.791 (-8%) | 0.135 (+12%) | 0.455 (+41%) | |
| + CAA | 0.901 (-2%) | 0.094 (+9%) | 0.049 (-0%) | 0.825 (-4%) | 0.117 (-3%) | 0.385 (+19%) | |
| Qwen2.5 | 0.880 | 0.103 | 0.138 | 0.827 | 0.129 | 0.354 | |
| +SCONPOS | 0.769 (-12%) | 0.122 (+20%) | 0.266 (+93%) | 0.797 (-4%) | 0.143 (+11%) | 0.379 (+9%) | |
| Type | Artifact | License | Link |
| Dataset | PersonaChat | Unknown | https://github.com/facebookresearch/ParlAI/tree/main/projects/personachat |
| MBTI-S2Conv | Unknown | https://github.com/morecry/CharacterChat | |
| Model | Llama-3.1-8B-Instruct | Apache-2.0 | https://huggingface.co/meta-llama/Llama-3.1-8B-Instruct |
| Qwen2.5-7B-Instruct | Apache-2.0 | https://huggingface.co/Qwen/Qwen2.5-7B-Instruct | |
| DeepSeek-llm-7b-chat | MIT | https://huggingface.co/deepseek-ai/deepseek-llm-7b-chat | |
| Software | HuggingFace Transformers | Apache-2.0 | https://github.com/huggingface/transformers |
Persona-Conditioned Generation
Persona-conditioned generation uses profiles, traits, or histories to steer AI outputs toward specified identities, preferences, and behaviors.
See all 109 papers