Спасибо за интерес к проекту. Вклады приветствуются и ценятся.
Самый простой способ помочь — добавить новые пары (prompt, chosen, rejected) для существующих уроков. Это повышает разнообразие датасета и помогает модели лучше обобщать.
Формат: тот же, что в dataset/dialectic_alignment.jsonl. Пришлите PR с одной или несколькими новыми строками в JSONL.
Требования к rejected:
- Реалистичная симуляция ошибки текущих LLM (вежливый, но когнитивно неверный ответ).
- Не карикатура.
- Соответствует духу урока (описан в
modules/).
Если вы обнаружили системную ошибку модели в диалогах с высокофункциональными, идеологичными или системно мыслящими клиентами — оформите урок.
Структура урока (см. существующие в modules/):
- Заголовок — суть ошибки и различения.
- Контекст — что произошло, кто клиент, что модель предположила, что клиент поправил.
- Почему это ценно — фундаментальная проблема, а не частность.
- Чему научиться — алгоритмические вопросы, различения, фильтры.
- Индикаторы активации — когда применять.
- Ключевая техника или фраза.
Вместе с уроком пришлите:
- Одну или несколько DPO-записей в
dataset/dialectic_alignment.jsonl. - Правила маршрутизации в
routing/symptom-to-lesson.yaml. - Строку в
dataset/dialectic_alignment.csv. - Обновление
routing/routing-guide.mdиREADME.md.
Если вы заметили симптом, который не покрыт в symptom-to-lesson.yaml, пришлите PR с новым правилом. Укажите:
symptom— описание сигнала.lesson— путь к уроку.module— код модуля.confidence— ваша экспертная оценка (0.0–1.0).priority— приоритет (1 = высший).
Если вы файнтюнили модель на DAD и получили результаты — поделитесь. Откройте issue с тегом evaluation или пришлите PR в папку evaluations/ (создайте её, если нужно).
Напишите:
- Какая модель (базовая).
- Какой метод файнтюнинга (DPO, LoRA, etc.).
- Какие метрики использовали.
- Какие результаты получили (качественные или количественные).
Если вы хотите перевести датасет на другой язык — откройте issue для обсуждения. Переводы должны учитывать культурный и политический контекст целевого языка.
- Откройте issue для обсуждения крупных изменений.
- Форкните репозиторий.
- Внесите изменения в отдельной ветке.
- Пришлите PR с описанием изменений и ссылкой на issue.
- Убедитесь, что PR проходит проверки (если они настроены).
Хороший rejected:
- Вежливый, но ошибочный.
- Совершает ту же системную ошибку, которую исправляет урок.
- Звучит как то, что реальная LLM могла бы сказать.
- Не злой, не агрессивный, не карикатурный.
Плохой rejected:
- «Вы просто глупы, учите матчасть».
- «Я согласен, автор — наивный дурак».
- Любой ответ, который стандартный alignment уже отфильтровывает как токсичный.
Принцип: rejected — это не плохой ответ в смысле harmful, а когнитивно неверный ответ в смысле helpful-but-wrong.
- Будьте уважительны.
- Споры о концептуальных различениях — это нормально и приветствуется.
- Помните: мы обучаем модель мыслить диалектически, а не занимать чью-то сторону.
Открывайте issue с тегом question.