CRPO: Character-centric Group Relative Policy Optimization for Role-aware Reasoning in Role-playing Agents

Personas, identity, and agents2026arXivApproved editorial review

Authors: Yihong Tang, Kehai Chen, Liang Yue, Benyou Wang, Min Zhang

Keywords: Character-centric reinforcement learning, Group Relative Policy Optimization, Role-playing agents, Persona fidelity, Reward design, Automatic evaluation

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

5
Authors
10
Findings
18
Limitations
5
Evidence

Editorial summary

English

CRPO adapts Group Relative Policy Optimization to train character-role-playing agents. Its operational goal is to improve behavioral and stylistic fidelity without losing task response quality; it does not measure internal personality, cognition, or human-like reasoning. The method combines three components: separate within-prompt task advantages and a style signal described as historical and global per character; entropy-based instance gating plus a role-entropy-dependent KL controller; and a generic response generated after removing the character prompt as a negative anchor. Task rewards cover focus, focus attributes, and format, while style rewards are BLEU-1 through BLEU-4 and ROUGE-1, ROUGE-2, and ROUGE-L overlap with references. The optimized construct is therefore tag compliance and reference similarity, not directly validated identity, psychological coherence, or cognitive depth. Qwen3-8B and Llama-3.2-3B-Instruct are trained on 650 randomly selected CharacterBench samples with seven responses and one anchor per prompt. CharacterBench uses the learned automatic CharacterJudge; SocialBench evaluates social-knowledge dimensions. Qwen's CharacterBench average rises from 3.701 to 4.043, above OAR at 3.882, and Llama's rises from 3.681 to 3.832. These are the best reported averages for each backbone, but not universal gains. Qwen Human-Likeness falls from 3.445 to 3.300 and Engagement from 3.270 to 3.130. Llama falls from 2.890 to 2.750 and from 3.320 to 2.785 on those dimensions, while Follow-up Ability is 2.113 versus PPO's 2.750. SocialBench averages rise from .769 to .802 for Qwen and .633 to .699 for Llama. The Qwen table contradicts the prose claim that CRPO surpasses the second-best method on HSD: its .790 trails Dr.GRPO at .870, PPO at .860, and several others. Qwen ablations report 4.043 for full CRPO, 3.811 without dual-stream advantage, 3.962 without adaptation, and 3.942 without the anchor. No repeated runs, error bars, intervals, or tests support statistical use of the word significant. Four HCI graduate students compare four-turn conversations for 20 characters between CRPO and five baselines. The paper reports blinded order, wins only when both knowledge and style are better, 100 comparisons per model pair, $10/hour compensation, and Fleiss kappa .64 on an unspecified subset. The chart favors CRPO, but raw labels, exact machine-readable counts, uncertainty, assignments, and analysis are absent. This supports a narrow preference against selected baselines, not general utility. The public code materially conflicts with the paper. The launch script changes into EasyR1 and then requests a configuration path that exists only at repository root; training and validation JSON, role mapping, template, and reward implementation are also missing, so the released experiment cannot start. The paper states 30 epochs, rollout batch 512, and actor batch 128; the shell overrides these to 6, 256, and 32, while the YAML states one epoch and defaults to Qwen2.5-7B. No Llama configuration exists. Code normalizes style reward again within each prompt, contrary to the described global absolute signal. The 1−.02H gate can only range from about .986 to 1, not the strong suppression assumed by the proof. The KL target uses (global entropy/role entropy)^1.5, assigning higher-entropy roles a smaller target, opposite to the paper; when observed KL exceeds target, the update lowers the penalty coefficient, also opposite to the claimed stabilizing behavior. Logged coefficients are one step stale and a computed scale factor is passed into policy loss but never used. The anchor truncates at the last literal Character token, which is brittle to tokenization, absence, and content occurrences and is not structured prompt removal. The theoretical claims do not follow: one assumes a weight bound the algorithm does not ensure, and the other treats changing a KL target as guaranteeing inclusion of an optimal policy in the feasible set. Benchmark leakage is a serious unresolved risk because 650 random CharacterBench samples are used for training and CharacterBench is then evaluated without released IDs or a demonstrated row-, reference-, or character-disjoint split. The exact CharacterJudge checkpoint, prompt, decoding, and parser are not reported. SocialBench provides useful external evidence but cannot repair the contaminated construct or validate persona fidelity. Data-efficiency comparisons mix backbones, datasets, methods, and training scales. Safety evaluation is absent: a reward tag named Safety is not a safety benchmark, and the study does not test abuse, emotional dependency, minors, stereotypes, jailbreaks, alignment retention, or deployment effects. The repository has five commits and 91 files, mostly vendored EasyR1, but lacks a root license, release, tests, CI, locked environment, data, rewards, prompts, checkpoints, logs, outputs, evaluation scripts, and human labels. The defensible contribution is an interesting RL objective with promising benchmark averages and limited human-preference evidence. It does not establish cognition, real psychological fidelity, safety, dimension-wise superiority, data efficiency, or independent reproducibility; paper, configuration, and implementation contradictions prevent the results from being treated as a verified executable artifact.

Español

CRPO propone adaptar Group Relative Policy Optimization al entrenamiento de agentes que interpretan personajes. El objetivo operativo es mejorar la fidelidad conductual y estilística sin perder la capacidad de responder a la tarea; no es una medición de personalidad interna, cognición o razonamiento humano. El método combina tres piezas. Primero, separa una ventaja de tarea calculada de forma relativa dentro de cada grupo de respuestas y una señal de estilo que el paper describe como histórica y global por personaje. Segundo, aplica una compuerta basada en la entropía binaria de identificación del personaje y un controlador de KL dependiente de la entropía del rol. Tercero, genera una respuesta «genérica» eliminando el prompt del personaje y la usa como ancla negativa. Las recompensas de tarea son foco, atributos de foco y formato; las de estilo son BLEU-1 a BLEU-4 y ROUGE-1, ROUGE-2 y ROUGE-L frente a respuestas de referencia. Por tanto, CRPO optimiza cumplimiento de etiquetas y solapamiento con referencias, no una validación directa de identidad, coherencia psicológica o profundidad cognitiva. Los experimentos afinan Qwen3-8B y Llama-3.2-3B-Instruct sobre 650 muestras aleatorias de CharacterBench. Se generan siete respuestas y un ancla por prompt. CharacterBench se evalúa con el juez automático aprendido CharacterJudge y SocialBench con sus dimensiones de conocimiento social. En CharacterBench, el promedio de Qwen pasa de 3,701 en el modelo base a 4,043 con CRPO, frente a 3,882 con OAR; Llama pasa de 3,681 a 3,832. Estos son los mejores promedios mostrados para cada backbone, pero no mejoras universales: en Qwen, Human-Likeness baja de 3,445 a 3,300 y Engagement de 3,270 a 3,130; en Llama bajan de 2,890 a 2,750 y de 3,320 a 2,785, y Follow-up Ability queda en 2,113 frente a 2,750 de PPO. En SocialBench, el promedio sube de 0,769 a 0,802 para Qwen y de 0,633 a 0,699 para Llama. La tabla de Qwen contradice una afirmación narrativa: CRPO obtiene 0,790 en HSD, por debajo de Dr.GRPO (0,870), PPO (0,860) y otros métodos, por lo que no supera al segundo mejor en esa dimensión. Las ablaciones de Qwen reportan 4,043 para el sistema completo, 3,811 sin doble flujo, 3,962 sin adaptación y 3,942 sin ancla. No hay repeticiones, barras de error, intervalos ni pruebas que permitan interpretar «significativo» como significación estadística. Cuatro estudiantes de posgrado en HCI comparan conversaciones de cuatro turnos para 20 personajes entre CRPO y cinco baselines. Declaran orden ciego, victoria solo si mejora conocimiento y estilo, 100 comparaciones por pareja de modelos, 10 dólares por hora y kappa de Fleiss 0,64 en un subconjunto no especificado. El gráfico favorece a CRPO, pero no se publican etiquetas, conteos exactos legibles, incertidumbre, asignaciones ni análisis reproducible. Esta evidencia sostiene una preferencia humana estrecha frente a los comparadores elegidos, no utilidad general. La auditoría del código encuentra contradicciones materiales. El script cambia a EasyR1 y luego busca una configuración en EasyR1/script que solo existe en la raíz; también faltan los JSON de entrenamiento y validación, el mapa de roles, la plantilla y la función de recompensa. El experimento no puede iniciarse desde el repositorio publicado. El paper declara 30 épocas, batch de rollout 512 y actor 128; el script los sustituye por 6, 256 y 32, mientras el YAML dice una época y Qwen2.5-7B. No hay configuración de Llama. El código vuelve a normalizar la recompensa de estilo por prompt, contradiciendo el uso absoluto global descrito. La compuerta 1−0,02H solo puede variar aproximadamente entre 0,986 y 1, por lo que no produce la supresión fuerte que asume la demostración. El objetivo de KL usa (entropía global/entropía del rol)^1,5, de modo que un rol de entropía alta recibe un objetivo menor, al revés del texto; cuando el KL supera el objetivo, la actualización reduce el coeficiente de penalización, también en dirección opuesta a la estabilización alegada. El coeficiente registrado queda desfasado un paso y el factor de escala calculado se pasa a la pérdida pero no se utiliza. La construcción del ancla busca el último token literal «Character» y trunca allí: puede fallar por tokenización, ausencia o aparición en el contenido y no equivale a retirar estructuralmente el bloque de personaje. Las dos garantías teóricas no se siguen de sus supuestos: la primera presupone una cota de peso que el algoritmo no asegura y la segunda confunde cambiar un objetivo de KL con garantizar que una política óptima entre en el conjunto factible. Hay además riesgo de contaminación del benchmark: se entrena con 650 muestras aleatorias de CharacterBench y se evalúa en CharacterBench sin publicar IDs ni demostrar separación por fila, referencia o personaje. El paper no identifica de forma reproducible el checkpoint, prompt, decodificación y parser de CharacterJudge. SocialBench es una comprobación externa útil, pero no elimina la contaminación ni valida el constructo de fidelidad. La comparación de eficiencia de datos mezcla backbones, conjuntos, métodos y escalas de entrenamiento. La sección de impacto afirma que no hay consecuencias sociales específicas, aunque el método pretende alejar respuestas de una distribución genérica «segura pero aburrida» y usa personajes potencialmente dañinos; la etiqueta de recompensa Safety no es una evaluación de seguridad. No se prueban abuso, dependencia emocional, menores, estereotipos, jailbreaks, retención de alineamiento o efectos de despliegue. El repositorio tiene cinco commits y 91 archivos, en su mayoría EasyR1 vendorizado, pero carece de licencia raíz, release, tests, CI, dependencias bloqueadas, datos, recompensas, prompts, checkpoints, logs, outputs, evaluadores y resultados humanos. La contribución defendible es un objetivo de RL interesante y resultados medios prometedores bajo dos benchmarks, acompañados de una preferencia humana limitada. No demuestra cognición, fidelidad psicológica real, seguridad, superioridad por dimensión, eficiencia de datos ni reproducibilidad; las contradicciones entre paper, configuración y código impiden tratar los resultados como un artefacto independiente verificable.

