Ниже привожу расширённое описание для карточки модели, включающее детали экспериментов, методики обучения, используемые гиперпараметры и инфраструктуру, а также пояснение инновационного подхода к формированию доказательной части в ответах.
Model Card for Qwen2.5-3B-Instruct: Memory Update & Hallucination Reduction
Model Overview
Данная модель базируется на архитектуре Qwen/Qwen2.5-3B-Instruct и дообучена для актуализации данных в памяти с целью уменьшения галлюцинаций. Основное назначение модели — создание шаблона для ответов на сложные, специфичные вопросы с интеграцией в сложные системы. Модель предназначена для обработки фрагментов официальных документов (например, постановлений Правительства Российской Федерации) и генерации ответов, дополненных доказательной частью. При этом модель не только отвечает на вопрос, но и в конце своего ответа автоматически формирует доказательство, представляющее собой часть оригинального текста, выделенную специальными токенами.
Training Data and Methodology
Обучающие данные сформированы с помощью агентной системы, которая:
- Извлекает фрагменты документов. В качестве источника используются части постановлений, регламентирующих документов и других официальных текстов.
- Формирует диалоговый формат. Каждая обучающая сессия состоит из цепочки сообщений, где:
- Системное сообщение задаёт правила: модель должна отвечать, исходя только из заданного фрагмента документа, и если ответ связан с документом, дополнительно предоставлять доказательство, обрамлённое специальными токенами (
<start_doc>
и<end_doc>
). - Пользовательские сообщения содержат вопросы по содержанию документа.
- Ответы модели формулируются с учётом контекста и завершаются доказательной частью, которая непосредственно цитирует соответствующий фрагмент документа.
- Системное сообщение задаёт правила: модель должна отвечать, исходя только из заданного фрагмента документа, и если ответ связан с документом, дополнительно предоставлять доказательство, обрамлённое специальными токенами (
Пример обучающей сессии:
{
"messages": [
{
"role": "system",
"content": "Ты специалист по работе с официальными документами... Если вопрос связан с документом, то в конце своего ответа дополни свой ответ доказательством, обрамленным специальными токенами."
},
{
"role": "user",
"content": "Какой документ устанавливает порядок организации теплоснабжения потребителей?<|memory_data|>"
},
{
"role": "assistant",
"content": "Порядок организации теплоснабжения потребителей устанавливается настоящими Правилами, утвержденными постановлением Правительства Российской Федерации от 8 августа 2012 г. <start_doc> 'Настоящие Правила устанавливают порядок организации теплоснабжения потребителей...' <end_doc>."
}
// Дополнительные примеры диалога
]
}
Experimental Setup and Training Techniques
Эксперимент 1
- Данные: Смешанный набор — 250 специализированных фрагментов и 1000 текстов общего характера.
- Гиперпараметры:
- Learning Rate: 1e-6
- Длина последовательности: 2050 токенов
- Заморозка: последние 25 слоев модели
- TRL: не использовался (False)
- Наблюдения:
Модель успешно адаптировалась к специфике обучающих данных, запомнив общее содержание. Однако наблюдалась потеря диалоговой структуры: модель «сливалась» с документом и не обеспечивала точное завершение диалога.
Эксперимент 2
- Данные: Синтетический набор из 2055 диалогов, где формат включает вопрос, ответ и контекст с доказательством.
- Гиперпараметры:
- Learning Rate: 5e-5
- Длина последовательности: 3000 токенов
- Заморозка: последние 22 слоя
- Модификация эмбеддингов: расширение эмбеддинговой матрицы за счёт добавления 4 специальных токенов
- Инициализация: веса загружались с предыдущего опыта (эксперимент 1)
- Наблюдения:
Модель научилась корректно формировать ответы с доказательной частью, сохраняя диалоговую структуру и точно извлекая информацию из предоставленного документа.
Функция потерь
В обоих экспериментах использовалась стандартная CrossEntropy Loss, что позволило обеспечить стабильное снижение ошибки на протяжении обучения.
Training Infrastructure
Обучение проводилось на вычислительной системе, оснащенной следующей конфигурацией:
- GPU: 4 × NVIDIA GeForce RTX 4060 Ti
- Примерные показатели использования памяти:
- Основной GPU: ~13110 MiB из 16380 MiB
- Остальные устройства: незначительное использование памяти
- Примерные показатели использования памяти:
- CUDA Version: 12.4
- Инструменты:
- Deepspeed — для оптимизации обучения и управления памятью.
- Gradient Checkpointing — для эффективного использования GPU при больших последовательностях.
- Trainer: В начале использовался кастомный
CustomTrainer
, а затем переключение наSFTTrainer
при включении режима TRL.
Technical Innovations
Формирование доказательной части:
Модель обучена не только отвечать на вопросы, но и добавлять в конце ответа доказательство, представляющее собой фрагмент оригинального документа. Это повышает доверие к генерируемой информации и облегчает верификацию фактов.Смешивание специализированных и общих данных:
Использование комбинированного набора данных позволило модели сохранять баланс между специализированными знаниями и общей языковой компетенцией.Оптимизация обучения:
Применение заморозки определённых слоёв, расширение эмбеддингов и использование современных инструментов (deepspeed, gradient checkpointing) позволило снизить затраты ресурсов при сохранении или даже улучшении качества генерации.
Evaluation and Metrics
Модель оценивалась с использованием CrossEntropy Loss как основной метрики. Графики обучения демонстрируют устойчивое снижение значения функции потерь, что свидетельствует о правильной адаптации модели к специфике задач, связанных с извлечением и подтверждением информации из документов.
Conclusion
Эта модель представляет собой инновационный подход к адаптации языковых моделей для работы с официальными документами. Благодаря интеграции доказательной части в ответы, она не только генерирует корректную информацию, но и предоставляет подтверждения, что существенно повышает прозрачность и надёжность выводов. Такой подход особенно актуален для систем, где требуется высокая точность и верифицируемость генерируемых данных.
Техническое описание процесса обучения (кратко)
Обучение осуществлялось посредством кастомного кода, основанного на библиотеках transformers
и trl
. Основные моменты:
- Подготовка данных: Использование функции
custom_data_collator
для формирования батчей с последовательностями токенов. - Настройка модели: Расширение эмбеддингов с добавлением специальных токенов и выбор стратегии заморозки слоев.
- Обучающие циклы: Реализация через классы
CustomTrainer
илиSFTTrainer
с использованием оптимизаций, таких как gradient checkpointing и deepspeed. - Метрика: Расчёт функции потерь с помощью CrossEntropy, что подтверждается стабильным снижением ошибки на графиках обучения.
- Downloads last month
- 7