Enhancing Persona Consistency for LLMs' Role-Playing using Persona-Aware Contrastive Learning

Personas, identity, and agents2025ACL AnthologyApproved editorial review

Authors: Ke Ji, Yixin Lian, Linxu Li, Jingsheng Gao, Weiyuan Li, Bin Dai

Keywords: Large Language Models, Personality, Persona, Model Evaluation, LLM Evaluation

Source: Open primary source (opens in a new tab)

6
Authors
10
Findings
24
Limitations
11
Evidence

Editorial summary

English

Persona-Aware Contrastive Learning (PCL) is a recipe for improving fictional-character role-play, not a method that measures or learns human personality. It combines three components. Chain of Persona (COP) adds five explicit self-question/self-answer steps about the character profile and dialogue history before the final reply. Because Qwen-7B and Baichuan2-7B do not always follow that format, the warmup takes 1,000 profile/history pairs, asks a stronger GPT model to generate complete COP chains, and uses those synthetic targets for three epochs of supervised fine-tuning. Contrastive Self-Play Alignment then generates y+ with the profile present and y- after deleting it; DPO automatically treats y+ as preferred and y- as rejected. Pairs are regenerated after each epoch and training runs for two epochs. Annotation-free therefore means no humans label each preference. The main pipeline still depends on 1,000 GPT-generated synthetic annotations, and each preference label is assigned by construction without checking whether the profile-conditioned answer is actually better. An appendix replaces GPT warmup with COP data generated and filtered by few-shot Qwen. This removes reliance on a stronger external model but still uses 1,000 synthetic targets. GPT-3.5-turbo-1106 and GPT-4-0125-preview receive no SFT, DPO, or self-play; they only receive the COP prompt. The table itself calls this PCL*. Their gains therefore validate reflective prompting, not contrastive learning. Evaluation uses CharacterEval, a Chinese fictional-character dialogue benchmark. Its source paper reports 77 characters, 1,785 multi-turn dialogues, and 23,020 examples, although the PCL paper does not state how many instances remain after its transformations. In the main setting, all 77 characters occur in both train and test. The transfer setting randomly chooses 60 profiles for training and reserves 17 disjoint profiles; no seed, character list, or split files are published. Open models are Qwen/Qwen-7B-Chat, Baichuan2-7B, and CharacterGLM-6B. Average CharacterRM consistency rises from 2.700 to 2.799 for Baichuan, 2.540 to 2.616 for Qwen, and 1.805 to 2.076 for CharacterGLM. Prompt-only COP raises GPT-3.5 from 2.155 to 2.280 and GPT-4 from 2.697 to 2.785. These aggregates hide important regressions. Relative to ICL, PCL lowers Persona-Behavior by 0.386 and Persona-Utterance by 0.063 for Baichuan; for Qwen the drops are 0.461 and 0.139. Average consistency gains mainly come from Knowledge-Exposure, Knowledge-Accuracy, and Knowledge-Hallucination. Qwen conversational Consistency also falls slightly from 3.229 to 3.224, and several attractiveness submetrics remain below baseline. It is therefore inaccurate to say that every consistency dimension improves. On 17 unseen characters, the three-dimension average rises only 0.064 for Baichuan (2.934 to 2.998) and 0.059 for Qwen (2.849 to 2.908), without intervals or repeated splits. Five reflections have the best average, 2.941 versus 2.849 with no chain; ten falls to 2.935. Ablations support contributions from both COP and CSPA, although average gains are modest. Human evaluation uses ten company researchers and interns, trained to harmonize judgments. Each selects 50 examples, yielding 500 judgments per comparison. PCL records 262 wins, 43 ties, and 195 losses for Baichuan: 52.4% wins over all judgments or 57.3% among decisive judgments. For Qwen it records 303/137/60: 60.6% overall or 83.5% among decisive judgments. Inter-rater agreement, blinding, character assignment, and significance tests are absent, and human experts is stronger than the actual description of internal researchers and interns. GPT-4-turbo-2024-04-09 judges each ordering twice to reduce position bias. It reports 602/92/306 wins/ties/losses for Baichuan and 582/181/237 for Qwen, but human agreement is not validated and the reconciliation of discordant orders is not explained. CharacterRM comes from the same CharacterEval ecosystem that supplies the data, so it is not an independent evaluator either. The paper claims models significantly outperform baselines without reporting deviations, confidence intervals, p-values, tests, or seed repetitions across its twelve submetrics. General-knowledge checking uses Qwen only: mean accuracy across six benchmarks changes from 37.4 to 37.6, while OpenBookQA drops four points and MedQA-cn drops 0.4. This is compatible with approximately maintained average knowledge but does not demonstrate absence of catastrophic forgetting. Reproducibility is insufficient. No PCL code, checkpoints, warmup targets, DPO pairs, outputs, splits, or scripts are linked. The GPT model that generates the main 1,000 chains is not versioned; DPO beta is missing; hardware, cost, seeds, temperature, decoding, checkpoint selection, and final-response parsing are absent. Table 12 changes the scale from roughly 1-4 to 0-100 without defining the transformation. It is also unclear whether CharacterRM receives all five explicit reflections or only the final reply. If it receives the full text, the method directly exposes more profile facts and tokens to the evaluator, confounding length and content. The defensible conclusion is that forcing five verbal character checks and, for open models, fine-tuning on synthetic targets plus profile/no-profile pairs raises several CharacterEval averages and is often preferred by internal judges and GPT-4. It does not establish acquired personality, improvement on every persona-consistency component, freedom from synthetic annotation, broad unseen-persona generalization, or cost-free knowledge preservation.

