✨ LLM-Blender: объединение больших языковых моделей с попарным ранжированием и генеративным слиянием ✨

Дунфу Цзян, Сян Рен и Билл Ючен Лин.

LLM-Blender — это ансамблевая структура, предназначенная для достижения стабильно высокой производительности за счет использования разнообразных сильных сторон нескольких моделей больших языков с открытым исходным кодом (LLM).

Есть ли необходимость в сборке LLM?

  • LLM с открытым исходным кодом демонстрируют различные сильные и слабые стороны из-за различий в данных, архитектуре и гиперпараметрах, что делает их взаимодополняющими.
  • Не существует одного LLM с открытым исходным кодом, который доминирует над конкурентами во всех примерах.
  • Необходимо объединить выходные данные лучших LLM (на основе входных данных, задачи и предметной области), чтобы обеспечить неизменно превосходную производительность во всех примерах.
  • Объединив их уникальный вклад; предубеждения, ошибки и неопределенности в отдельных LLM могут быть уменьшены, в результате чего результаты будут соответствовать человеческим предпочтениям.

Как LLM-Blender объединяет LLM?

LLM-Blender обеспечивает постоянно превосходную производительность за счет смешивания выходных данных нескольких LLM. Имеет два модуля: PairRanker и GenFuser. Первоначально PairRanker сравнивает выходные данные нескольких LLM, чтобы получить результаты с наивысшим рейтингом. Затем GenFuser объединяет первые несколько результатов с самым высоким рейтингом для создания окончательного результата, который сочетает в себе их преимущества и смягчает их недостатки.

Как работает PairRanker?

  • Модуль PairRanker используется для эффективного выявления тонких различий между выходными данными-кандидатами (LLM) и ранжирования их на основе их качества.
  • Выходные данные из N моделей собираются и объединяются в пары в общей сложности N(N-1)/2 способами (количество комбинаций, в которых 2 элемента выбираются из общего числа N элементов).
  • Затем эти пары оцениваются по условию: учитывая ввод, подсказка, результат какого кандидата лучше.
  • Во время вывода вычисляется матрица, содержащая логиты, представляющие результаты парного сравнения. И, учитывая эту матрицу, определяются и выбираются для модуля GenFuser лучшие результаты K-рейтинга.

Как работает GenFuser?

  • Модуль GenFuser использует результаты модуля PairRanker с наивысшим рейтингом для создания потенциально улучшенных результатов для конечных пользователей.
  • Модуль объединяет K лучших из N кандидатов и генерирует улучшенный результат, используя их сильные стороны и смягчая их слабые стороны.

Какой набор данных используется для сравнения результатов?

  • Представлен новый набор данных под названием MixInstruct, предназначенный для сравнительного анализа ансамблевых моделей LLM в задачах, выполняемых по инструкциям.
  • Набор данных содержит большой набор примеров инструкций от Alpaca-GPT4, Dolly-15K, GPT4-ALL-LAION и ShareGPT.
  • Есть 100 тысяч примеров для обучения, 5 тысяч для проверки и 5 тысяч для тестирования.
  • N = 11 популярных LLM с открытым исходным кодом получают запрос на ввод данных в набор данных. Выходные данные LLM-кандидатов оцениваются с использованием ChatGPT для всех пар-кандидатов (55 пар). Для каждой пары ChatGPT просят оценить лучшего кандидата (или объявить ничью).

Каковы результаты бенчмаркинга на MixInstruct?

  • LLM имеют различные сильные и слабые стороны.
  • Лучшие LLM не всегда хороши.
  • PairRanker превосходит другие рейтинги LLM.
  • Комплектация LLM-Blender превосходит лучшие отдельные модели.

Каковы ограничения LLM-Blender?

  • Эффективность: процесс ранжирования топ-K результатов в PairRanker требует вызова модели O(n²) раз, чтобы получить оптимальную производительность. Способ обойти это — использовать несколько раундов методов пузырьковой сортировки, чтобы уменьшить количество необходимых выводов. Еще один способ повысить эффективность использования времени — выполнять выводы для PairRanker параллельно, поскольку они независимы.
  • Человеческая оценка: эталонный тест и результаты используют автоматическую оценку с помощью ChatGPT. Хотя автоматическая оценка является хорошей альтернативой, оценка человеком может обеспечить более надежные и полные результаты оценки.

Для дополнительной информации

  • Упрощенное объяснение LLM-Blender: