Канал про разработку продуктов на базе LLM/ChatGPT. Выжимка важных новостей и разборы кейсов.
#weekend пост про кулинарию, multi-hop и fine-tuning
Надо было мне найти видео на YouTube. Про брутальных Норвежских парней, которые готовят еду. Запрос звучал так:
Help me to find name of YouTube series where cook makes meals in a brutal Norwegian style. With a lot of smashing
ChatGPT полез в интернет с запросом и нашел вариант совпадающий буквально: шведский канал Brutal Kokk - Brutal Cooking). Это было то, что я просил, но то, что я хотел.
Поэтому я переключил его с retrieval режима на ассоциативный поиск:
Wrong. Don’t browse, just make your own guess
И ChatGPT сразу же попал в точку! Это был норвежский канал "Regular Ordinary Swedish Meal Time". Не Норвегия, а Швеция. Про брутальность в названии канала ни слова. Но как они готовят морковный пирог!
Подход удобен в ежедневной работе с ChatGPT, но его можно и абстрагировать на продукты с LLM под капотом в целом.
Если нужно оперировать данными на уровне ассоциаций, тогда имеет смысл смотреть в fine-tuning моделей по вашим данным. Буквально тексты цитировать модель не сможет (для этого нужен retrieval), но у нее может появиться возможность работать со смыслами и ассоциациями. Такой вот дополнительный движок для multi-hop поиска и reasoning.
Ваш, @llm_under_hood 🤗
Сегодня прошел вебинар AI Coding Assistants: Как программисту эффективно использовать AI
Огромное спасибо всем за участие, вопросы и обсуждения!
В комментариях к этому посту - конспекты того, что участники семинара вынесли из него для себя: новые вдохновляющие идеи и практические приемы. И это очень круто! 🤗
Основной недостаток - не хватило времени на вторую практическую часть. Поэтому в декабре я проведу этот вебинар бесплатно еще раз, в расширенном формате. Прочитать про вебинар и записаться можно по старой форме.
Кстати, старые записи - действительны. Тем, кто участвовал, но хочет пройти еще раз - можно записаться заново. Отбирать, как обычно, будет ChatGPT.
Ваш, @llm_under_hood 🤗
#клиентспросил Кейс про неудобный Excel и 5 дней работы
Кейс очень простой, но он повторяется настолько часто, что заслуживает упоминания.
Проблема. У клиентов есть данные в виде кучи больших Excel файлов или sql дампов. Иногда данные прямо там и живут, а иногда в таком виде их присылают. Работать с такими данными практически невозможно.
Бизнес обращается с просьбой привести это в удобоваримый формат - причесать имена, распарсить колонки. Так, чтобы было удобно дальше анализировать. Для них это настолько важно, что готовы выделить до 5 дней работы! Оно все равно потом окупится.
Решение. Делаем прямо как в кейсе про товары, которые невозможно найти.
Сначала импортируем данные. Если есть sql дампы, то скармливаем схему в ChatGPT и просим привести к формату SQlite. Если есть Excel, то конвертируем в csv формат и загружаем прямо в БД пот помощи pd.read_csv(...).to_sql(...)
. Тут тоже ChatGPT может написать код.
Вторым шагом показываем схему ChatGPT и просим почистить названия таблиц и колонок для удобства работы. Если данные импортировались криво, на этом шаге можно поправить.
Третьим шагом уже можно строить графики и отчеты. Либо напрямую в ChatGPT Data Analysis, либо, если данные нельза показывать опосредованно.
При использовании ChatGPT весь процесс занимает несколько часов (для пары десятков Excel таблиц общим размером в 40MB).
Кстати, если нельзя использовать ChatGPT совсем, то можно глянуть на локальный Mistral 7B OpenChat-3.5, который уже очень хорошо справляется с задачками про CSV и SQL (см табличку в бенчмарке)
Ваш, @llm_under_hood 🤗
PS: Другие посты из серии #клиентспросил:
- Персональный ассистент в компании
- Автоматическое исправление ошибок в каталогах продуктов
- Кейс с ChatGPT про 10.000 € в месяц
Ух, как все интересно становится. Читали последние новости про OpenAI?
Сэма Альтмана внезапно и резко уволил совет директоров прямо на созвоне. Грега Брокмана, в квартире которого начинался OpenAI 8 лет назад, не уволили, а просто выгнали из совета директоров. Но когда он узнал про это, ушел сам. Потом еще ушли три старших исследователя из OpenAI - Jakub Pachocki, director of research; Aleksander Madry, head of AI risk team, and Szymon Sidor.
Что происходит? Похоже, что думеры и ученые в совете ("ааа, AI нас всех погубит") решили перетянуть одеяло на себя, но немного не подумали.
И вот теперь начинается самое классное. Во-первых, куда все ушедшие собрались идти, что они собрались делать? Эти ведь сделают! А когда сделают, сколько людей и бизнесов начнут переезжать!
А про возможность переезда начинают уже спрашивать прямо сейчас.
В общем, работы в области GPT/LLM всем внезапно и много привалило.
Ваш, @llm_under_hood 🤗
#Ката 3 по прокачке Data Scientist-а верхом на ChatGPT-4
Эксперимент по обучения человека с нуля до матерого DS/ML практика пока в процессе.
Питона с юпитером ученик уже не боится, поэтому сделал вчера ему третью кату. Для практического опыта завел реальную виртуалку, куда покидал разных БД, только одна из которых с нужными данными. Да и в тех - небольшое мессиво и нюансы. 😈
Задачка - на скриншоте.
Если кому тоже хочется поучиться на практике, могу выложить лайтовую версию задачки в виде SQLite. Данные те же, но без возни с mySQL и обманок с второстепенными БД.
Предыстория:
Kata 1: Задача / решение
Kata 2: Задача / решение
Ваш, @llm_under_hood 🤗
Помните, я собирал заявки на интерактивный вебинар про использование AI Coding Assistants?
Первоначально планировал его провести в конце октября, но навалилось проектов, и мои estimates пошли по бороде 😆
И вот наконец процесс выбора участников запущен! GPT-4 Turbo проходит по заявкам и пытается определить, кому вебинар будет полезнее всего.
Дальше: я пришлю письма с инвайтом в группу участников. Будем выбирать слот для встречи.
Ваш, @llm_under_hood 🤗
Кто слышал про Phind?
Вроде это какой-то самодельный движок вопросов-ответов на базе ChatGPT.
Говорят, что во время сегодняшних проблем с ChatGPT у него поехала крыша, и он начал изливать чужие вопросы/ответы всем подряд. Вот пример ссылки: https://www.phind.com/search?cache=nsa0xrak9gzn6yxwczxnqsck
Там первый вопрос про то, как жить без ChatGPT? А потом почему-то идут другие вопросы вроде adult TV.
Это пример того, почему серьезные компании относятся со скепсисом к свежим оберткам на базе ChatGPT. Демо - хорошее, но чуть что, и все сыплется.
Ваш, @llm_under_hood 🤗
Заметили ли вы, что в документации OpenAI теперь все чаще упоминается Javascript/Node.js? Я вот только сейчас обратил внимание.
По-моему, OpenAI хочет стать еще удобнее для тех, кто создает разные продукты (с LLM под капотом 😁). А интерфейс у современных продуктов, обычно как раз на базе web технологий с JS.
Ваш, @llm_under_hood 🤗
Update: обновил бенчмарк (см картинку выше).
Там часть тестов в области Code посыпалась, т.к. ChatGPT 4 Turbo стал красиво выделять куски SQL при помощи '''sql
👨🎨
Тут было два варианта - либо писать научную работу про деградацию ChatGPT, либо править бенчмарк.
GPT 4 Turbo все еще глупее своих предшественников, но уже не так сильно. Плюс это preview версия, все еще может улучшиться. А стоимость уже и так хороша!
Ваш, @llm_under_hood 🤗
Краткие выводы
- OpenAI превращается в AWS. Они потихоньку начинают строить сервисы вверх и прибирать в свои загребущие лапки интересные бизнес-кейсы. Vendor lock-in крепчает.
- Vision модель сильно дешевле, чем я ожидал. Картинка 768*768 будет стоить всего лишь $0.00765.
- Стартапы должны плакать, что их заменяет OpenAI верно? Про неминуемую гибель ChatWithPDF, FlowChai и прочих стартапов вы завтра прочитаете еще не раз. А на самом деле они радуются, т.к. у них только что выросла маржа из-за удешевления GPT API, и работать в своей нише стало выгоднее.
Конец света откладывается. Продолжаем работать!
Ваш, @llm_under_hood 🤗
Выжимка новостей OpenAI про GPT-4 Turbo 🎉
- Новая модель - GPT-4 Turbo. Умнее, свежее и в 2-3 раза дешевле GPT-4. Ищите gpt-4-1106-preview в своем API уже сейчас.
- Контекст аж 128k tokens, что больше 100k Claude. Говорят, что побороли забывчивость.
- GPT 3.5 получила апдейт (gpt-3.5-turbo-1106) и тоже стала заметно умнее.
- Добавили ассистентов - кастомные инструкции, дополнительные знания и любая комбинация скиллов. Позже откроют GPT Store.
- Ассистенты могут использовать Code Interpreter (Python), Retrieval по своим документам, function calling (внешние сервисы)! Можно поиграть в assistant playground.
- Добавилась мультимодальная модель ChatGPT, которая умеет картинки по API (gpt-4-vision-preview). Стоимость - попиксельно. Все детали на странице с ценами.
- И вообще цены снижаются на множество позиций.
- ChatGPT UI превращается прямо в центр управления агентами. Можно конструировать своих агентов, добавлять данные и возможности вызывать сторонние сервисы. А потом - делиться агентами (см GPT Store выше).
- GPT-4 можно теперь файн-тюнить.
Прочитать больше в официальном объявлении.
Время обновлять бенчмарки? ;)
Ваш, @llm_under_hood 🤗
Почему я не пишу ни слова про новую модель Grok от Twitter?
Пока это относительно слабая и закрытая модель. Про текущие версии скоро забудут.
Ребята из OpenChat уже померялись (картинка с их репы), и пока доступная все 7B модель смотрится очень выигрышно.
В следующем году можно смело начинать переносить проекты с ChatGPT на локальные модели!
Ваш, @llm_under_hood 🤗
В лабах появилось описание нашего LLM бенчмарка, с примерами и описанием методологии. Смотреть тут.
Материал аналогичен старой PDF методичке, но поддерживается в актуальном состоянии.
(Лабы доступны всем подписчикам бесплатной рассылки ML Under the Hood)
Ваш, @llm_under_hood 🤗
Если ChatGPT надавить на совесть, то он начинает отвечать лучше. Работает с другими LLM-ками тоже. 🥺
Никто точно не знает почему оно работает так, но цифры врать не будут. Чтобы обеспечить дополнительные 5% точности нужно похвалить модель и сказать, что ее ответ очень важен для карьеры.
Оригинальная статья, недавний обзор, обсуждение на HN.
Ваш, @llm_under_hood 🤗
Вышла новая модель OpenChat 7B. По оценкам авторов она достигает качества мартовской ChatGPT 🚀
OpenChat 7B сделана на базе Mistral 7B, но в отличие от последнего проходит "тест на банан" (via @konstantinmastak): Я на кухне, положил тарелку на банан. Затем я отнес тарелку в спальню. Где сейчас банан?
Ну и по-русски разговаривает только так 🔥
Ссылки: демка, github, HuggingFace, paper.
Ваш, @llm_under_hood 🤗
#клиентспросил Кейс про агента, который программирует себя.
У меня есть три любимых клиента, которые упорно хотят делать агентов и умные продукты. А я все сопротивляюсь и говорю, что "ну не будет эта фигня со свободой воли стабильно работать". 🤪
Но вода камень точит. В последних версиях продуктов c LLM под капотом задачи практически целиком формулируются самой моделью. Просто у нее написание больших промптов получается лучше.
На картинке в комментариях изображена упрощенная схема системы по генерации лидов, в последней версии. Той самой, про которую клиент в понедельник оставил отзыв c пятью восклицательными знаками и смайликом.
Вот как она работает.
На самых первых этапах работы система “знакомится” с содержанием базы знаний (тысячи PDF файлов размера от 10 до 200 мегабайт) и сочиняет пояснения и инструкции для дальнейших промптов - про специфику запроса и про специфику языка документов.
На втором этапе система составляет запрос к поисковому движку. Она отталкивается от запроса человека, но транслирует его в язык документов и разворачивает на основе ранее написанных инструкций. А потом просматривает результаты и тюнит поисковый запрос, чтобы там было меньше мусора.
На финальных этапах система собирает в кучку найденные куски текста и формулирует ответ, стараясь по возможности цитировать релевантные фрагменты. При этом все еще используются ранее написанные инструкции.
После того, как я стал доверять моделям сочинять инструкции и пояснения для себя - работать стало проще, а продукты стали гибче реагировать на хотелки клиентов. Но первая пара предложений в каждом промпте всегда составлена мной. Чтобы не забывали, кто тут главный!
Ваш, @llm_under_hood 🤗
PS: Другие посты из серии #клиентспросил:
- зачем нужно распознавание картинок в ChatGPT?
- Ринат, клиент хочет работать с AI продуктом конкурента. Что делать?
- словарик с краткими описаниями самых важных терминов (labs)
Парадокс ChatGPT 🤔
Почему новички (джуниоры) используют ChatGPT сильно больше и лучше, чем люди опытные?
Хотя у людей с опытом отдача от ChatGPT бы была в разы больше.
Ваш, @llm_under_hood 🤗
Sam Altman уходит в Microsoft, где он возглавит новый исследовательский отдел AI, как написал Satya Nadella. Его товарищи идут с ним. Microsoft обещает предоставить ресурсы и двигаться быстро.
А новый CEO в OpenAI - это бывший глава Twitch, который продал его Амазону за 1B, и достаточно скучал, чтобы согласиться на такое предложение. Он еще раньше говорил, что пора замедлиться.
По-моему, это идеальный вариант. Сэму не придется начинать с нуля, а OpenAI сможет спокойно начать оттормаживаться.
Разве что теперь придется переключать все endpoints на Azure API 😂
Ваш, @llm_under_hood 🤗
PS: Не забываем, что основные мощности у OpenAI предоставлены Microsoft согласно контракту. И если MS посчитает, что контракт не выполняется, то она может просто щелкнуть выключателем.
#клиентспросил Кейс про товары, которые невозможно найти.
Недавно сдали новый кейс. С сюжетным поворотом и двумя языковыми моделями. #case
Проблема. У клиента магазин на сорок тысяч продуктовых позиций, а поиск там хромает. Пользователи не находят товары на свои запросы и уходят с сайта. Выручка страдает.
Отдел маркетинга пытается исправлять ситуацию дописыванием ключевых слов вручную на 10k активных позиций, но не успевает. Vector search пока не могут по ряду причин. Они попросили помочь.
Решение. Отправили им выгрузку с ключевыми фразами на каждый из их активных продуктов. Ключевые фразы, по 5-7 на продукт, идентифицируют разные сценарии, в которых человеку понадобится именно этот продукт.
Если загрузить эти слова как дополнительный индекс в их систему поиска, то запрос про “дырку на 8мм” теперь покажет дрели и сверла на 8мм. Это лучшее, что тут можно было предложить без смены системы поиска.
Под капотом
Клиент прислал дамп из продуктовой БД в виде SQL queries на 250 мегабайт. Дамп в формате Oracle, а сами таблицы и колонки на иностранном языке (не английский), да еще и нормализованы в 8 таблиц с триггерами. Продуктовые описания, естественно, тоже не на английском.
Решение было в два захода
Сначала конвертировали эти дампы в маленькую и читаемую SQLite БД. ChatGPT-4 написал скрипт, который бы конвертировал абстрактные Oracle SQL Create/Insert statements (скрипты для создния с нуля БД Oracle) в аналогичные для SQLite.
А потом попросили ChatGPT-4 еще и переименовать все таблицы и колонки из странного наречия в удобоваримый английский.
Получилась удобная и понятная БД, которую можно как смотреть локально, так и вызывать из скриптов.
На этом этапе ChatGPT-4 видел схему базы данных (что не являлось секретом), но не видел самих данных.
Потом просто прогнали по каждому продукту скрипт, который собирал промпт с полным описанием продукта и просил языковую модель сформулировать ключевые слова для поиска. Использовали Mistral 7B OpenChat-3.5, которая на сервере с NVidia 3090 отрабатывала по 15 продуктов в секунду.
Результаты сравнили на небольшой выборке продуктов вручную с GPT-4, принципиальной разницы в качестве не было.
Клиенту не было важно использовать локальные модели, но благодаря им получилось быстро получить результаты, не беспокоиться о бюджете, не тратить время на борьбу с сетевыми ошибками и rate limits (что бывает с ChatGPT).
Оценка Mistral 7B OpenChat-3.5 в данной задаче: 5 из 5. Будем использовать снова!
Ваш, @llm_under_hood 🤗
---
PS: Другие посты из серии #клиентспросил:
- Кейс с ChatGPT про 10.000 € в месяц
- Нишевый lead generator для B2B продаж
- Платформа для автоматизации бизнес-процессов в компании
Приглашение на вебинар ушло на почту человекам, привлечь которых настоятельно и настойчиво рекомендовал AI.
Проверяем почту и папку "Спам".
Ваш, @llm_under_hood 🤗
Chat GPT-4 Turbo сильно лучше понимает языки!
(Когда не лежит под нагрузкой, как сейчас 😂)
Коллеги из группы "Языки разные - код один" обратили внимание, что ChatGPT-4 Turbo сильно лучше понимает Башкирский язык и культуру, нежели предыдущие модели. Разница прямо как день и ночь.
Это очень крутые новости! Вполне возможно, что русский и другие языки тоже стали работать сильно лучше.
Мы неспеша потестируем разные языки и версии ChatGPT моделей, оценим их вручную экспертами, а потом выложим краткий отчет сюда.
Ваш, @llm_under_hood 🤗
ChatGPT UI трудолюбив. Особенно, в режиме Advanced Data Analytics и самокопания.
Ему можно выдавать задачи и уходить продуктивно пить кофе. Через пару минут возвращаться, давать наводящие вопросы и снова запускать процесс.
Качество самостоятельной работы уже достаточно хорошо и, самое главное, стабильно хорошо.
Например сейчас я так конвертирую одну упоротую Oracle DB в SQLite.
Но больше одной сессии держать не получится. А хочется одновременно 3-5 рабочих процессов. Чтобы ещё продуктивнее кофе было.
У кого ещё такая проблема? Как решаете?
Ваш, @llm_under_hood 🤗
Продолжаем эксперимент по прокачке ученика с нуля до приносящего деньги ML/DS инженера за минимальное время (*)
Он вчера прислал свое решение второй каты, поэтому я выложу его и свое решение в комментарии.
Самое классное в том, что:
(1) Питон по-прежнему для него чужой. Когда он встретил TypeError
в середине когда из ChatGPT, то сначала не знал, что делать 😂 (Правильный ответ - попросить ChatGPT пофиксить)
(2) он в итоге смог получить правильный ответ, причем сделал это вручную, на ChatGPT 3.5. Даже без Advanced Data Analytics!
Решения - в комментариях. Я читил и использовал ADA, чтобы получить ответ за два вопроса.
Следующая ката уже будет сложнее. SQLite в реальности аналитику никто не даст. Данные надо выковыривать из всяких MS SQL, mySQL, Kafka, ручных Excel-выгрузок или страшно запутанных BigQuery таблиц.
Ваш, @llm_under_hood 🤗
(*) Приносящий деньги инженер - в данном случае это тот, кого можно смело отправить в Data Science/ML проект в современной компании. Чтобы он мог решить типовую задачу вроде "а построй мне отчет по продукту X. Я хочу видеть тренды продаж, складских остатков, динамику типов жалоб и предложения по оптимизации всего этого".
И он сможет самостоятельно разобраться в куче данных, подключиться куда надо и построить отчет, который нужен директорам.
Бенчмарки новых GPT-4 Turbo и GPT-3.5!
Новые версии моделей стали дешевле 🤑, свежее 😃 и глупее 🤪 своих предыдущих версий.
Как читать бенчмарк? Колонки оценивают модели в категориях:
- Code - понимание, разбор и написание кода
- CRM - работа с описаниями и свойставами товаров на маркетплейсах
- Docs - работа с документами, их частями и базами знаний
- Integrate - интеграция со сторонними API, форматами данных и БД
- Marketing - чтение, оценка и написание маркетинговых текстов
- Reason - сложные задачки в рамках контекста.
- Cost - примерная стоимость работы (пропорционально бенчмарку). Для локальных моделей - считаем стоимость аренды необходимого GPU в популярном облаке.
- Speed - сколько запросов в секунду, с batch_size=1 при запуске с HF transformers.
Бенчмарк - закрытый, основан на тестах и промптах из рабочих продуктов и сервисов.
Более детальное описание и примеры evals есть в лабах: Trustbit LLM Benchmark (лабы открыты подписчикам бесплатной рассылки ML Under the Hood)
Ваш, @llm_under_hood 🤗
Хотел быстренько побенчмаркать ChatGPT-4 Turbo, но наткнулся на недетские лимиты - Limit: 100 / day
Поэтому вот вам пока только сравнительный бенчмарк новой GPT-3.5 Turbo (gpt-3.5-turbo-1106).
Она стала быстрее, дешевле и немного глупее прошлой версии.
Ваш, @llm_under_hood 🤗
Сплетни оказались правдой ;)
https://openai.com/pricing
Хотите cплетню про ChatGPT фичи от OpenAI?
В Reddit кто-то случайно заметил новые цены от OpenAI. Изменение быстро откатили обратно. Но если оно верно, то у нас появятся:
- AssistantsAPI (retrieval, code interpreter)
- GPT4-Turbo (мощнее и свежее текущего) - мультимодальное API
- hosted Text-to-speech
Точнее узнаем чуть позже.
Что из этого вам бы хотелось больше всего?
Ваш, @llm_under_hood 🤗
#клиентспросил, и я добавил в ML Product Labs словарик с краткими описаниями самых важных терминов. Он лежит тут
Какие еще термины вы бы хотели там увидеть?
(Лабы доступны всем подписчикам бесплатной рассылки ML Under the Hood)
Ваш, @llm_under_hood 🤗
OpenChat 7B действительно догоняет GPT-3.5 v1-0301 на наших LLM бенчмарках!
И это очень круто, что такая маленькая модель догнала и сравнялась со старой и младшей моделью от ChatGPT. Лиха беда начало. Ведь тут открытая лицензия.
Где-то в уголке кусает локти LLama 70B 🤣
Ваш, @llm_under_hood 🤗
Продолжаем быстро прокачивать человека с нуля до опытного Data Science / ML инженера (с LLM под рукой 😎). Первая ката.
Ката 2: Анализ трендов
Проанализируйте БД и дайте ответ - какие продукты будут наиболее прибыльными в следующем году? Что их объединяет?
Чем больше в решении используется ChatGPT, тем лучше. Идеальный вариант, если ChatGPT сделает всю работу от начала до конца.
Ваш, @llm_under_hood 🤗