Español

Persona-Aware Contrastive Learning (PCL) es una receta para mejorar role-play de personajes, no un método que mida o aprenda personalidad humana. Combina tres piezas. Chain of Persona (COP) añade al prompt cinco preguntas y respuestas internas sobre el perfil del personaje y el diálogo previo antes de generar la réplica final. Como Qwen-7B y Baichuan2-7B no siempre obedecen ese formato, el warm-up toma 1.000 pares de perfil e historial, pide a un modelo GPT más capaz que genere la cadena completa y usa esas salidas sintéticas como objetivos de SFT durante tres epochs. Después, Contrastive Self-Play Alignment genera una respuesta y+ con el perfil presente y otra y- tras borrarlo; DPO trata automáticamente y+ como preferida y y- como rechazada. Los pares se regeneran tras cada epoch y se entrena dos epochs. La etiqueta annotation-free solo significa que no se pide a humanos que anoten cada preferencia. El pipeline principal sí depende de 1.000 anotaciones sintéticas producidas por GPT, y cada etiqueta de preferencia se decide por construcción, sin comprobar que la respuesta con perfil sea realmente mejor. Un apéndice sustituye el warm-up de GPT por datos COP generados y filtrados con Qwen few-shot; elimina el modelo externo fuerte, pero sigue usando 1.000 objetivos sintéticos. En GPT-3.5-turbo-1106 y GPT-4-0125-preview no se ejecutan SFT, DPO ni self-play: solo se aplica el prompt COP. El propio pie de tabla llama PCL* a esta condición. Por tanto, sus mejoras validan el prompt de reflexión, no el aprendizaje contrastivo. La evaluación usa CharacterEval, un benchmark chino de diálogos de personajes. Su fuente original contiene 77 personajes, 1.785 diálogos multiturno y 23.020 ejemplos, aunque este paper no informa cuántas instancias procesa después de sus transformaciones. En el setting principal, los 77 personajes aparecen tanto en entrenamiento como en prueba. El setting de transferencia elige aleatoriamente 60 para entrenar y reserva 17 perfiles disjuntos; no publica semilla, lista de personajes ni particiones. Los modelos abiertos son Qwen/Qwen-7B-Chat, Baichuan2-7B y CharacterGLM-6B. En consistencia de personaje, el promedio CharacterRM sube de 2,700 a 2,799 para Baichuan, de 2,540 a 2,616 para Qwen y de 1,805 a 2,076 para CharacterGLM. COP sin entrenamiento sube GPT-3.5 de 2,155 a 2,280 y GPT-4 de 2,697 a 2,785. Estos agregados ocultan regresiones importantes. Frente a ICL, PCL reduce Persona-Behavior en 0,386 y Persona-Utterance en 0,063 para Baichuan; en Qwen las caídas son 0,461 y 0,139. Las mejoras del promedio de consistencia proceden sobre todo de Knowledge-Exposure, Knowledge-Accuracy y Knowledge-Hallucination. En Qwen, la submétrica de consistencia conversacional también baja levemente de 3,229 a 3,224, y varias métricas de atractivo quedan por debajo del baseline. Así, no es fiel decir que todas las dimensiones de consistencia mejoran. En los 17 personajes no vistos, el promedio de tres dimensiones sube solo 0,064 para Baichuan (2,934 a 2,998) y 0,059 para Qwen (2,849 a 2,908), sin intervalos ni repetición de splits. La cadena obtiene su mejor promedio con cinco reflexiones: 2,941 frente a 2,849 sin cadena; con diez baja a 2,935. La ablación apoya que COP y CSPA contribuyen al promedio, aunque su escala de mejora es modesta. La evaluación humana reúne diez investigadores y becarios de la empresa de los autores, entrenados para armonizar criterios. Cada uno selecciona 50 ejemplos y se obtienen 500 juicios por comparación. PCL gana 262, empata 43 y pierde 195 veces para Baichuan: 52,4% de todos los juicios o 57,3% de los decisivos. Para Qwen gana 303, empata 137 y pierde 60: 60,6% del total u 83,5% de los decisivos. No se informa acuerdo interjueces, cegamiento, asignación por personaje o test estadístico, y llamar a estos evaluadores human experts es más fuerte que la descripción real de investigadores y becarios internos. GPT-4-turbo-2024-04-09 evalúa cada orden dos veces para reducir sesgo posicional. Reporta 602/92/306 victorias/empates/derrotas para Baichuan y 582/181/237 para Qwen, pero no se valida su acuerdo con humanos ni se explica cómo se reconcilian órdenes discordantes. CharacterRM procede del mismo ecosistema CharacterEval que proporciona los datos, por lo que tampoco es un evaluador independiente. El paper afirma significantly outperform sin dar desviaciones, intervalos, p-values, tests o réplicas por semilla en sus doce submétricas. El control de conocimiento general solo usa Qwen: el promedio de seis benchmarks cambia de 37,4 a 37,6, mientras OpenBookQA cae cuatro puntos y MedQA-cn 0,4. Esto es compatible con conocimiento medio aproximadamente conservado, pero no demuestra ausencia de catastrophic forgetting. La reproducibilidad es insuficiente. No se enlazan código PCL, checkpoints, datos warm-up, pares DPO, outputs, particiones o scripts. No se versiona el GPT que genera las 1.000 cadenas principales; falta beta de DPO; no se publican hardware, coste, semillas, temperatura, decoding, criterio de checkpoint o parser del bloque final. Table 12 cambia la escala de aproximadamente 1–4 a 0–100 sin definir la transformación. Tampoco se aclara si CharacterRM recibe las cinco reflexiones explícitas o solo la respuesta final; si recibe todo, el método expone directamente datos del perfil y más tokens al juez, un confusor de longitud y contenido. La conclusión defendible es que obligar al modelo a verbalizar cinco comprobaciones del personaje y, en modelos abiertos, afinarlo con objetivos sintéticos y pares con/sin perfil, aumenta varios promedios de CharacterEval y es preferido con frecuencia por jueces internos y GPT-4. No demuestra que el modelo adquiera una personalidad, que toda consistencia de personaje mejore, que el método carezca de anotación sintética, que generalice ampliamente a perfiles nuevos o que preserve conocimiento sin coste.

