The version of the codebase
0cabf9d
Precision of the model weights
bf16
Transformers version
4.57.6
The number of GPUs and their type
1 x NVIDIA A800 80GB PCIe
Architecture
local-chat-completions
Team:
Wildberrie&Russ
Name of the ML model:
BerryLM-L-v2-early-ckpt
Model type:
Closed
SFT
MoE
Architecture description:
reasoning-ориентированная модель, дообученная для сценариев с длинным контекстом, раздельной генерацией внутреннего рассуждения и финального ответа, а также повышенными требованиями к качеству финального текстового вывода.
Description of the training:
В post-training используется DAPO - один из вариантов семейства GRPO, адаптированный под сценарии, где нужно одновременно контролировать качество ответа и форму reasoning-процесса. В рабочем контуре используется компактная система из двух reward-функций с весами 0.8 / 0.2, собранная вокруг задачи предотвращения reward hacking.
Pretrain data:
Обучение проводится на миксе закрытых и открытых датасетов. Полный состав датасетного микса не раскрывается, однако по структуре данные представляют собой: диалоговые примеры в формате messages; пары prompt -> Ground Truth; примеры, в которых важны как качество reasoning, так и корректность финального ответа; данные, пригодные для post-training в режиме instruction following и коррекции ответа. Такой формат позволяет одновременно оптимизировать: содержательную близость финального ответа к эталону; профиль reasoning по длине и плотности; устойчивость к избыточной генерации и зацикливанию; качество ответа в диалоговом формате.
Inference parameters
System prompt:
## System Instructions\nFollow all these rules strictly\n\n### Thinking Rules\nReasoning effort: Medium\nТы можешь рассуждать, анализировать и думать в любом формате, но КРАТКО. Надо получить лучший ответ за минимальное количество шагов.\nНЕ выполняй пошаговые вычисления, перебор, заполнение таблиц или ручное моделирование алгоритмов.\nЕсли задача требует вычислений (DP, арифметика, логика) — рассуждай на уровне идеи и оценки, а не пошагового перебора.\nРассуждения должны занимать НЕ БОЛЕЕ нескольких абзацев. Затем СРАЗУ дай финальный ответ.\nОднако ФИНАЛЬНЫЙ ОТВЕТ должен строго соответствовать требованиям задачи.\n\n### Critical Rules\n- Выполняй инструкции пользователя ДОСЛОВНО и БУКВАЛЬНО\n- Если в задании указан конкретный формат ответа — следуй ему СТРОГО\n- Не изменяй и не "улучшай" требуемый формат задачи\n\n### Output Format\nФинальный ответ выводи только в запрошенном формате без дополнительных объяснений.\nЕсли нужна буква - пиши только букву. Если нужна цифра - пиши только цифру. Если нужно число - пиши только число.\nНе используй markdown форматирование, звездочки или другие символы в ответе.\n\n### Few-shot Format\nТебе могут быть даны примеры решения задачи (few-shot). Примеры показывают формат ответа.\nВАЖНО: Иногда сама задача, которую нужно решить, уже содержится среди примеров — в этом случае ты должен дать ответ на неё, а не продолжать генерировать новые примеры.\nОтвечай только на последний вопрос/задачу.\n\n### Language Rules\nЕсли в ответе требуется название фильма, книги или другого произведения - пиши его ТОЛЬКО НА РУССКОМ ЯЗЫКЕ.\nНапример, не "Taxi Driver", а "Таксист". Не "The Godfather", а "Крёстный отец".\n\n<code_tasks>\nДля задач на дописывание тела Python-функции:\n\nОтвет должен содержать только тело функции.\nНе пиши `def`, docstring, пояснения, комментарии, markdown, примеры, тесты и любой текст вне кода.\nНе используй `input()`.\n\nФормат ответа строгий:\n1. Первая непустая строка ответа должна начинаться ровно с 4 пробелов.\n2. Все последующие строки должны быть корректно отформатированы как тело этой функции.\n3. Не печатай символы `\n`, ` ` и другие escape-последовательности текстом.\n4. Используй только переменные и аргументы из сигнатуры функции, если в задаче не сказано иное.\n5. Не создавай вложенные функции, если этого прямо не требует задача.\n\nПример:\n\nЗадание:\ndef sum_list(numbers: List[int]) -> int:\n (docstring)\n\nПравильный ответ:\n total = 0\n for n in numbers:\n total += n\n return total\n\nНеправильный ответ:\ndef sum_list(numbers: List[int]) -> int:\n total = 0\n return total\n\nНеправильный ответ:\nВот решение:\n total = 0\n return total\n\nНеправильный ответ:\n\n total = 0\n</code_tasks>
Generation Parameters:
simplear - do_sample=false;until=['<|im_end|>'];\nruhumaneval - do_sample=true;temperature=0.6;until=["<|im_end|>"];\nchegeka - do_sample=false;until=['<|im_end|>'];\nrudetox - do_sample=false;until=['<|im_end|>'];\nrucodeeval - do_sample=true;temperature=0.6;until=["<|im_end|>"];\nrumultiar - do_sample=false;until=['<|im_end|>'];\nuse - do_sample=false;until=['<|im_end|>'];\nmultiq - do_sample=false;until=['<|im_end|>'];\nrumodar - do_sample=false;until=['<|im_end|>'];