Сюжет 13. Варианты дополнительного обучения LLM

Учиться, учиться и учиться.

Владимир Ленин

Универсальная LLM обучена, проверена, отлажена и настроена. Модель выпускают в мир, и начинается ее эксплуатация. Пользователи в восторге, некоторые даже готовы платить за это деньги. Однако в ходе работы с LLM постепенно вырисовываются несколько проблем.

Проблема перваяLLM делает разного рода ошибки. Не может посчитать количество букв R в слове STRAWBERRY. Ошибается в перемножении трехзначных чисел. Не понимает родовидовые отношения между понятиями. Не может решить несложные логические задачи, например, из тестов IQ. Перечень можно продолжать.

Проблема вторая – не хватает актуальных данных. В мире постоянно происходят новые события в самых разных сферах человеческой деятельности. Об этих событиях появляются многочисленные публикации в прессе. LLM об этих публикациях не знает, в ее математической структуре они не учтены.

Проблема третья – не хватает специальных знаний. Когда универсальной LLM начинают давать задания, требующие глубоких специальных знаний, она может путаться, упрощать или вообще фальсифицировать ответы.

Проблема четвертая – стиль ответов LLM не соответствует задаче. Чат-боту, который обслуживает клиентов, нужно повысить уровень вежливости в диалогах. Чат-бот, который играет роль приятеля, должен общаться непринужденно и даже где-то фамильярно.

Проблема пятая – не хватает индивидуальных данных. Человеку часто хочется получать ответы на вопросы, учитывающие его индивидуальные предпочтения. Например, только ту информацию о каком-то событии или явлении, которую он считает важной (важной именно для себя).

Каждая проблема по отдельности и уж тем более все они в совокупности – это повод для разработчиков LLM следовать завету вождя большевиков, вынесенному в эпиграф сюжета.

Здесь важно отметить два обстоятельства.

Во-первых, LLM – это сложнейшая программная система. Как любая сложная программная система она не может обновляться по щелчку пальцев – нашли недостаток, тут же его устранили и систему обновили. Так в ИТ-отрасли не делается для любых сложных систем.

Недостатки выявляются, систематизируются, накапливаются, постепенно исправляются, работоспособность системы повторно тестируется. В какой-то момент этот цикл приостанавливается. Новая версия системы с исправленными недостатками обновляется и становится доступной пользователям.

Точно так же разработчики дорабатывают и развивают свои LLM – периодически выпускают новые версии, которые существенно превосходят предыдущие. Периодичность – это не дни, а месяцы.

Во-вторых, перечисленные проблемы имеют разную природу и требуют совершенно разных подходов для решения. Об этих подходах дальше и будем говорить.

Устранение ошибок в работе LLM. Это самая скрытая от широкой публики работа создателей больших языковых моделей. Какие-то проблемы решаются понятными способами. Для каких-то проблем разработчики придумывают тайные алгоритмы и подходы, о которых можно только догадываться.

Например, для правильного сложения трехзначных чисел одна команда разработчиков просто «скормила» своей LLM полное множество соответствующих примеров. Позже, скорее всего, в LLM просто встроили что-то вроде математического калькулятора.

Авторы на заре ИИ-революции экспериментировали с ChatGPT 3.5, задавая чат-боту вопросы по формальной логике. Например, проведи два деления понятия «небесное тело» по разным основаниям. Чат-бот не только не справлялся с такими заданиями, он их просто не понимал. Следующие версии основы формальной логики освоили, подобные вопросы понимают и отвечают, пусть и не безукоризненно.

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

Дообучение LLM на актуальных данных. Это понятная и самая простая для решения проблема. Очевидный способ – периодически доучивать LLM на новых данных. Нужно их вовремя отслеживать, отбирать и «скармливать» модели. Понятно, что человек постарался предельно автоматизировать эти процессы.

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

Дообучение LLM на специальных данных. Такое дополнительное обучение называют тонкой настройкой (fine-tuning). Она предполагает тщательное формирование набора текстов, содержащих специальную информацию, на котором затем доучивается LLM.

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

Есть еще один аргумент против тонкой настройки по любому поводу. Очень часто неудовлетворительные ответы LLM – это прямое следствие неполного или некачественного запроса. Грамотный prompt с хорошим пояснительным контекстом способен делать чудеса. LLM, которая только что отвечала убого или невпопад, с хорошим запросом начинает генерировать полные качественные ответы.

Тем не менее в определенных случаях тонкая настройка уместна. В первую очередь, когда LLM должна использоваться в определенной профессиональной сфере деятельности: в медицине, юриспруденции, военном деле, образовании, …

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

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

Сегодня чаще используют подходы, когда тонкая настройка не затрагивает основную большую языковую модель. В одних подходах тренируют лишь маленькую часть параметров основной модели. В других – отдельно тренируют новые маленькие модели и потом объединяют их с основной LLM.

Адаптация LLM под конкретные задачи. Такая адаптация также относится к тонкой настройке. Она изменяет траектории отклика, перестраивает вероятности, усиливает акценты. По сути – формирует новые схемы взаимодействия LLM и пользователя.

Подобная настройка проводится для обученной LLM. Фундаментальные параметры сохраняются, но происходит переопределение их приоритетов. Модель перенастраивает весовые коэффициенты в соответствии с тем, какие форматы отклика теперь считаются приемлемыми и целесообразными (они становятся более вероятными).

Цель такой адаптации – не передача новой информации, а корректировка многомерной матрицы внимания. LLM остаётся той же по структуре, но становится иной в проявлениях.

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

Настройка LLM под индивидуальные нужды. Здесь есть два принципиально разных подхода.

О первом подходе мы упоминали выше, когда говорили о нехватке актуальных данных. Теперь опишем его подробнее. Он называется генерация с дополненным поиском (Retrieval Augmented Generation, RAG).

RAG предполагает, что к запросу пользователя автоматически присоединяется результат соответствующего поиска в интернете. В этом случае LLM получает запрос, контекст которого расширен за счет найденных в интернете данных.

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

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

Второй подход предполагает, что на локальном компьютере пользователя или в его сегменте облачного хранилища разворачивается маленькая локальная LLM, которую пользователь обучает на собственноручно подобранных материалах. Такое решение – Google NoteBookLM – предлагает пользователям знаменитая корпорация.

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

Google позиционирует NoteBookLM как инструмент для исследователя. Его уместно использовать, если пользователю важно, чтобы модель не придумывала факты, а каждый ответ можно было быстро перепроверить в первоисточнике. Модель поможет пользователям, которые работают с информацией, разбросанной по разным форматам. Она способна загруженную информацию перерабатывать в отчёты, заметки, статьи, подкасты и даже в видео-презентации.

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

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

поделиться в: