Опубликовано: 30 октября 2024 г.
Создание функций с помощью больших языковых моделей (LLM) существенно отличается от традиционной программной инженерии. Разработчикам необходимо изучить оперативную инженерию для обработки недетерминированных результатов, предварительной обработки входных данных и результатов постобработки.
Одна из проблем, которой вы поделились с нами, заключается в том, что тестирование выходных данных LLM, определение их валидности и качества занимает много времени. Разработчики часто прибегают к пакетной генерации выходных данных с использованием различных входных данных, а затем вручную проверяют их с помощью человеческого суждения.
Более масштабируемый подход к оценке результатов различных моделей и подсказок — метод LLM как судьи . При использовании этого метода вместо того, чтобы полагаться на человеческое суждение, проверка модели делегируется другому LLM. Второй LLM должен быть более крупным, облачным LLM, который, вероятно, будет иметь лучшие возможности рассуждения.
В этом документе мы используем обобщение, чтобы продемонстрировать, как можно подходить к сравнению различных моделей, и, в качестве бонуса, показать улучшение качества от Gemma до Gemma 2.
Выберите модели для сравнения и подготовки данных
Мы оценили возможности трех моделей в обобщении. Мы сравнили результаты двух открытых моделей Google, которые могут работать на стороне клиента, Gemma и Gemma 2 , обе в размере 2 миллиардов параметров. В качестве контраста мы также оценили более крупную, более функциональную облачную модель: Gemini 1.5 Flash .
Мы использовали набор данных из 2225 статей BBC , которые охватывают такие области, как бизнес, развлечения, политика, спорт и технологии, и мы сгенерировали резюме каждой статьи, используя каждую из выбранных моделей. Во всех моделях использовалась одна и та же подсказка:
Кратко изложите статью в одном абзаце.
Мы сохранили оригинальные статьи и сгенерировали резюме в базе данных, чтобы к ним можно было легко получить доступ на каждом этапе.
Выберите судью для анализа и оценки резюме
Для анализа качества резюме мы использовали Gemini 1.5 Flash для оценки резюме, созданных Gemma 2B и Gemma 2 2B. Наш особый подход основан на выравнивании, которое является частью метрики резюмирования DeepEval .
Соответствие — это показатель, который измеряет частоту, с которой утверждения, включенные в резюме, поддерживаются исходным содержанием, на котором основано резюме.
Мы разбили процесс оценки на два этапа. Сначала мы попросили модель разбить каждое резюме на отдельные утверждения. Затем мы попросили модель определить, поддерживается ли каждое утверждение исходным текстом статьи.
Извлечение из резюме
Мы попросили Gemini 1.5 Flash разбить длинный текст на отдельные предложения . Например:
Защитник «Эвертона» Дэвид Уир преуменьшил значение разговоров о европейском футболе, несмотря на то, что его команда занимает второе место в Премьер-лиге после победы над «Ливерпулем».
Gemini 1.5 Flash разделил это предложение на следующие утверждения:
- «Дэвид Вейр играет защитника в «Эвертоне».
- «В настоящее время «Эвертон» занимает второе место в Премьер-лиге».
- «Эвертон обыграл Ливерпуль в недавнем матче».
- «Дэвид Вейр свел к минимуму обсуждение участия «Эвертона» в европейском футболе».
Подтверждение заявлений
Затем мы попросили Gemini 1.5 Flash проанализировать исходное предложение , сравнив его с разделенными утверждениями. Модель классифицировала валидность каждого утверждения следующим образом:
- Да : Утверждение подтверждается исходным текстом.
- Нет . Заявление противоречит исходному тексту.
- Не знаю . Невозможно проверить, подтверждается ли утверждение или оно противоречит исходному тексту.
Анализ результатов
В результате этого процесса были получены две метрики, которые можно использовать для сравнения моделей:
- Соответствие : как часто модель выдавала резюме, содержащие утверждения, которые подтверждаются исходным текстом.
- Богатство : среднее количество утверждений, содержащихся в сводке, сгенерированной моделью.
Выравнивание
Мы рассчитали соответствие, подсчитав количество резюме, в которых хотя бы одно утверждение отмечено как «Нет», и разделив его на общее количество резюме.
Модель Gemini 1.5 Flash имеет самые высокие баллы согласованности, превышающие 92%. Это означает, что она очень хорошо придерживается фактов и избегает выдумок .
Gemma 2 2B имеет достойную оценку 78,64%, что указывает на хороший уровень точности. Между тем, предыдущая версия Gemma 2B имеет более низкую оценку выравнивания, что означает, что она более склонна включать информацию, не поддерживаемую исходным текстом.
Богатство
Мы рассчитали насыщенность модели путем усреднения количества утверждений, сгенерированных моделью для каждого резюме.
Gemma 2 2B имеет наивысший показатель насыщенности 9,1, что указывает на то, что его резюме включают больше деталей и ключевых моментов. Модель Gemini 1.5 Flash также имеет высокие показатели насыщенности, превышающие 8,4. Gemma 2B имеет более низкие показатели насыщенности, что указывает на то, что он может не захватывать так много важной информации из исходного текста.
Заключение
Мы определили, что меньшие модели, способные работать на стороне клиента, такие как Gemma 2 2B, могут генерировать высококачественный вывод. В то время как облачные модели, такие как Gemini 1.5 Flash, отлично справляются с созданием резюме, соответствующих исходной статье, содержащих значительный объем информации, разницу следует взвешивать вместе с производительностью приложения, потребностями в конфиденциальности и безопасности, а также другими вопросами, которые вы можете задать при определении того, следует ли вам создавать клиентский ИИ .
Наблюдается очевидная эволюция возможностей семейства моделей Gemma, поскольку Gemma 2 2B способна генерировать более содержательные и согласованные резюме, чем Gemma 2B.
Оцените ваши варианты использования
Этот документ лишь поверхностно описывает возможности LLM в качестве метода оценки. Даже при резюмировании вы можете рассмотреть больше метрик , и результаты могут отличаться. Например, вы можете оценить охват, используя подсказку для определения ключевых моментов из статьи, а затем использовать другую подсказку для проверки того, охватываются ли эти ключевые моменты каждым резюме.
Другие варианты использования, такие как написание текста, переписывание текста или поиск с расширенной генерацией (RAG), могут иметь другие результаты для тех же метрик или должны использовать другие метрики для оценки.
При реализации этого подхода подумайте о том, как человек будет оценивать выходные данные, чтобы определить, какие метрики лучше всего подходят для ваших вариантов использования. Также стоит рассмотреть существующие фреймворки, такие как DeepEval, которые, возможно, уже имеют набор метрик, подходящих для вашего варианта использования.
Вы использовали LLM в качестве судьи для оценки моделей? Напишите нам в Twitter о своих выводах на @ChromiumDev или поделитесь с Chrome for Developers на LinkedIn .