Research question

Can a variant of GRPO that separates task and style rewards, adapts constraints according to character entropy, and contrasts with a generic response improve the fidelity of role-play agents without degrading their task performance?

Method

RL fine-tuning of Qwen3-8B and Llama-3.2-3B-Instruct with 650 random samples from CharacterBench, seven responses and one anchor per prompt. CRPO combines task and style advantages, entropy/KL control, and a generic anchor. It is evaluated automatically with CharacterBench/CharacterJudge and SocialBench, through ablations and with human comparisons of four-turn conversations. The independent audit covers the 29 pages, full TeX, code, and configuration of the public commit.

Sample: Two backbones are trained with 650 random samples from CharacterBench. The human evaluation uses four evaluators, 20 characters, four-turn conversations, and five CRPO-baseline comparisons; IDs, assignments, and labels are missing. A clean separation between the training subset and the evaluated CharacterBench is not demonstrated.

Findings

  • CRPO achieves the best shown CharacterBench averages: 4.043 with Qwen and 3.832 with Llama.
  • Human-Likeness and Engagement worsen compared to the base model in both backbones.
  • SocialBench averages rise to 0.802 for Qwen and 0.699 for Llama.
  • The claim of surpassing the second best in HSD contradicts the Qwen table: CRPO 0.790 versus Dr.GRPO 0.870.
  • The ablations attribute the largest drop to eliminating the dual flow, but they have no repetitions or uncertainty.
  • The human evaluation visually favors CRPO over five baselines under a joint criterion of knowledge and style.
  • The repository cannot start the experiment due to missing paths and inputs.
  • The implementation contradicts the paper in style normalization, KL direction, gate strength, and use of the scale factor.
  • The theoretical guarantees are not derived from the published algorithm.
  • The mixing of training and evaluation on CharacterBench leaves an unresolved risk of contamination.

