Канал про разработку продуктов на базе LLM/ChatGPT. Выжимка важных новостей и разборы кейсов.
Бенчмарк o1 pro - золотой стандарт
Итак, настало время протестировать o1 pro.
Но сначала disclaimer. Есть 4 разные версии o1. Не путайте их!
- o1-mini - самая маленькая и недорогая из Reasoning моделей. Она есть в ChatGPT и по API
- o1-preview - мощная версия, которая раньше была доступна в ChatGPT интерфейсе. Теперь ее оттуда убрали и заменили на pro. По API она еще доступна
- o1 - это то, что теперь заменяет o1-preview в чат интерфейсе. У этой модели ограничено время на размышления, так что субъективно она заметно глупее preview. По API эта модель не доступна.
- o1 pro - самая мощная модель, которой разрешили думать много и долго. Она есть в чат интерфейсе по Pro подписке за $200. По API ее пока нет.
Этот пост - исключительно про o1 pro. Модель я в порядке исключения тестировал вручную.
Я взял результаты бенчмарка o1-mini, и выбрал те задачи, в которых она ошибалась. o1 pro на голову выше mini, поэтому я допустил, что если mini не ошиблась, то и pro не ошибется. Таким образом мне нужно было прогнать не пару сотен задач, а в десять раз меньше.
Еще я отключил custom instructions по своевременному совету Игоря. Память у меня и так была отключена. Сконвертировал запросы к API в текстовый запрос и запустил вречную.
Тут я столкнулся с двумя граблями.
Во-первых, o1 pro сейчас встроена в Chat. Поэтому задачки, которые по API возвращали нормальный plain-text YAML, теперь стали возвращать красиво отформатированный markdown. Тут я исправлял формат вручную.
Во-вторых, я при задачах в API я few-shots всегда форматировал так:
System: Task explanation
User: sample request 1
Assistant: sample response 1
User: sample request 2
Assistant: sample response 2
User: real request
# Task
Task explanation
## Example
User:
Assistant:
## Example
User:
Assistant:
# Request
Бенчмарк Gemini 2.0 Flash Experimental - Снова TOP-10
Тестировать новую Gemini 2.0 Flash Exp от Google я начинал с дурными предчувствиями и ожиданиями ниже плинтуса. Почему - это отдельная история про выхлопную трубу и Data Extraction на Google Vertex AI .
В итоге эта модель приятно удивила. По сравнению с предыдущей Flash 1.5, у Flash 2.0 на моих продуктовых бенчмарках нарисовался заметный скачок качества. Reason поднялась с 44 до 62, а итоговый результат - 75 до 84.
При этом модель оказалась внимательна к инструкциям (что важно для Structured Output / Custom Chain of Thought), и достигла идеальных 100 в Docs & Integrate. Последнего нет больше ни у одной другой модели.
Google Deepmind пишут, что модель создавалась для автоматизации и agentic experiences
, а input context у нее - 1M.
В итоге по очкам Gemini Flash модель поднялась на 7 место. При этом, возможно, у модели самая низкая цена в TOP-15 (цену я не нашел, пока считаем, что она как у Flash 1.5).
Google продолжает удивлять, довольно кучно выпуская модели, которые попадают в TOP-10 бенчмарка. Из-за этого старые фавориты вроде Mistral / Anthropic постепенно съезжают куда-то вниз. При этом они не становятся хуже, просто у нас появляется больше выбора. И это здорово!
Ваш, @llm_under_hood 🤗
PS: Для тех, кто видит бенчмарки впервые, подробнее про них написано тут.
На курсе в рамках изучения Sandbox + Structured Output + CoT я включил такую практическую задачку.
Нужно написать скрипт, который позволит задавать text-to-sql вопросы по базам данных (вот тестовая SQLite из этого задания - DB1). Это тестовое задание, поэтому весь пайплайн можно собрать на коленке в Jupyter Notebook или PyCharm. Строчек 100 Python тут хватит.
Весь скрипт - это просто последовательность шагов, которая буквально реализует простой паттерн:
(1) передаем вопрос пользователя c контекстом в LLM, просим написать SQL
(2) выполняем SQL по базе
(3) возвращаем ответ DB на экран
Есть набор тестовых вопросов с каноническими ответами (я их докину в комментарии), по которым можно посчитать accuracy score. И все задание состоит в вопросах:
(1) Посчитать accuracy score для каждого варианта БД.
(2) Почему оно такое низкое/высокое?
(3) Как можно улучшить качество?
(4) А что будет, если спросить у вашей системы "How many firemen work at the company?"? Что именно нагаллюцинирует система, и как этого избежать?
Если кто-то захочет попробовать решить эту задачку - в комментариях к этому посту я выложу список из вопросов для БД c правильными ответами.
Можно попробовать собрать свой pipeline и поделиться полученным числом правильных ответов. Да, и что именно отвечает ваша система на вопрос "How many women work at the company?"
Ваш, @llm_under_hood 🤗
PS: А еще в этом практическом задании специально зарыто несколько грабель. В одни из них можно наступить просто выполняя это задание. А в другие только сегодня утром в учебных условиях наступил победитель Enteprise RAG Challenge (просто они его еще не стукнули 😈).
Лучше в подобные грабли наступать в учебных условиях, чем, как я, тратить на них 2-3 дня жизни проекта перед его сдачей.
А как же дела у AIFG Innovation Factory Malta?
Помните, в середине ноября я писал об акселераторе, который запускает компания Mellifera при поддержке ООН?
Это программа для стартапов, чья идея продукта отвечает одной из Sustainable Development Goals ООН и реализуется при помощи AI. Проводится онлайн, принимающая страна - Мальта, в конце программы будет финал, победитель которого едет представлять свой продукт на саммите AIFG в Женеве.
Так вот, предварительных заявок пришло значительно больше, чем ожидалось. Круто, что у нас в канале собралось так много фаундеров с интересными и социально значимыми продуктами!
Всем, кто подал предварительные заявки, Mellifera прислала письмо со следующими шагами и таймлайном - проверьте почту.
География заявок тоже оказалась шире, чем предполагали - это страны СНГ, РФ, США, Азия, страны ЕС. При этом одно из условий участия (поскольку конкурс с Мальты) - наличие компании на Мальте, которую нужно открыть до конца марта 2025. Здесь Mellifera готова оказать помощь компании-победителю, независимо от географии.
Про timeline дальше. Как написано в письме от Mellifera для фаундеров из нашего канала - ваши расширенные анкеты ждут до 18 декабря. По анкетам проведут отбор и часть команд позовут на питчинг в январе, чтобы отобрать 5 команд в bootcamp. Он начнется в феврале.
Если кто-то хочет успеть податься с нуля - да, это еще можно сделать. Заполняйте сразу расширенную анкету.
Про самые значимые события Innovation Factory я буду упоминать в канале. Но основной канал коммуникации с фаундерами, подавшими заявки, будет с почтового адреса от Mellifera.
Ваш, @llm_under_hood 🤗
Мы запустили вторую когорту курса!
Мы провели первую когорту курса по AI ассистентам, собрали feedback и прошлым вечером запустили новую когорту.
Когорта небольшая. Это поможет провести качественный Q&A, собрать feedback, улучшить подачу материала и быстрее открыть продажи для всех.
Пожалуйста, проверьте свои почтовые ящики на предмет письма с “LLM под капотом” в заголовке.
Вот список апдейтов и улучшений курса, которые уже сделали на основе обратной связи первой когорты:
Update 1
- Предварительно загружаем только метаданные для видео (чтобы снизить нагрузку, когда курс проходят с телефона)
Update 2
- Unit 2.2 Prompt - Добавили в методические материалы пример query expansion - промпта из проекта про поиск в документах компании.
- Unit 2.16 Structured Outputs & Custom CoT - Добавили в методические материалы пример Pydantic класса для анализа compliance документов, с разбором почему некоторые поля сделаны именно так, а не иначе. Заодно там демонстрация tagged unions в Pydantic.
Update 3
- Unit 2.4 Knowledge Base - добавили ссылку на разбор кейса про Multilingual Biz Translator (Кейс с ChatGPT про 10.000 € в месяц)
- Unit 2.7 Sandbox - добавили ссылку на использование Self-serve BI Dashboards (из детективной истории)
- Unit 2.12 Human in the Loop - добавили ссылку на Creative Content Generator.
- Unit 2.13 Structured Data Extraction - добавили ссылки на кейсы про извлечение данных компонентов (тут и тут)
- Unit 2.14 REPL - добавили ссылки на кейсы про SEO Keyword generation и автоматическое исправление ошибок
Update 4
- Unit 2.7 Sandbox - Добавили практическое задание по text-to-sql с двумя заполненными БД и доп вопросами (воспроизведение кейса Self-serve BI Reports)
Update 5
- Unit 2.7 Sandbox - обновили org_structure_db2.sqlite в задаче. Теперь Employee таблицы заполнены
Update 6
- Unit 2.7 Sandbox: Добавили второе практическое задание по написанию text-to-code прототипа (на базе первого)
- Unit 2.7 Sandbox: Добавили пример промпта для text-to-code, анонимизированный из одного из кейсов.
Те, кто проходят когорты, получают эти апдейты в режиме реального времени. А те, кто будет проходить курс после открытия продаж для всех, уже сразу увидят последнюю версию.
Большое спасибо всем, кто делится обратной связью, участвует в воркшопах по улучшению курса и оставляет отзывы!
Ваш, @llm_under_hood 🤗
Бенчмарк Gemini Experimental 1121 - седьмое место, unobtanium
Google освоились с LLM, они продолжают выпускать модели, которые кучно попадают в TOP 10. Новая экспериментальная версия повторяет этот тренд. Она немного хуже топовой Gemini 1.5 Pro, особенно в автоматизации задач из Code+Eng
. Но хороший reason
дает основание ожидать, что модель только станет лучше.
Почему модель - unobtanium? Да потому, что ее пока нигде не достать. Она доступна либо на OpenRouter либо на Google AI Studio с такими дикими rate limits, что на бенчмарк ушло несколько дней и API ключей.
Ваш, @llm_under_hood 🤗
PS: Для тех, кто видит бенчмарки впервые, подробнее про них написано тут.
Бенчмарк Qwen 2.5 Coder 32B Instruct - сначала расстроит, а потом порадует
Причина для расстройства на экране - Code+Eng в моем бенчмарке у него очень низкий. Я перепроверил ответы - действительно, очень много ошибок. Возможно, это связано с достаточно низким Reason - 46. Code Review ни один не был сделан правильно, анализ кода получился только простой.
Ну а что мы могли ожидать от модели, которая называется Coder? Кстати, чисто генерация кода у модели при этом получается хорошо. Даже в довольно хитрых сценариях. Я дополнительно прогнал text-to-sql бенчмарк (тот, про который рассказывали на докладе Neo4j), и модель догнала по возможностям Sonnet 3.5.
Получается логично - модель, которая заточена под написание кода, работает хорошо при написании кода, а при вопросах с кодом, где ответ - это не дописанный код - вообще плохо (особенно, если надо логику с анализом подключать). Что же у нас тут радостного?
А то, что эта кодинг-модель пододвинула рамки качества в продуктового LLM бенчмарка в категории "оно запустится локально на H100/A100"! В этой категории не было заметных скачков с релиза Qwen 1.5 32B в начале этого года.
Кстати, еще забавно, что последний заметный прорыв в крупных локальных моделей - это тоже был Qwen. Так что можно надеятся на продолжение тренда и новые рекорды в этом семействе.
Таблица с результатами text-to-sql и график трендов локальных моделей будут в первом комментарии к этому посту.
Ваш, @llm_under_hood 🤗
PS: Для тех, кто видит эти бенчмарки впервые, напомню - это закрытые продуктовые бенчмарки на основе набора задач из рабочих систем. Мы тестируем не то, как красиво модели болтают, а насколько качественно они выполняют конкретные задачи из продуктов с LLM под капотом. Про структуру и примеры бенчмарков можно прочитать в лабах или на официальном сайте бенчмарков.
Канал достиг очередной вехи в своем развитии. Кто-то завел клон моего аккаунта и начал попрошайничать денег. У одного подписчика попросили 3700$ на BTC.
Профиль выглядит похоже на мой, но вместо двух ll (маленькая буква L) там стоят две II (большая буква i). Сходу даже не отличить.
Сергею отдельное спасибо за бдительность!
Ваш, @llm_under_hood 🤗
Новая GPT-4o - третье место в бенчмарке 🎉
Новая версия GPT-4o от OpenAI выглядит очень хорошо и недорого (`gpt-4o-2024-11-20` в API). OpenAI даже не особо писали про эту модель - просто опубликовали пост в X:
GPT-4o got an update 🎉
The model’s creative writing ability has leveled up–more natural, engaging, and tailored writing to improve relevance & readability.
It’s also better at working with uploaded files, providing deeper insights & more thorough responses.
Anthropic Sonnet 3.5 1022 - это очень классная модель
(1) Она поддерживает хорошо работу с PDF
(2) У этой модели есть кэширование промптов
(3) делать structured data extraction с checklist и custom chain of thought на ней одно удовольствие.
Хотя Anthropic пока и не завел structured outputs на базе constrained decoding (как это сделали в OpenAI), но их модели понимают JSON схему без каких-то нареканий. А выход у них пока без ошибок (если не перегружать контекст и соблюдать signal-noise ratio).
Что я делаю для извлечения данных из сложных PDF недорого:
(1) загружаю системный промпт со схемой в первое сообщение. Помечаю для кэширования через "cache_control": {"type": "ephemeral"},
. Схему конвертирую в строку вот так:
json.dumps(Model.model_json_schema(), indent=2, ensure_ascii=False)
{
"role": "assistant",
"content": "Here is the JSON requested:\n{"
}
{
и валидирую загрузкой в исходную pydantic modelИтак, тот самый курс от LLM под капотом
готов, и мы набираем первую когорту участников. Ссылка ниже.
Полное название курса “LLM под капотом: выбираем эффективные технические решения для AI-ассистентов”. Именно об этом я и буду рассказывать 3.5 часа на видео - с разбором кейсов и примерами.
Курс в записи, поэтому можно будет возвращаться к нему по мере возникновения у вас новых задач. Чат поддержки - задать вопросы мне и пообщаться с другими участниками - тоже будет.
Самое ценное, что есть в этом курсе - библиотека паттернов и кейсов. С ней можно быстро подбирать работающие решения под разнообразные бизнес-проблемы.
Для создания этой библиотеки я заново прошелся по известным мне кейсам успешных внедрений AI/LLM. Архитектуру каждого кейса я разобрал на элементы, а потом выделил паттерны, которые повторяются снова и снова, даже в разных отраслях. Потом эти паттерны я отранжировал по степени сложности и разобрал в контексте AI-кейсов, в которых они применялись. Получился отличный рабочий инструмент, который помогает мне - а после курса, надеюсь, и вам поможет, - выводить продукты с LLM под капотом на рынок быстрее.
Продажи еще не начались. Сейчас можно записаться в первую когорту и получить возможность купить курс уже на днях.
Для первой когорты (может быть, и для пары последующих тоже) проведем живую Q&A встречу - я отвечу на ваши вопросы по материалам курса, а от вас буду ждать фидбэка.
Когорты сделаны только для того, чтобы собрать фидбэк и отладить подачу курса. В итоге курс будет доступен для продажи без ограничений, и всем независимо от времени покупки будет доступна актуальная версия.
Ответы на вопросы про курс собраны тут 👈. Там же можно заполнить форму на участие в первой когорте или просто оставить email для получения уведомления о начале общих продаж.
На скриншоте - общая карта всех материалов курса. Если приглядеться, то можно разглядеть слайды с разбором кейса про Sales Lead Generation. Анализ Checklists и Custom Chain of Thought там рядом.
Ваш, @llm_under_hood 🤗
“Ринат не делает чат-ботов!”
Это открытие недавно сделали несколько команд, которые пытались привлечь меня для технического консалтинга в свои проекты c уже выбранными решениями.
Давайте объясню почему я не берусь за чат-ботов или обычных поисковых ассистентов. И что делать с клиентами, которые хотят такого.
Это очень просто. Статистически, типовой проект чат-бота или поискового ассистента - это длительный проект с непонятным окончанием и наличием осадочка у клиента.
Скажем, сама концепция чат-бота подразумевает текстовый интерфейс с кучей разнообразных требований и невозможностью быстро сдать проект "на 5". Например, в процессе могут всплывать такие хотелки клиента:
(1) чтобы учитывал предыдущие сообщения в чате
(2) чтобы знал дату рождения директора
(3) чтобы разговаривал вежливо и корректно
(4) чтобы не лил воду и говорил кратко
(5) чтобы мог подстраиваться под хотелки каждого пользователя
(6) чтобы никогда не галлюцинировал про финансы
(7) чтобы учитывал права доступа пользователя при доступе к документам
(8) чтобы знал имя собаки директора
(9) чтобы учился на ошибках
(10) чтобы читал Excel файлы.
И этот список хотелок не остановить. А ведь каждую надо делать, отлаживать. Может даже потребоваться пересобрать весь pipeline, а потом как-то протестировать, что точность ответа не упала из-за регрессии. А сами тесты полностью даже не автоматизируешь - надо бегать к клиенту и просить их оценить каждую новую версию.
Да, такой проект может принести вендору более 1M EUR, но он растянется на месяцы и легко загрузит команду в 4-6 человек на это время (это цифры из конкретного кейса, который до сих пор пилят).
Я предпочитаю вместо длительной возни с одним нудным проектом точечно закрыть 5 мелких проектов. Поэтому я стараюсь выбирать такие проекты, чтобы можно было сказать “мы с вероятностью в +80% можем его быстро сделать так, чтобы клиент был доволен”.
Ценность клиенту обычно доставляется при закрытии проекта. Правильным выбором пректа, мы можем это делать быстрее и чаще.
Успешное закрытие каждого проекта - это новые бизнес-возможности. Работа на этом ведь не останавливается. Клиент, вкусивший возможностей от автоматизации с LLM под капотом, прибежит с новыми хотелками и идеями. А ведь еще и старый проект можно лучше интегрировать в процессы компании, а для этого нужно будет звать дополнительные команды и открывать новые бюджеты.
Наглядный пример. Вчера мы сдали клиенту основную часть проекта по генерации лидов на рынках двух стран. На eval прогоне система прошлась по 330 компаниям из реестра и самостоятельно дополнительную информацию по 58 компаниям. Клиент проверил и сказал, что 10% из этого были известные компании, 42% - мало информации, а вот 48% - это новые компании. Для них мы нашли сайты, почтовые адреса и/или телефоны. Причем это все недавно открытые компании, к которым самое время заходить с предложениями. Выборка была случайная.
Бизнес посчитал число компаний в бизнес-реестрах стран и понял масштабы. Причем, вопрос о “внедрять или не внедрять” даже не стоял - запускать надо уже. Тут скорее у них возник вопрос - “как адаптировать бизнес-процессы в компании, чтобы продажники могли начать обрабатывать новый поток клиентов” и “как это сделать в разных странах”.
Естественно, что к этому повороту мы были готовы заранее: “А давайте попробуем в одной из стран пилот разворачивания вот этой удобной CRM, в которую мы будем каждую неделю подгружать новые лиды из AI платформы, продажники будут последовательно по ним проходить, а бизнес будет видеть метрики по процессу. Мы вам все настроим и подключим” - “Ну-ка, расскажите про это подробнее!”
Когда закрывается один AI Case, обычно открывается 2-3 новые возможности проектов. А это означает больше пространства для роста. При этом рост уже не требует AI/LLM/GPT специалистов, там обычные интеграторы и разработчики.
Окончание тут.
История развития State of the Art локальных моделей.
Ловите картинку на базе бенчмарков. Вместо трендов теперь для каждой категории модели отображается нормальный cumulative maximum.
Gemini 1.5 Flash 8B добавлен со звездочкой - его нельзя выкачать и запустить локально. Надо будет ждать, пока не появится открытая модель.
NB: Модели разделены условно на те категории железа, которые я чаще всего вижу у клиентов. Считаем VRAM на запуск с запасом места под контекст и без квантизаций.
На картинке видно, что крупные модели начали появляться относительно недавно, но у них прогресс пока быстрее всего идет.
Маленькие модели, которые влазят в 4090, достаточно долго стагнировали. Gemini 1.5 Flash 8B стал недавно внезапным рывком.
Ваш, @llm_under_hood 🤗
Лайфхак для технических продуктов
Если у меня появится время на свой продукт c LLM под капотом, то я обязательно в нем хоть как-то пропишу тему sustainability. Это заметно увеличит его шансы на успех. Сейчас объясню почему.
Пару недель назад, еще до того, как я слег с этой дурацкой простудой, мы провели в Вене два технических Хакатона про LLM/Data Science. Общая тема: Sustainability - про бережливое отношение к окружающему миру. Эта тема, как секретное рукопожатие, открывает многие двери с минимальными усилиями.
Первый Хакатон - Логистический для Walter Group. В нем участники писали алгоритмы, которые управляли маленькими транспортными компаниями в симуляции Европы. Симуляция, помимо всего прочего, учитывала расход топлива, выбросы CO2 и усталость водителей.
Кода для этой части симуляции - около строчек 200 на Python, но этого было достаточно, чтобы на весь хакатон вешать тэг Sustainability. А последнее уже дает плюс для участников и проводящих его компаний. Больше приходит людей (в этот раз - 90), больше сотрудников потом себе находят компании.
Второй - Sustainability RAG Challenge. У коллеги есть Венское DS/ML community, и он решил провести первый Хакатон. Взял за основу Enterprise RAG Challenge, но в качестве документов сфокусировался на Sustainability Reports компаний. Это был осознанный и очень грамотный выбор.
Как только он рассказал про идею в компании, мгновенный ответ был: “Без вопросов! Проводи в головном офисе в выходные. Напитки мы заранее приготовим, на пиццу оставим денег, OpenAI tokens отсыпем с запасом. Что-нибудь еще надо?”. Все дали, все прошло хорошо, думают повторить.
Общая идея обоих мероприятий - взяли базовую концепцию, которая довольно неплоха сама по себе. Но ee подняли на другой уровень, дополнив чуть-чуть тематикой sustainability.
Добавление Sustainability обычно требует не очень больших усилий, но сразу дает огромный буст идее. Всем сразу видно, что авторы стремятся не просто зарабатывать много денег или репутации, а еще и приложили усилия и подумали про изменение мира к лучшему. Таким не жалко дать побольше денег и открыть побольше дверей.
Да и просто приятно работать с проектами, которые не только деньги зарабатывают, но и пытаются мир к лучшему изменить.
Вот еще несколько примеров:
Во время разработки логичистической симуляции мы достаточно легко получили грант как раз на технологии рассчета влияния логистики на окружающую среду. Грант оплатил месяц работы небольшой команды.
Бесплатное приложение с прогнозами погоды MyRadar в 2023 году собрало US$1.65M на запуск пары спутников, чтобы отслеживать пожары и качество воздуха. Ну и качество прогнозов улучшили.
Да и вообще, если взять список всех “хотелок” YCombinator и помаппить на цели бережливого развития ООН (UN Sustainable Development Goals - SDG), то получается интересная картинка: хотелки от YC не только вовсю используют AI/LLM, но и обязательно закрывают по 1-3 SDG.
Напомню, что YCombinator - это кузница крупнейших технических компаний вроде Stripe, Twitch, Airbnb, Reddit и Instacart. Они вложились в 4000+ компаний общей стоимостью US$600B. Их хотелки - это индикатор особенно выгодных коммерческих направлений. Они называются Request For Startups.
Бенчмарк новой Claude 3.5 Sonnet v2 - лучше прошлой версии, но не TOP 10.
Только что в Anthropic зарелизили Claude 3.5 Sonnet v2. На продуктовом бенчмарке она в TOP 10 не попала, заняв 11ое место в общем зачете.
У новой версии подтянули следование инструкциям и работу с кодом (Code - это не только написание кода, но и анализ, преобразования и рефакторинг).
В целом неплохая модель, но в продуктовых задачах можно получить лучшее качество за меньшие деньги.
Кстати, для тех, кто очень нежно любит качество Claude 3.5 Sonnet в задачах простого написания кода, в комментарии выложу скриншот небольшого бенчмарка для Nodes24 конференции.
Ваш, @llm_under_hood 🤗
PS: Для тех, кто видит эти бенчмарки впервые, напомню - это закрытые продуктовые бенчмарки на основе набора задач из рабочих систем. Мы тестируем не то, как красиво модели болтают, а насколько качественно они выполняют конкретные задачи из продуктов с LLM под капотом. Про структуру и примеры бенчмарков можно прочитать в лабах или на официальном сайте бенчмарков.
Я решил попробовать побенчмаркать o1 pro вручную
Все тесты прогонять не буду, т.к. это слишком долго. Я просто возьму все тесты бенчмарка, где o1-mini дала неидеальный ответ и прогоню вручную. o1 pro всяко лучше.
Это займет какое-то время, но результат должен быть забавный.
Можно уже точно сказать, что o1 pro умеет неплохо признавать свои ошибки post-mortem 😁
Как вы думаете, какие scores будут у этой модели на продуктовом бенчмарке?
Ваш, @llm_under_hood 🤗
Enterprise RAG Challenge Round 2 состоится - 27 февраля!
В нем мы сравниваем точность того, как разные RAG-архитектуры отвечают на вопросы по документам компаний.
Первый раунд прошел в сентябре, его результаты очень всем понравились. Мы на практике увидели эффективность structured output, а кого-то схантили к себе в команду прямо на основе рейтинга в списке.
Второй раунд состоится в конце февраля и будет немного покрупнее.
За результатами будут следить не только читатели этого канала, но и компании. Например, IBM, Google и прочие небольшие корпорации в пределах Австрии, Германии и Швейцарии.
Официально регистрацию пока не открыли. Это просто sneak preview для читателей канала, чтобы иметь в виду 27 февраля.
Ваш, @llm_under_hood 🤗
📦 Бенчмарки нескольких моделей одной пачкой: LLama 3.3, Amazon Nova, Gemini 1206
Meta Llama 3.3 70B Instruct - 40 место. Неплохой Reason, чуть ниже 405B, но вот со следованием инструкциям достаточно плохо. Но это типично для базовых моделей Llama. Хорошие тюны это дело исправляют.
Серия Amazon Nova - тоже так себе. Выложили что-то сырое. Инструкциям оно следует, но в целом хуже Llama 70B. Модели заняли 31, 50 и 74 места
Google Gemini Experimental 1206 - 23 место. Сильно хуже Google Gemini 1.5 Pro v2, которая очень хороша (если продраться через особенности использования). На то 1206 и экспериментальная модель.
А самое классное, что все эти модели показывают уровень GPT-3.5, которая когда-то была верхом прогресса. А теперь это кажется прошлым днем.
Что насчет тестов o1-pro и o1? Когда эти модели будут доступны по API, тогда я их протестирую. По субъективным ощущениям o1 будет слабее o1-preview, ближе к уровню o1-mini. А o1-pro должен быть немного сильнее o1-preview.
Ваш, @llm_under_hood 🤗
PS: Для тех, кто видит бенчмарки впервые, подробнее про них написано тут.
Полный LLM Benchmark за ноябрь 2024
Полный отчет по продуктовым бенчмаркам LLM за ноябрь только что опубликовали. Читаем его тут: English / Deutsch.
Содержание
- Update: Claude Sonnet 3.5 v2 - Small capability improvement and great PDF capability
- GPT-4o from November 20 - TOP 3!
- Qwen 2.5 Coder 32B Instruct - mediocre but pushes SotA!
- Qwen QwQ 32B Preview - too smart for its own good
- Gemini Experimental 1121 - decent, but hard to get.
- Plans for LLM Benchmarks v2 - focus on cases and capabilities
- Text-to-SQL Benchmark
Этот отчет для тех, кто предпочитает моим постам в канале вдумчивый long-read один раз в месяц. Ну или для тех, у кого нет аккаунта в Телеграме 😁
Например, его внимательно читает R&D команда в известной международной компании по производству безалкогольных напитков, они сами рассказали на прошлой неделе. Перед ними стоят конкретные задачи по автоматизации бизнес-процессов, и они экономят время на отслеживании глобальных трендов и выборе подходящих моделей.
Ваш, @llm_under_hood 🤗
Неблагодарный прогноз на 2025
В чате спросили про мой прогноз на 2025 год. А потом про тему будущего для агентов и fine-tuning спрашивали на созвоне с первой когортой курса.
Поэтому вот мой субъективный прогноз на 2025 по паре вопросов.
fine-tuning уже все?
Да fine-tning и никогда не был особо удачной вещью на практике. Его применяют к месту только в одном случае из 20, а применяют успешно (так, чтобы не сбить HLRF калибрацию и не набрать галлюцинаций) - и того реже. Чаще это все из-за того, что недооценивают сложность подготовки правильного набора данных и корректного процесса тюнинга.
Из моих кейсов удачно и к месту fine-tuning был использован только в одном проекте. У них там было достаточно данных - самостоятельно написанный справочник на нужную тематику, а еще 200-300 своих статей на эту же тему.
А в следующем году fine-tuning будет использоваться и того реже, т.к. люди начнут лучше понимать сколько разных возможностей дает хорошая базовая модель. А уж если там есть structured outputs / custom chain of thought и нормальный prompt engineering - то и того больше.
Будет ли 2025 год - годом агентов?
Нет, не будет. Но не потому, что это технически невозможно (если заморочиться, то можно), а потому, что это очень сложный продукт в разработке. Там еще больше переменных, чем в чат-ботах (см. список хотелок тут и в обсуждении).
Поэтому про агентов будут продолжать говорить, но прямо крышесносных продуктов именно на этой концепции не будет.
При этом фреймворков для агентов будет вагон и маленькая тележка. Всем хочется славы LangChain. Вон даже Pydantic подключился - https://ai.pydantic.dev.
А что будет с моделями? AGI в 2025?
AGI точно не будет - это еще более сложная тема, чем агенты)
Но все больше компаний будут покушаться на первое место OpenAI (это видно по трендам бенчмарков).
Все больше провайдеров будут предоставлять режим работы, как в o1-preview. Это сейчас самый простой способ повысить когнитивные способности моделей без нечеловеческих усилий (по сбору данных, построению кластеров и обеспечению всего этого энергией). Пусть даже система работает медленнее и стоит дороже.
А еще провайдеры будут запихивать больше всяких уникальных удобств под свой API. Кэшированием промпта уже никого не удивишь, но еще есть:
(1) Structured Outputs (constrained decoding) - он пока толком есть только у OpenAI, а ведь больно удобная это штука для повышения качества ответов (а если уж речь идет про custom chain-of-thought, то тем более)
(2) Работу с PDF сразу на уровне Text + Vision, это аналогично тому, как Anthropic под капотом разбивает PDF по страницам на текст + картинки.
(3) RAG + Execution Sandbox, как это сделано у OpenAI Assistants API.
А вот смены трансформеров на более удобную в inference архитектуру я пока не жду. Уж больно хорошо люди их научились обучать.
А какие у вас прогнозы?
Ваш, @llm_under_hood 🤗
Qwen QwQ 32B Preview - пока плохо
Вчера я писал про интересные результаты оценки Qwen 2.5 Coder 32 Instruct. И как раз сразу после этого на OpenRouter появилась новая reasoning модель, которую все очень хвалят по результатам общения: QwQ-32B-Preview
Модель провалилась на дно моего бенчмарка. Она очень плохо применима для решения продуктовых задач и автоматизации бизнес-процессов.
Почему? Да потому, что модель в текущей версии шибко умная и разговорчивая, инструкции игнорирует. Например, ей говоришь просто:
You extract product properties from provided text. Respond in format: "number unit" or "N/A" if can't determine. Strip quotes, thousands separators and comments.
Alright, I've got this text about an electric screwdriver,...
mistral-7b-instruct-f16
ответил по существу: 1300 rpm
. Это тот ответ, который можно без проблем использовать дальше в pipeline продукта.Вчера я провел AI Discovery Workshop для одного клиента. Они пришли с таким запросом:
Мы поставляем сложное медицинское оборудование [1]. Иногда что-то идет не так, и это оборудование надо отлаживать. Техники выгружают логи, смотрят ошибки, потом находят схожие кейсы в нашей документации и исправляют. Если все сложно - пробиваются до инженеров, отвлекают их, потом снова едут к клиенту и продолжают тратить время компании.
Что мы попробовали - LangGraph + LangChain, чтобы ужимать громадные файлы логов и извлекать релевантные статьи из проиндексированной базы знаний в Confluence(гибридный поиск).
Все хорошо, но система галлюцинирует. Она выдумывает типы ошибок и новые записи в логах. Ответы - бывают вообще недопустимые. Как нам исправить ситуацию?
Что думаем делать дальше:
(1) Self-RAG или еще какой вариант RAG
(2) fine-tuning
(3) лучше промпты
(4) предобработка логов
Neo4j, наконец, выложили видео про LLM и text-to-SQL
В этом получасовом докладе мы с коллегой из sister company сравниваем способности разных LLM-ок к генерации запросов для реляционных и графовых баз данных.
Будет интересно тем, кто хочет увидеть варианты улучшения качества ответов LLM в разных конфигурациях. И еще тем, кого интересует тема создания специализированных бенчмарков под задачу (а с этого, по-хорошему, должен начинаться любой проект с LLM под капотом).
Слайды есть тут.
Видео: https://youtu.be/YbJVq8ZOsaM?si=r8AjLduNtXcdfq7L
Ваш, @llm_under_hood 🤗
Новости про курс по AI-ассистентам
Пригласительные письма первой когорте отправлены. Проверьте свою почту!
Группу старались сделать небольшой, но разнообразной по бэкграунду, задачам и рабочим ролям.
Что дальше? За декабрь хотим собрать feedback по когортам и адаптировать подачу материала, где это требуется. Затем продажи курса откроются для всех без ограничений: скорее всего, в начале следующего года.
Записаться в waitlist и узнать больше о курсе можно здесь.
Если вы уже записывались, повторно этого делать не нужно: все сохранилось и лист ожидания в силе.
Ваш, @llm_under_hood 🤗
А давайте запустим в канале акселератор AI-проектов?
AI Bootcamp: AI For Good
Идея такая. Мы ищем проекты и стартапы c LLM под капотом, у которых есть социально значимые цели. Проект может быть на стадии от “есть оформившаяся идея, которую мы уже начали пилить” до “есть MVP, который хотим уже показывать клиентам и инвесторам”.
Пять стартапов мы возьмем в bootcamp, где:
→ поможем с технологиями и процессами, особенно с LLM-driven реализацией
→ познакомим с экспертами, инвесторами и компаниями в Европе
→ поможем с развитием стартапа и процессом разработки продукта на рынки Европы
→ подскажем, как быть с юридическими тонкостями, оформлением документов и поиском финансирования.
Участие полностью удаленное. Но есть три ключевых требования:
(1) Идея проекта должна быть социально значима: она должна решать хотя бы одну из задач в списке Sustainable Development Goals от ООН. Это проще, чем кажется: SDG достаточно широкие и универсальные, и многие проекты способны внести свой вклад - важно лишь увидеть, как именно ваша идея может быть здесь полезной.
(2) Команда должна быть потенциально заинтересована в запуске проекта и открытии компании на Мальте.
(3) Должно быть реальное желание развиваться и двигать свой проект вперед. Это bootcamp, и мы будем плотно работать с командами в нем.
Да, участвовать из РФ тоже можно.
Почему такие требования?
Все просто. Проект акселератора запускается на Мальте компанией Mellifera в рамках инициативы ООН. Мальта заинтересована в привлечении грамотных специалистов и компаний, а тут и повод интересный, и люди хорошие собрались. Участие в проекте ООН открывает множество дверей для всех вовлеченных, а Mellifera - это один из моих самых интересных клиентов. Они хотят поучаствовать в перспективной инициативе, сделать мир лучше и запустить этот bootcamp на Мальте.
Если вы присоединитесь к bootcamp (первый шаг - заполнить предварительную анкету по ссылке), то с декабря мы начнем предварительно общаться, а в январе - плотно работать: воркшопы, курсы, лекции. 🔥 Здесь постараемся подключить представителей интересных компаний вроде Mistral AI и Anthropic. Как я уже говорил, участие в проектах ООН открывает много дверей.
До весны мы будем помогать вам развивать ваши идеи и продукты. Самое интересное начнется в марте - команды презентуют свои идеи и наработки жюри в финале на Мальте. А компания-финалист получит возможность поехать летом в Женеву на мировой финал инициативы AI for Good - презентовать свою идею жюри ООН, знакомиться с инвесторами и компаниями глобального уровня. К слову, на саммите AIFG выступал и Sam Altman.
Как поехать, как оформить визы, как зарегистрировать, как разобраться с финансированием - с этим всем, естественно, поможем. Поездку в Женеву оплатим. Если не запускали стартапы, не работали с инвестициями или не выходили на рынок Европы - не страшно. Задача bootcamp - научить и помочь вывести на рынок социально значимый продукт с LLM под капотом.
Кстати, переезжать на Мальту не требуется. Это уже только при желании.
Интересно?
👉 Заполняйте форму на сайте. Срок до конца ноября.
👉 Если есть вопросы - задавайте в комментариях или пишите @akitka, @abdullin.
👉 Смело делитесь этим сообщением - буткамп запустится только если будет достаточное количество стартапов-участников на входе.
NB: Понимаю, что Sustainable Development Goals от ООН можно интерпретировать по-разному. Можно удариться в greenwashing и политику. Наш AI bootcamp не про это, а про то, чтобы помочь запустить идею, которая реально может помочь сделать мир лучше. Поэтому, пожалуйста, давайте в комментариях фокусироваться на позитивной стороне. Она точно есть.
Ваш, @llm_under_hood 🤗
Что же я делаю, когда клиенты просят очередного чат-бота?
Это окончание поста. Начало тут.
Поэтому я изначально всегда приоритизирую такие решения проблем клиента, которые можно будет закрывать быстрее. Так будет больше успешных закрытий проектов в год.
Иногда это требует говорить “нет, я не буду помогать с чат-ботом”. Но это можно сказать и мягко “чат-бот по техническим справочникам оборудования - это долгий проект. Давайте лучше посмотрим на ваши проблемы еще раз и выберем такую, которую мы можем решить в разы быстрее. И чтобы выгода для компании была в разы больше”
Это “посмотреть на проблемы еще раз” обычно заключается в процессе сопоставления. Мы смотрим на текущие проблемы клиента - что мешает компании расти, куда уходит время людей или тратятся деньги. А потом сопоставляем их с известными кейсами успешных внедрений AI (как раз для этого я и трепетно собираю свой портфель AI кейсов). И в процессе можно найти более простые и быстрые задачки вроде:
(1) Проблема - люди тратят 70-80% времени на чтение purchase orders от разных вендоров и ручное вбивание их в систему. Простое решение - сделать копилота, который извлекает данные из purchase orders в таблицы. Data Extraction.
(2) Проблема - компания тратит кучу времени на чтение тендеров на поставку оборудования в новостройки и оценку прибыльности. Простое решение - сделать копилота, который извлекает список позиций из строительных тендеров, а потом сопоставляет с фактическими затратами на аналогичные позиции из истории. Задача здесь не делать точную систему, а систему, которая достаточно хорошо и быстро сможет дать оценку любому тендеру данного клиента. Data Extraction + Search (Query Expansion)
(3) Проблема - крупная юридическая компания тратит кучу времени своих адвокатов (а это 300 евро в час) на составление инвойсов на услуги. Простое решение - сделат копилота, который берет неструктурированные time-sheets и преобразует их в черновики детализированных инвойсов для клиента. Data Exraction + Transformation.
Что общее в этих примерах - scope проекта очень четко очерчен. Можно забрать себе размеченные документы с ground-truth и потом спокойно с ними поработать. И сильно меньше вероятности, что возникнут неожиданные хотелки внутри проекта - мы либо преобразовываем информацию точно по спецификациям либо нет.
Если получается, то проект считаем сданным. А потом по схеме: "Да, кстати, а вам нужно его удобно интегрировать в рабочий процесс сотрудников или еще решить вот такую проблему? Мы можем тут предложить…"
Ваш, @llm_under_hood 🤗
Через час на NODES 24 будем рассказывать про text-to-SQL
И еще про text-to-cypher. Идея в том, чтобы сравнить способности разных LLM-ок к генерации запросов для реляционных и графовых баз данных.
Для этого мы взяли модель данных из системы документирования технических и организационных зависимостей в корпорациях (на базе Contexture) и завели список вопросов-ответов. Например вопрос, который требует рекурсии:
If the Customer Relationship Management (CRM) system failed while its maintainer was on vacation, how many other systems that depend on it would be impacted directly and indirectly?
Бенчмарк Claude 3.5 Haiku - дороже и умнее
Новая младшая модель от Anthropic отражает тренд последовательного роста качества небольших моделей. Haiku в среднем подтянула очки по общим показателям, за исключением Code+Eng (*)
А еще у модели почти в два раза выросла способность мыслить! В категории Reason произошел скачок с 35 до 68. Это самое большое значение среди всех моделей Anthropic. Возможно мы видим новую архитектуру следующего поколения моделей?
На смену архитектуры намекает и четырехкратное увеличение стоимости Anthropic Haiku. Теперь она уже не "смышленая и очень дешевая". Можно найти подешевле и умнее. Например, GPT-4o Mini или Google Gemini Flash 1.5 8B.
Но общий тренд роста качества моделей радует. Посмотрим, не проявится ли рост Reason в следующих релизах моделей постарше.
Ваш, @llm_under_hood 🤗
(*) Я переименовал категорию Code в Code+Eng, чтобы точнее отражать наполнение бенчмарков - не только написание кода, но и анализ, review и интерпретация.
PS: Для тех, кто видит эти бенчмарки впервые, напомню - это закрытые продуктовые бенчмарки на основе набора задач из рабочих систем. Мы тестируем не то, как красиво модели болтают, а насколько качественно они выполняют конкретные задачи из продуктов с LLM под капотом. Про структуру и примеры бенчмарков можно прочитать в лабах или на официальном сайте бенчмарков.
Лучшие проекты с LLM - это те, которые делают отчеты, а не болтают
Я уже не раз говорил, что я стараюсь не браться за проекты, где клиент хочет себе conversational search или чатбота или что-то еще с текстовым полем "А что вы хотите сделать?"
Причина - у такого продукта слишком много нюансов и переменных. Этот продукт делается для людей, что открывает дверь для субъективщины, непоняток, длинных циклов разработки. В итоге, статистически, получаются длинные проекты и не очень довольные клиенты.
А как тогда быть? Да просто копать в настоящие хотелки клиента и пытаться свернуть продукт туда, где нужно работать с процессами или системами.
Только вчера шло обсуждение нового клиента, который хотел глобальный data warehouse с conversational search и умными ассистентами. Когда я сказал, что это делать совсем не выгодно - поискали альтернативные варианты и нашли пару кейсов с data extraction (пример кейса) или lead generation (пример кейса).
А последние как раз превосходно сводятся к обычным отчетам. Отчеты - сухие, конкретные и часто про деньги. На скриншоте как раз пример демо-отчета, который я только что отправил отделу продаж одного из клиентов. Для запуска этого на проде не нужно никаких хитрых серверов, микросервисов и деплойментов. Достаточно будет небольшую виртуалку и скрипт, который будет крутиться по расписанию.
Отчеты бывают читаемые людьми или для выгрузки в системы. Особый UX там не требуется, а если нужно причесать UI, то хватит и GPT-o1 (дизайн на фотке - его). А еще обычно не нужно ничего патчить, внимательно следить за нагрузками и аптаймом. Customer Support сводится к минимуму, а первые итерации можно просто прогонять у себя в юпитере и присылать файлом клиенту.
В общем, проекты с LLM под капотом, которые сводятся к отчетам - это сплошная красота (по скорости закрытия). И, по моей статистике, большинство клиентских ситуаций как раз можно свести к этому. Достаточно просто вспомнить заветы product-driven development и копнуть поглубже.
Ваш, @llm_under_hood 🤗
Кейс - графовая система организации знаний для завода / корпорации.
На TedAI Vienna я встретился с ребятами, которые пилят Data Context Hub - систему для организации корпоративной системы знаний для заводов и огранизаций. Эта система подгребает под себя разносторонние источники данных и потом выстявляет наружу API для работы с ними.
Например, API для ответа на вопрос, “а сколько гаек X12123 версии 123 было использовано в машинах на последней неделе?” или “а кто может заменить рабочего X, которому надо нарезать 345 гаек X12123 версии 124, но заболел?”
Самое интересное у них:
(1) Они рано поняли, что векторные базы, семантический чанкинг (или любой чанкинг) - это бесполезная и вредная фигня в тех областях, где галлюцинации нам не нужны.
(2) Достаточно быстро поняли, что секретный рецепт для получения точных ответов на разнообразные ответы - “просто надо нормально предобрабатывать и структурировать данные”.
(3) Плюс быстро сообразили, что generic chatbot interface - это тупиковый путь. Лучше выставлять наружу специализированные интерфейсы под конкретные задачи, которые будут работать заведомо лучше (Dedicated Agents с заранее собранным инструментарием и контекстом под задачи)
Но про все это мы и так уже давно говорим в канале. Дальше начинается самое интересное. У них такое разнообразие данных, сущностей и контекстов, что все предобработать автоматически невозможно. А вручную это сделать - не хватит времени.
Поэтому они они после data intake ставят context mapping layer (все читали про Context Map из Domain Driven Design, так ведь?) В нем поток сырых данных размечается, сопоставляется, привязывается к сущностям и контекстам. И эти ребята просто выставили наружу интерфейс, в котором эксперты у клиента сами могут набросать правила преобразования их собственных сырых данных в их собственные размеченные данные. А если что-то не работает - поменять.
Подход похож на knowledge mapping, например из ассистента маркетолога, только в последнем эксперты у нас еще и сами данные раскладывали 😎
Эти данные потом грузятся в графовую базу данных, формируя готовую модель. А когда приходит время отрабатывать конкретные API запросы, то LLM обходит нужные ветки графа, собирая информацию для ответа. При этом будут использоваться правила и подсказки для данного типа API запроса.
Я говорил, что графовые базы данных обычно ведут команды в ложном направлении. Люди не хотят думать и все пытаются сделать автоматическую нарезалку данных, которая мелко нашинкует все на сущности и отношения. Данный кейс - это исключение. Эксперты вручную определяют правила нарезки данных.
Авторы Data Context Hub партнерятся с BMW и Siemens. Судя по всему, точности и гибкости системы хватает для небольших заводиков.
Кстати, забавно, что на сайте в use cases они еще упоминают embeddings, но в самой документации к продукту ни слова про вектора/chunks/embeddings. Возможно, хотят направить не слишком внимательных конкурентов по ложному следу.
Ваш, @llm_under_hood 🤗