По поводу structured output: это действительно может помочь в некоторых случаях избавиться от зацикливания, но, вероятно, далеко не во всех. Проблема в том, что такой формат все равно не ограничивает ответ модели в рамках одной секции. Поэтому она вполне может зациклиться, например, на этапе reasoning'а (что чаще всего и происходит). В любом случае, мы активно работаем над решением этой проблемы.
По поводу проблемы AI alignment: отчасти ее можно измерить при помощи датасета ConFiQA (https://arxiv.org/abs/2412.15280), на котором мы как раз меряемся. В нем содержатся контрафактные контексты, которым модель должна следовать. Если модель дает неверный ответ, явно обьясняя свое решение "несовпадением с памятью" - кажется, это подпадает под пример проблемы, которую вы описываете.
Сравнивали с другими семействами, сопоставимыми по размеру (gemma-3-27b, qwen3-32b, llama-3.1-70b). Qwen3.5 показал себя лучше как по качественному, так и по количественному анализу ответов.
Явно bias не сравнивали, но на тех же данных мы пробовали учить и gemma-3-1b - прирост по качеству был сравнимым с результатами, представленными в посте для qwen3.
В ближайшие пару месяцев выложим отдельную статью с более детальными описаниями процесса генерации синтетики, а также дополнительными экспериментами по обучению. Следите за обновлениями!
Во время обучения мы подаем контексты в случайном порядке, чтобы избежать bias'а, при котором модель бы неявно выбирала источники по их порядковому номеру.
Могут, но вероятно на таких документах качество будет чуть ниже, так как в выборке их было меньше.
Обучали, подавая на вход случайное кол-во источников, от 1 до 10. Соответственно оптимально - любое количество в этом диапазоне. Но даже если подадите больше - модель должна адаптироваться.
Явно на это мы не обучали.
У нас специальный формат рассуждений, который всегда будет использоваться моделью. Длина рассуждений обычно находится в диапазоне 300-700 токенов, поэтому лучше ставить max_length=1024. Модели семейства Qwen склонны иногда зацикливаться, и это свойство, к сожалению, актуально и для OCC-RAG. Сейчас боремся с этой проблемой.
OCC-RAG поддерживает входные запросы и документы на русском и английском языке. Единственное - в случае русского, рассуждения будут на английском, а финальный ответ - на русском.
Обучали на входных последовательностях с максимальной длиной до 5.120 токенов, или порядка 20.000 символов. Но сам Qwen изначально поддерживает на порядок больше, поэтому должен быть перенос и на более длинный по длине входной контекст.
Да, текущую версию OCC-RAG можно рассматривать скорее как одну из компонент RAG системы, которая отвечает за поиск ответа в контексте, который уже был извлечен (например, как вы верно говорите, векторным поиском по базе данных на основе запроса юзера).
Но мы уже активно работаем над расширением функционала модели, в том числе ее способностью самой формировать запросы к базам знаний и ходить в них за нужной информацией. Следите за обновлениями!
За основу брали базовые модели из семейства Qwen3, в котором 0.6B и 1.7B как раз самые маленькие по размеру модели. Поэтому меньше пока не тестировали.
Модель поддерживает русский и английский языки. Единственное, в случае входного запроса на русском языке, рассуждения будут на английском, а финальный ответ - на русском.
Наш подход инвариантен к размеру модели, дообучить можно любую. Помимо 0.6B и 1.7B, тестировали и на 4B, ощутимый прирост качества сохраняется. Поскольку мы изначально ориентировались на модели до 4B, большие аналоги не рассматривали. Но в будущем, если будет потребность, расширим линейку.
Текущая модель была обучена при помощи SFT. RL не применялся, но это действительно сильный подход для улучшения качества работы моделей
Спасибо большое за комментарий!
По поводу structured output: это действительно может помочь в некоторых случаях избавиться от зацикливания, но, вероятно, далеко не во всех. Проблема в том, что такой формат все равно не ограничивает ответ модели в рамках одной секции. Поэтому она вполне может зациклиться, например, на этапе reasoning'а (что чаще всего и происходит). В любом случае, мы активно работаем над решением этой проблемы.
По поводу проблемы AI alignment: отчасти ее можно измерить при помощи датасета ConFiQA (https://arxiv.org/abs/2412.15280), на котором мы как раз меряемся. В нем содержатся контрафактные контексты, которым модель должна следовать. Если модель дает неверный ответ, явно обьясняя свое решение "несовпадением с памятью" - кажется, это подпадает под пример проблемы, которую вы описываете.
Сравнивали с другими семействами, сопоставимыми по размеру (gemma-3-27b, qwen3-32b, llama-3.1-70b). Qwen3.5 показал себя лучше как по качественному, так и по количественному анализу ответов.
Явно bias не сравнивали, но на тех же данных мы пробовали учить и gemma-3-1b - прирост по качеству был сравнимым с результатами, представленными в посте для qwen3.
В ближайшие пару месяцев выложим отдельную статью с более детальными описаниями процесса генерации синтетики, а также дополнительными экспериментами по обучению. Следите за обновлениями!
Спасибо!
Во время обучения мы подаем контексты в случайном порядке, чтобы избежать bias'а, при котором модель бы неявно выбирала источники по их порядковому номеру.
Могут, но вероятно на таких документах качество будет чуть ниже, так как в выборке их было меньше.
Обучали, подавая на вход случайное кол-во источников, от 1 до 10. Соответственно оптимально - любое количество в этом диапазоне. Но даже если подадите больше - модель должна адаптироваться.
Явно на это мы не обучали.
У нас специальный формат рассуждений, который всегда будет использоваться моделью. Длина рассуждений обычно находится в диапазоне 300-700 токенов, поэтому лучше ставить max_length=1024. Модели семейства Qwen склонны иногда зацикливаться, и это свойство, к сожалению, актуально и для OCC-RAG. Сейчас боремся с этой проблемой.
OCC-RAG поддерживает входные запросы и документы на русском и английском языке. Единственное - в случае русского, рассуждения будут на английском, а финальный ответ - на русском.
Обучали на входных последовательностях с максимальной длиной до 5.120 токенов, или порядка 20.000 символов. Но сам Qwen изначально поддерживает на порядок больше, поэтому должен быть перенос и на более длинный по длине входной контекст.
Добрый день!
Да, текущую версию OCC-RAG можно рассматривать скорее как одну из компонент RAG системы, которая отвечает за поиск ответа в контексте, который уже был извлечен (например, как вы верно говорите, векторным поиском по базе данных на основе запроса юзера).
Но мы уже активно работаем над расширением функционала модели, в том числе ее способностью самой формировать запросы к базам знаний и ходить в них за нужной информацией. Следите за обновлениями!
За основу брали базовые модели из семейства Qwen3, в котором 0.6B и 1.7B как раз самые маленькие по размеру модели. Поэтому меньше пока не тестировали.
Модель поддерживает русский и английский языки. Единственное, в случае входного запроса на русском языке, рассуждения будут на английском, а финальный ответ - на русском.
Добрый день!
Спасибо за вопрос.
Наш подход инвариантен к размеру модели, дообучить можно любую. Помимо 0.6B и 1.7B, тестировали и на 4B, ощутимый прирост качества сохраняется. Поскольку мы изначально ориентировались на модели до 4B, большие аналоги не рассматривали. Но в будущем, если будет потребность, расширим линейку.