Search
Write a publication
Pull to refresh
78
7
Куцев Роман @kucev

LLMarena.ru: Оцениваем LLM, RAG, AI агентов

Send message

Оценка приложений RAG с помощью RAGA

Reading time8 min
Views1.9K

Фреймворк с метриками и данными, сгенерированными LLM, для оценки производительности конвейера с дополненной генерацией данных.

Читать далее

Генерация дополненного извлечения (RAG): от теории к реализации LangChain

Reading time7 min
Views4.6K

От теории из оригинальной академической статьи до ее реализации на Python с OpenAI, Weaviate и LangChain

Читать далее

Полное руководство по оценке компонентов системы RAG: что необходимо знать

Reading time10 min
Views4.7K

Системы дополненной генерации (RAG) были разработаны для улучшения качества ответа крупной языковой модели (LLM). Когда пользователь отправляет запрос, система RAG извлекает релевантную информацию из векторной базы данных и передает ее в LLM в качестве контекста. Затем LLM использует этот контекст для генерации ответа для пользователя. Этот процесс значительно улучшает качество ответов LLM с меньшим количеством «галлюцинаций».

Читать далее

Сравнение бенчмарков LLM для разработки программного обеспечения

Reading time11 min
Views3K

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

Читать далее

Оценка LLM: комплексные оценщики и фреймворки оценки

Reading time10 min
Views1.2K

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

Читать далее

Как оценить LLM модель

Reading time13 min
Views2.6K

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

Читать далее

Оценка LLM: метрики, фреймворки и лучшие практики

Reading time12 min
Views3.8K

Дженсен Хуанг в своем выступлении на саммите «Data+AI» сказал: «Генеративный ИИ есть везде, в любой отрасли. Если в вашей отрасли еще нет генеративных ИИ, значит вы просто не обращали внимания на это».

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

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

Читать далее

Краткий обзор LLM бенчмарков

Reading time6 min
Views1.4K

Когда мы говорим о бенчмаркинге LLM в какой-то предметной области, то имеем в виду две разные концепции: бенчмарки моделей LLM и бенчмарки систем LLM. Бенчмаркинг моделей LLM заключается в сравнении базовых моделей общего назначения (например, GPT, Mistral, Llama, Gemini, Claude и так далее). Нам не следует вкладывать ресурсы в их сравнение, потому что: 1. Для них существуют публикуемые таблицы лидеров, 2. В использовании этих моделей существует множество нюансов (например, изменчивость модели, промт, сценарий использования, качество данных, конфигурация системы), что снижает полезность обсуждения их высокоуровневых параметров, 3. Важнее точности модели могут быть другие факторы: локальность данных, соответствие требованиям защиты конфиденциальности, поставщик облачных услуг, степень возможности кастомизации (например, fine-tuning или повторного обучения).

Что мы должны обсуждать, так это бенчмаркинг систем LLM. Это осмысленный и важный процесс, при котором мы рассматриваем применение конкретных моделей LLM (вместе с промтом и конфигурацией системы) в наших конкретных сценариях использования. Нам следует курировать датасеты из конкретных предметных областей, задействовать в их разметке и людей, и LLM для создания «золотого» датасета, позволяющего оценивать вносимые нами постоянные улучшения. Можно даже рассмотреть возможность публикации «золотых» датасетов бенчмарков.
Читать дальше →

Как устроен бенчмарк LLM? Знакомство с оценкой моделей

Reading time6 min
Views2.4K

В условиях, когда полным ходом идет (генеративная) революция искусственного интеллекта, каждый день появляются новые большие языковые модели (LLM). Существуют общие модели и усовершенствованные версии этих общих моделей для конкретных целей. В настоящее время на Huggingface размещено около 750 000 различных моделей. Но как выбрать ту, которая подойдет вашим целям?

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

Читать далее

Как оценить качество LLM модели

Reading time11 min
Views4K

