Ниже привожу расширённое описание для карточки модели, включающее детали экспериментов, методики обучения, используемые гиперпараметры и инфраструктуру, а также пояснение инновационного подхода к формированию доказательной части в ответах.


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)
  • Наблюдения:

image/png

Модель успешно адаптировалась к специфике обучающих данных, запомнив общее содержание. Однако наблюдалась потеря диалоговой структуры: модель «сливалась» с документом и не обеспечивала точное завершение диалога. image/png

Эксперимент 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
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support