Research question

Can an explicit chain of self-reflection about a character, combined with synthetic SFT and DPO over responses generated with and without a profile, improve role-play on CharacterEval without human preference annotations?

Method

COP forces five questions/answers about profile and history. For Qwen-7B and Baichuan2-7B, an unversioned GPT generates 1,000 COP targets for warm-up SFT; then y+ pairs with profile and y- without profile are created and optimized with iterative DPO. GPT-3.5 and GPT-4 only receive COP. Evaluation is done with CharacterRM, ten internal judges, and GPT-4, in one setting with overlapping characters and another 60/17 with disjoint profiles.

Sample: The publication does not report the final number of CharacterEval dialogues or examples used per split. The general setting shares the 77 characters between train and test; transfer uses 60/17 disjoint profiles. There are 1,000 synthetic COP targets. The human evaluation contains 500 pairwise comparison decisions by ten internal researchers/fellows; GPT-4 reports 1,000 comparisons per backbone. No repetitions by seed are published.

Findings

  • The current source is Findings of ACL 2025, Anthology ID 2025.findings-acl.1344, DOI 10.18653/v1/2025.findings-acl.1344, pages 26221-26238.
  • The 18 pages were rendered and visually inspected; SHA-256 8074843d52da2a772172e6fb98154d0c9f42846a75c9cfc8b773504aef9b2d1b.
  • Open PCL uses synthetic warm-up SFT, DPO with pairs with/without profile, and COP at inference; closed PCL* uses only COP.
  • Consistency averages rise 0.099 on Baichuan, 0.076 on Qwen, and 0.271 on CharacterGLM.
  • Persona-Behavior and Persona-Utterance worsen compared to ICL for Qwen and Baichuan.
  • On 17 unseen profiles, averages rise 0.064 for Baichuan and 0.059 for Qwen.
  • Human judges prefer PCL in 262/500 Baichuan cases and 303/500 Qwen cases, with 43 and 137 ties respectively.
  • GPT-4 prefers PCL in 602/1,000 Baichuan cases and 582/1,000 Qwen cases, with 92 and 181 ties.
  • Five self-reflections achieve the best average; ten do not provide an additional improvement.
  • Qwen's average knowledge accuracy changes from 37.4 to 37.6, with a four-point drop on OpenBookQA.

Limitations

  • Annotation-free excludes human labels, but not synthetic targets or automatic preference assumptions.
  • The main warm-up depends on 1,000 outputs from an unversioned GPT.
  • The profiled response is declared preferred without checking its quality, factuality, or consistency.
  • Erasing the profile creates an easy negative and does not guarantee a semantically controlled contrast.
  • GPT-3.5 and GPT-4 do not test contrastive learning; they test COP prompting.
  • The main setting allows the same characters in train and test.
  • The 60/17 split does not fix a seed, list, or multiple partitions.
  • The final number of examples per split is not reported.
  • Averages hide drops in Persona-Behavior, Persona-Utterance, and some conversational/attractive submetrics.
  • There are no tests, p-values, intervals, deviations, or replication by seeds despite using significant.
  • CharacterRM and CharacterEval come from the same benchmark, limiting independence.
  • It is not clarified whether the judge sees the five reflections or only the final response.
  • Length, explicit profile exposure, or COP verbosity are not controlled.
  • The human judges are researchers and fellows from the authoring company, not an independent sample.
  • There is no inter-judge agreement, blinding detail, or per-character analysis.
  • GPT-4 judge is not validated against humans and it is not explained how discordant orders are aggregated.
  • Knowledge preservation is evaluated on a single backbone and six datasets.
  • The nearly equal knowledge average coexists with relevant specific losses.
  • No equivalence margin is defined to claim preservation.
  • No code, checkpoints, targets, DPO pairs, outputs, or splits are published.
  • The DPO beta is missing and the warm-up GPT has no version.
  • Hardware, cost, seeds, temperature, sampling, and checkpoint selection are missing.
  • Table 12 uses a 0-100 scale not reconciled with tables 1-4.
  • The analysis is limited to fictional characters and Chinese dialogue from one benchmark.

What the study does not establish

  • It does not establish that the model acquires an internal personality.
  • It does not demonstrate improvement in all character consistency components.
  • It does not demonstrate contrastive learning in GPT-3.5 or GPT-4.
  • It does not demonstrate the absence of synthetic supervision.
  • It does not demonstrate that each DPO pair contains a valid preference.
  • It does not demonstrate broad generalization to new characters, languages, or domains.
  • It does not demonstrate statistical significance of the tabulated differences.
  • It does not demonstrate independent human evaluation or robust agreement.
  • It does not demonstrate general knowledge preservation without losses.
  • It does not allow reproducing the training or the complete tables.

Traceability

Scope: Full text

Version: Findings of ACL 2025, Anthology ID 2025.findings-acl.1344, DOI 10.18653/v1/2025.findings-acl.1344, pages 26221-26238, 18 pages; supersedes arXiv:2503.17662v2

Consulted source: https://aclanthology.org/2025.findings-acl.1344/

Review: Codex complete bilingual full-text fidelity pass using the published ACL 2025 version, all-page visual inspection, method decomposition, open-versus-black-box reconciliation, table arithmetic, submetric direction audit, human and GPT-4 judge validity review, CharacterEval source reconciliation, code/artifact search, and reproducibility assessment; summaries written from the full paper, appendices, tables, and benchmark source rather than abstract keywords, 2026-07-15

Approval: Codex fidelity pass, 2026-07-15

English translation: approved, 2026-07-18

Models evaluated

  • Qwen/Qwen-7B-Chat
  • baichuan-inc/Baichuan2-7B
  • CharacterGLM-6B
  • GPT-3.5-turbo-1106 prompt-only COP
  • GPT-4-0125-preview prompt-only COP
  • Unspecified stronger GPT model for 1,000 COP warmup targets
  • gpt-4-turbo-2024-04-09 pairwise evaluator

Instruments and metrics

  • Five-step Chain of Persona prompt
  • Synthetic COP supervised warmup
  • Profile-present versus profile-removed self-play pairs
  • Direct Preference Optimization
  • CharacterRM with 12 submetrics across character consistency, conversational ability, and role-playing attractiveness
  • Pairwise evaluation by ten company researchers and interns
  • Order-swapped GPT-4 pairwise evaluation
  • Six general-knowledge benchmarks

Data used

  • CharacterEval: 77 Chinese fictional characters; upstream source reports 1,785 multi-turn dialogues and 23,020 examples
  • General setting with all 77 character profiles represented in train and test
  • Transfer setting with random 60-profile train and 17-profile test split; seed and files unreported
  • 1,000 GPT-generated COP warmup targets in the main open-model pipeline
  • OpenBookQA, MedQA-cn, Natural Questions, TriviaQA, ARC-E, and ARC-C for Qwen knowledge evaluation
  • No released PCL outputs, preference pairs, checkpoints, or training code

Evidence and location

  • Version, authors, venue, DOI, and pages: ACL Anthology record and published PDF page 26221 checked 15 July 2026
  • COP, warm-up SFT, pairs with/without profile, and DPO: Sections 4.1-4.4, pages 26223-26225
  • Models, settings 77 and 60/17, and baselines: Sections 5.1.1-5.1.2 and Table 1, pages 26225-26226
  • Metrics and detailed results: Sections 5.2-5.4 and Tables 2-4, pages 26226-26228
  • Transfer, length, and ablation: Sections 5.6-5.8 and Tables 5-7, page 26228
  • Human and GPT-4 results: Appendix E and Tables 9-10, pages 26233-26235
  • Warm-up without GPT and alternative scale: Appendix D and Table 12, page 26234
  • Upstream benchmark size: CharacterEval source paper arXiv:2401.01275 and official repository metadata checked 15 July 2026
  • Acknowledged limitations: Limitations, page 26229
  • Comprehensive audit: reports/verification/article-188-pcl-method-and-evaluation-audit.json
  • Complete visual inspection: All 18 published PDF pages rendered and visually inspected on 15 July 2026