Представьте модели LLM размером до более чем 100 миллиардов параметров, каждая из которых мощнее предыдущей. Среди них есть гиганты: Mistral (7 миллиардов), Mixtral (8x7 миллиардов), Llama (70 миллиардов) и колоссальная Falcon (180 миллиардов). Однако существуют и модели наподобие Phi1, Phi1.5 и Falcon 1B, стремящиеся к сравнимому уровню мощности, имея всего от 1 до 4 миллиардов параметров. У каждой модели, и большой, и маленькой, есть одна цель: стать мастером в искусстве языка, превосходно справляться с такими задачами, как резюмирование текстов, ответы на вопросы и распознавание именованных сущностей.

Но во всех этих задачах у всех больших языковых моделей (Large Language Model, LLM) проявляются сильные изъяны:

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

Очевидно, что простого обучения LLM недостаточно. Поэтому возникает вопрос: как нам обеспечить уверенность в том, что LLM А (с n параметров) лучше LLM Б (с m параметров)? Или сделать вывод, что LLM А надёжнее, чем LLM Б, на основании исчисляемых, обоснованных наблюдений?

Необходим стандарт для бенчмаркинга LLM, гарантирующий их этическую надёжность и фактическую точность. Хотя было проведено множество исследований бенчмаркинга (например, MMLU, HellaSwag, BBH и так далее), одних лишь исследований недостаточно для надёжного специализированного бенчмаркинга продакшен-систем.
Читать дальше →

Полный гид по бенчмаркам LLM

Reading time12 min
Views4.5K

В последние годы большие языковые модели (large language model, LLM) совершили революцию в мире искусственного интеллекта, став фундаментом для множества различных сфер, от чат-ботов до генерации контента. Однако такой прогресс несёт с собой и новые сложности; в частности, разработчикам нужно обеспечить оптимальность и этичность моделей. При выполнении этой задачи критически важны бенчмарки, представляющие собой стандартизированные способы численного измерения и сравнения моделей ИИ с целью обеспечения согласованности, надёжности и справедливости. В условиях быстрого развития LLM возможности бенчмарков тоже существенно расширились.

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

Самые популярные LLM бенчмарки

Reading time7 min
Views4.8K

Зачем использовать бенчмарки для оценки LLM?


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

Бенчмарки содержат все структуры и данные, необходимые для оценки LLM, в том числе:

  • «Эталонные» датасеты (релевантные задачи/вопросы/промты с ожидаемыми ответами)
  • Способы передачи входных промтов в LLM
  • Способы интерпретации/сбора ответов
  • Вычисляемые метрики и оценки (а также способы их вычисления)

Всё вместе это позволяет согласованным образом сравнивать точность разных моделей. Но какой же бенчмарк LLM стоит использовать? В основном это зависит от сценария использования, то есть от того, для чего вы намереваетесь применять LLM. Давайте разбираться!
Читать дальше →

Как дообучать LLM с помощью Supervised Fine-Tuning

Reading time15 min
Views16K

Обычно большие языковые модели (large language model, LLM) обучают в несколько этапов, включающих предварительное обучение и множество этапов fine-tuning (см. ниже). Предварительное обучение — это дорогостоящий процесс (например, требующий многих сотен тысяч долларов на вычислительные ресурсы), однако fine-tuning модели LLM (или контекстное обучение) по сравнению с этим гораздо дешевле (например, сотни долларов или даже меньше). Учитывая широкую доступность и бесплатность (даже для коммерческого использования) предварительно обученных LLM (например, MPT, Falcon или LLAMA-2), мы можем создавать большой спектр мощных приложений благодаря fine-tuning моделей под нужные задачи.


Этапы обучения LLM

На текущем этапе исследований ИИ одним из самых широко применяемых видов fine-tuning моделей LLM стал supervised fine-tuning (SFT). При этой методике курируемый датасет высококачественных выходных данных LLM применяется для непосредственного fine-tuning модели. SFT прост и дёшев в использовании, это полезный инструмент выравнивания языковых моделей, ставший популярным даже за пределами исследовательского сообщества опенсорсных LLM. В этой статье мы вкратце расскажем о принципах SFT, рассмотрим исследования по этой теме и приведём примеры того, как практикующие специалисты могут с лёгкостью пользоваться SFT, написав всего несколько строк кода на Python.
Читать дальше →

Fine-tuning больших языковых моделей в 2024 году

Reading time14 min
Views9.2K

Не секрет, что большие языковые модели (LLM) эволюционируют с безумной скоростью и привлекают внимание всей отрасли генеративного ИИ. Корпорации не просто заинтригованы, они одержимы LLM, и в частности, потенциалом fine-tuning LLM. В исследования и разработку LLM сейчас вкладываются миллиарды долларов. Лидеры отрасли и энтузиасты технологий всё сильнее стремятся углубить своё понимание LLM и их fine-tuning. Эта сфера natural language processing (NLP) постоянно расширяется, поэтому критически важно иметь актуальную информацию. Польза, которую LLM могут принести вашему бизнесу, зависит от ваших знаний и понимания этой технологии.

Цикл жизни большой языковой модели состоит из множества важных этапов, и сегодня мы рассмотрим один из самых любопытных и активно развивающихся частей этого цикла — процесс fine-tuning моделей LLM. Это трудозатратная, тяжёлая, но перспективная задача, используемая во многих процессах обучения языковых моделей.
Читать дальше →

Что такое supervised fine-tuning?

Reading time7 min
Views4.8K
Supervised fine-tuning (SFT) — это методика, применяемая для адаптации предварительно обученных Large Language Model (LLM) под конкретную задачу при помощи размеченных данных.


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

Этот процесс позволяет модели обучаться паттернам и нюансам конкретной задачи, адаптируя её параметры в соответствии с распределением конкретных данных и требований задачи.

SFT, обычно выполняемый после предварительного обучения модели, применяется для того, чтобы научить модель следовать переданным пользователем инструкциям. Он более вычислительно затратен, чем fine-tuning без учителя, но и имеет больше шансов достичь повышенной точности.

Объём необходимого дообучения зависит от сложности задачи и размера датасета. В случае простого переноса стиля с использованием моделей OpenAI наподобие GPT-3.5 или GPT-4 для получения превосходных результатов обычно достаточно 30-50 высококачественных примеров.

Чтобы преобразовать базовую Large Language Model (LLM) в выполняющую инструкции LLM (например, превратить Mistral в Mistral Instruct), обычно требуется обучение на десятках тысяч примеров.

Дообучение Zephyr 7b выполнялось на 16 GPU Nvidia A100 в течение примерно четырёх часов. Это можно считать примером отправной точки для модели с 7 миллиардами параметров.
Читать дальше →

Как с помощью supervised fine-tuning кастомизировать LLM

Reading time7 min
Views3.4K

В быстро развивающейся сфере Natural Language Processing (NLP) fine-tuning стал мощным и эффективным инструментом адаптации предварительно обученных больших языковых моделей (Large Language Model, LLM) под конкретные задачи. Предварительно обученные LLM (например, семейство GPT) продемонстрировали существенный прогресс в понимании и генерации языка. Однако эти предварительно обученные модели обычно учатся на огромных объёмах текстовых данных при помощи обучения без учителя и могут быть не оптимизированы под узкую задачу.

Fine-tuning позволяет закрыть этот пробел, воспользовавшись преимуществами общего понимания языка, полученными во время предварительного обучения, и адаптировав их к целевой задаче при помощи обучения с учителем. Благодаря fine-tuning предварительно обученной модели на специфичном для задачи датасете разработчики NLP могут достигать впечатляющих результатов с гораздо меньшим объёмом данных обучения и вычислительных ресурсов, чем при обучении модели с нуля. В частности, для LLM fine-tuning крайне важен, так как повторное обучение на всём объёме данных вычислительно слишком затратно.


Сравнение предварительного обучения LLM и fine-tuning

Успех fine-tuning привёл ко множеству передовых результатов в широком спектре задач NLP и сделал его стандартной практикой в разработке высокоточных языковых моделей. Исследователи и практики продолжают исследовать варианты и оптимизации методик fine-tuning, чтобы ещё больше расширить возможности NLP.

В этой статье мы глубже изучим процесс fine-tuning LLM на основе инструкций при помощи библиотеки transformers двумя разными способами: просто с библиотекой transformers и с модулем trl.
Читать дальше →

Supervised Fine-Tuning: как настроить LLM под конкретную задачу?

Reading time11 min
Views4.3K

Пожалуй, для адаптации больших языковых моделей (large language model, LLM) под чётко очерченные задачи обработки естественного языка (natural language processing, NLP) нет технологии лучше, чем SFT (supervised fine-tuning). Для дообучения модели её необходимо предварительно обучить, а это означает, что она уже многому научилась из широкого спектра текстов.

Но можно ли после одного лишь предварительного обучения использовать модель в различных типах задач? Да, но ей всё равно будет не хватать совершенствования при помощи SFT, чтобы она действительно могла выполнять требуемые действия и стала опытной в определённой сфере знаний.
Читать дальше →

Автоматическая разметка электронных писем при помощи ChatGPT и Zapier

Reading time6 min
Views2.6K

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

Было бы странно нанимать клинеров для приведения в порядок одного ящика, но для упорядочивания входящих вполне можно найти помощника — искусственный интеллект.

При помощи Zapier можно создать процесс, автоматически размечающий все входящие электронные письма и при помощи GPT компании OpenAI подбирающий подходящие метки. В статье я расскажу, как это сделать.
Читать дальше →

Машинное обучение: мост между бизнесом и Data Science

Reading time16 min
Views5.5K

Если последние несколько лет вы не жили на далёком острове без электричества и связи, то, вероятно, слышали о машинном обучении. Этот тренд было сложно не заметить. Каждый раз, когда мы говорим о беспилотных автомобилях, чат-ботах, AlphaGo или предиктивной аналитике, упоминается та или иная реализация машинного обучения. Хотя недостатка в историях и евангелистах нет, машинное обучение пока не стало в глазах бизнеса абсолютной необходимостью. В общественном восприятии применяемые в ML алгоритмы близки к научной фантастике, а подготовка конкретного плана внедрения ML по-прежнему остаётся высоким барьером.

Цель этой статьи — практические ответы, а не подготовка видения или продвижение тренда. Мы поговорим о зонтичном термине data science, о взаимосвязи его отраслей, основных задачах, которые может решать машинное обучение, а также о том, как эти задачи можно перевести на язык бизнеса. Также мы обсудим основные решения, которые нужно принять при найме специалистов, и выделим сложности, которые нужно учесть заранее
Читать дальше →

Распознавание именованных сущностей: механизм, методики, сценарии использования и реализация

Reading time13 min
Views6.3K

Естественные языки сложны. А когда на горизонте появляется контекст, они становятся ещё сложнее. Возьмём для примера фамилию Линкольн. Некоторые сразу подумают о шестнадцатом президенте США, выдающейся исторической фигуре. Однако для других это производитель автомобилей с тем же названием. Одно простое слово имеет разные значения.

Мы, люди, без проблем различаем значения и категории. Это свидетельствует о нашем интуитивном понимании окружающего мира. Но когда дело касается компьютеров, эта, казалось бы, простая задача превращается в неоднозначную проблему. Подобные трудности подчёркивают необходимость надёжного распознавания именованных сущностей (named entity recognition, NER) — механизма, при помощи которого мы учим машины понимать различные лингвистические нюансы.

В этой статье мы расскажем о том, что такое NER, о его принципах работы и о том, как оно используется в реальной жизни. Также в ней мы прольём свет на различные методики NER и способы реализации модели NER.
Читать дальше →

Information

Rating
1,697-th
Location
Москва, Москва и Московская обл., Россия
Registered
Activity