Limitations

  • Fidelity operationalized with labels, BLEU/ROUGE, and a learned judge, not with a validated theory of personality.
  • 650 random samples from CharacterBench without manifest or verifiable disjoint split.
  • Checkpoint, prompt, decoding, and CharacterJudge parser not specified.
  • Regressions in Human-Likeness, Engagement, and Follow-up Ability hidden by the average.
  • Narrative HSD claim contradicted by the Qwen table.
  • No repetitions, compared seeds, variance, intervals, or statistical tests.
  • Small human evaluation, with an undefined kappa subset and no raw data.
  • Efficiency comparison confounded by backbone, dataset, method, and scale.
  • Code not executable due to missing configuration, data, template, map, and reward.
  • 30 epochs and batches 512/128 in the paper do not match script 6/256/32 nor the one-epoch YAML.
  • No published configuration for Llama and default YAML from another model.
  • Style normalization in code contrary to the described global absolute signal.
  • Entropy/KL control implemented with magnitude or direction opposite to those claimed.
  • Scale factor calculated but not used and coefficient metric offset.
  • Generic anchor based on truncating the last Character token, not on structural parsing.
  • Theoretical demonstrations depend on assumptions not guaranteed by the algorithm.
  • No substantive evaluation of safety, abuse, dependency, minors, or alignment retention.
  • No root license, release, tests, CI, locked environment, outputs, checkpoints, or evaluation scripts.

What the study does not establish

  • Internal personality, cognition, or human reasoning of the agent.
  • Real psychological fidelity of the characters.
  • Improvement in all dimensions of CharacterBench or SocialBench.
  • Statistical significance or stability across seeds.
  • Contamination-free generalization from CharacterBench.
  • Superiority in data efficiency under a controlled comparison.
  • Independent validity of CharacterJudge for the claimed construct.
  • Correctness of the theoretical guarantees.
  • That the published code implements the described method.
  • Independent reproduction of training, tables, ablations, or human evaluation.
  • Safety of role-play agents or preservation of alignment.
  • Readiness for deployment or net social benefit.

Traceability

Scope: Full text

Version: arXiv:2605.25511v1, 29 pages; complete TeX source, repository commit 6d54c4030a85a495b8ad365c93c5b84d04990bc3 and CharacterBench protocol audited

Consulted source: https://arxiv.org/abs/2605.25511

Review: Codex 29-page visual, complete TeX, benchmark, public code, configuration, theory, human evidence, safety and reproducibility audit, 2026-07-17

Approval: Codex fidelity pass, 2026-07-17

English translation: approved, 2026-07-18

Models evaluated

  • Qwen3-8B
  • Llama-3.2-3B-Instruct
  • Neeko
  • RAR
  • Character-R1
  • PPO
  • REINFORCE++
  • RLOO
  • ReMax
  • GRPO
  • Dr.GRPO
  • DAPO
  • GSPO
  • GDPO
  • OAR

Instruments and metrics

  • CharacterBench with learned CharacterJudge
  • SocialBench
  • BLEU-1 through BLEU-4
  • ROUGE-1, ROUGE-2 and ROUGE-L
  • Focus, focus-attribute and format rewards
  • Human pairwise preference over four-turn conversations
  • Fleiss kappa
  • t-SNE visualization

Data used

  • CharacterBench: 22,859 human-annotated samples and 3,956 characters reported by the benchmark
  • CharacterBench: 650 randomly selected CRPO training samples
  • CharacterBench evaluation split or IDs not released
  • SocialBench: 500 characters and 30,800 multi-turn exchanges reported by the benchmark
  • Private human evaluation: 20 characters, six models and 100 comparisons per CRPO-baseline pair

Evidence and location

  • Method, results, tables, ablations, human evaluation, theory, and impact: arXiv:2605.25511v1, 29 pages, sha256 b185bb9b028d41145d8c7d44641a68bb2bede3e1ba09fb6109bebbbfee9f8593
  • Formulas, hyperparameters, and fully verifiable text: arXiv source v1, sha256 e5bd8d83d98e63abaf306987387c2463a85b74993dfc52f7ddaff241bda9cb36; main TeX sha256 5fe384a4ed46231088fcc382783ef9e0282ce8ac871a8a894cd05c84fab1f547
  • Missing paths, configuration drift, objective, KL, anchor, and reproducibility: github.com/YihongT/CRPO commit 6d54c4030a85a495b8ad365c93c5b84d04990bc3, tree 54dacf542b58374614d368b85e0cbc6ed37722f2
  • Scale and protocol of the automatic benchmark: CharacterBench official AAAI paper and github.com/thu-coai/CharacterBench
  • Independent audit of benchmark, theory, code, rewards, human evidence, safety, and reproducibility: reports/verification/article-320-crpo-benchmark-leakage-theory-code-reward-human-evaluation-safety-and-reproducibility-audit.json