OpenCharacter: обучение настраиваемых LLM для ролевого взаимодействия с использованием масштабных синтетических персонНастраиваемое ролевое взаимодействие в больших языковых моделях (LLM) — это эффективный и экономичный способ разработки и внедрения агентов диалога с определёнными ролями. В данной работе исследуется подход масштабного синтеза данных, направленный на развитие у LLM способности к обобщению характеров.
Процесс начинается с синтеза крупномасштабных профилей персонажей с использованием базы
Persona Hub, после чего рассматриваются две стратегии:
переформулировка ответов и
генерация ответов, чтобы создать ответы, соответствующие заданному персонажу.
Постановка задачиi) Ролевое взаимодействие в рамках обучающей выборки (in-domain)
- Модель
θ обучается (например, методом дообучения с учителем (SFT)) на диалогах с персонажами, в которых участвуют пользователь и определённый персонаж
Cs. Диалоги могут быть вручную размечены или синтетическими.
ii) Ролевое взаимодействие вне обучающей выборки (out-of-domain)
- Требует, чтобы модель
θ могла вести себя как новые персонажи
Cx, отсутствующие в тренировочных данных.
- Чтобы добиться этого, модель должна обобщать на новые роли, что возможно при обучении на качественно подобранных данных с большим разнообразием персонажей, насыщенными профилями и качественными диалогами.
Обобщение персонажей через синтез данныхi) Синтез профилей персонажей
- Модель побуждают создать синтетический профиль персонажа на основе входной персоны, воображая следующие атрибуты: имя, возраст, пол, раса, место рождения, внешность, жизненный опыт и личность.
ii) Переформулировка ответов с учётом персонажа (OpenCharacter-R)
- Инструкции
x из общедоступных наборов инструкций сохраняются, а оригинальный ответ
y переписывается в
yC, соответствующий стилю и биографии персонажа
C.
iii) Генерация ответов с учётом персонажа (OpenCharacter-G)
- Модель побуждают сгенерировать ответ
yC на инструкцию
x, основываясь на профиле персонажа
C.
- В отличие от OpenCharacter-R, который переписывает целую сессию диалога одним промптом, OpenCharacter-G работает пошагово, генерируя ответы по очереди для каждого обмена репликами.
Дообучение с учителем (Supervised Fine-Tuning)- Для каждой сессии диалога случайным образом выбираются
n синтетических персонажей
C1, C2, ..., Cn из пула из
M профилей, и синтезируются
n пар «инструкция-ответ» вида (x, yC1 ), (x, yC2 ), ..., (x, yCn) путём переписывания или генерации.
- Все пары из разных персонажей объединяются и используются для SFT с моделью
LLaMA-3 8B.
Результаты- Лучшая модель усилила базовую
LLaMA-3 8B Instruct и показала результаты, сопоставимые с
GPT-4o в задачах ролевого взаимодействия в диалогах.
Paper: https://arxiv.org/abs/2501.15427Dataset: https://huggingface.co/datasets/xywang1/OpenCharacter👉
@bigdata_1