LLM под капотом – Telegram
LLM под капотом
21.1K subscribers
286 photos
7 videos
10 files
549 links
Канал про разработку продуктов на базе LLM/ChatGPT. Выжимка важных новостей и разборы кейсов.
Download Telegram
Все, кто пытается сделать document summarization & retrieval с LlamaIndex, быстро достигают состояния "как это сборище костылей вообще может работать?!" Ибо оно нужные документы не находит, и приходится все доводить напильником.

Авторы LlamaIndex это понимают сами, и продолжают пилить дополнительные индексы [1]. Оно пока сырое, но направление совпадает с тем, что приходится делать на практике. Через несколько месяцев продукт может стать сильно удобнее.


[1] https://medium.com/llamaindex-blog/a-new-document-summary-index-for-llm-powered-qa-systems-9a32ece2f9ec
😁2👍1
У меня радостная новость 🎉. Вчера показали клиенту прототип продукта для продуктовых каталогов. Продукт автоматически заполняет пропущенные поля в описаниях продуктов, а так же находит ошибки.

Клиент - специализированная розничная сеть с годовым оборотом в 100M+ EUR. Они в восторге, хотят себе такую штуку как можно быстрее.

Ранее я разбирал кейс с персональным ассистентом в компании (https://news.1rj.ru/str/llm_under_hood/4). Теперь расскажу, как устроен и этот продукт.

Кейс продукта с LLM/GPT под капотом: заполняет каталоги продуктов и фиксит ошибки. #case

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

Заполнение привлекательных текстовых описаний на базе свойств товара - это отдельная статья расходов. А если в свойствах товара была ошибка, то и описание может понадобиться переписать.

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

Это экономит время и нервы сотрудникам, позволяет иметь актуальный каталог, что положительно сказывается на продажах.

Даже если продукт стоит в месяц как месячная зарплата 2-3 людей (плюс налоги и отчисления), это будет выгоднее, чем держать выделенный штат. Компьютеры не устают, не скучают, могут круглосуточно ползать по каталогу в поисках новых ошибок. А людям можно отдать более интересные задачи.

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

Прототип работает достаточно просто (схема тут - https://news.1rj.ru/str/llm_under_hood/22):

1. Берем исходные продукты из каталога
2. Для каждого продукта ищем аналогичные страницы в интернете, используя search API. Обычно находятся конкурирующие магазины, страницы производителей и просто обзоры
3. Фильтруем мусор на выдаче поисковика (GPT, выбери мне только полезные ссылки для такого продукта)
4. Оставшиеся страницы загружаем при помощи Selenium
5. Достаем все свойства продукта из страниц (GPT, достань мне свойства для этого продукта по вот такой вот схеме)
6. Самое хитрое - просим GPT критически посмотреть на исходные свойства продукта, а также на потенциальных кандидатов, чтобы предложить потенциальные исправления
7. Генерируем отчет со списком исправлений полей продукта. Для каждого исправления есть ссылки на конкретные страницы и документы, откуда были извлечены альтернативные поля.
8. Генерируем новые текстовые описания продукта с учетом исправленной информации, маркетингового посыла компании и аудитории. Заодно и генерируем посты в соц. сеточки.

Пришлось повозиться с шагами 3, 5 и 7. Каталоги не на английском, поэтому из коробки ChatGPT работал так себе. После работы с выборками и добавления few-shot samples, результаты получились вполне хорошие. Шаги 3 и 5 получилось вынести на GPT3.5, седьмой шаг пока на GPT4. Но уже есть представления, как это можно утащить на затюненную локальную модель.


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

С таким подходом можно высылать предложения множеству разных клиентов :)

Ну что, поехали делать такие системы для своих знакомых торговых сетей? 😊

Ссылка на этот кейс и обсуждение: https://news.1rj.ru/str/llm_under_hood/21
🔥253👍1
Схема продукта с LLM под капотом, который исправляет и улучшает каталоги для торговых сетей

Описание кейса: https://news.1rj.ru/str/llm_under_hood/21
🔥71
ЕС и США задумываются о регулировании AI путем лицензирования моделей. Их так сильно беспокоят возможности по вмешательству в выборы, что они могут и закрутить гайки. ЕС уже набросала AI Act, который не особо планирует менять. Другие страны могут последовать, ибо власть терять не очень хочется.

К чему это может привести (если верить наброскам)?

(1) Мощные foundational модели нужно будет лицензировать и тестировать
(2) Нельзя просто так выкладывать модели на Github или просто в Open Source
(3) Мощные модели компании будут придерживать у себя и использовать для обучения мелких fine-tuned моделей, наподобие того, как Vicuna выросла из LLama и диалогов ChatGPT. А мелких специализированных моделей и спрос меньше.
(4) Модели будут распространять как наборы инструкций или LoRA/QLoRA патчи: "достаньте LLaMA 60B модель сами знаете где, а потом примените этот патч и скрипт. Получите хорошую русско-язычную модель, которая может запуститься даже на 3090"
(5) технологии по упаковке и тюнингу моделей в мелкие - будут только улучшаться

Ну и последние новости вполне укладываются в этот тренд:

(1) QLoRA - новый вариант сжатия крупных моделей в 4bit c последующим тюнингом
(2) Google выпустила статью про улучшение диалоговых агентов с людьми. Для этого они обучают специализированную модель - dialog manager.
(3) Meta (facebook) выпустила специализированную модель, которая может распознавать 4000 языков, озвучивать и понимать - 1100 языков. В чатике по спасению языков пошла волна ликования и экспериментов. Хотят тюнить и сжимать модели под конкретные нишевые языки
👍5
GPU у NVidia становятся круче с каждым поколением. Мало им было чипа GH100 (80-94GB GPU с интегрированными 72 ядрами ARM Neoverse v2 и до 420GB вшитой оперативки), так они ещё и DGX кластер под это сделали. 256 чипов вместе и 24TB GPU.

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

И это хорошо, ведь качественные модели можно потом тюнить и сжимать под собственные задачи :)

https://www.anandtech.com/show/18877/nvidia-grace-hopper-has-entered-full-production-announcing-dgx-gh200-ai-supercomputer
🔥2
Две маленькие продуктовые радости сегодня!

Прототип продукта на базе information retrieval помог выиграть клиенту крупный контракт. Там была демонстрация использования GPT/LLM для поиска потенциальных заказов в очень узкой нише. Фактически, скачиваем публичные отчеты компаний, нарезаем в embeddings и задаем очень конкретный вопрос через GPT. Если ответ - "да", то это очень хороший клиент)

Во вторых, сегодня закончили второй information retrieval прототип по кейсу "персональный ассистент в компании". В итоге долгой и нудной доводки индексов пришли к тому, что:
(1) выкинули OpenAI Ada и заменили на SBERT для embeddins + document re-rank. Оно теперь работает локально, быстро и без timeouts
(2) просто так скармливать базу знаний клиента не получилось. Пришлось разбирать ее структурно на косточки, и потом уже индексировать.
(3) LangChain по пути выкинули совсем. Так что embeddings + document re-rank сделан на простом самописном коде. Остался только кусок LlamaIndex для последнего шага answer refinement. Но хочется и его выкинуть нормально переписав, ибо эта часть работает как нестабильный черный ящик.

За исключением этих деталей, продукт снаружи выглядит весьма магически. Этакий Bing на данных компании, или свой ChatGPT с браузером. Если все будет хорошо, скоро покажут клиенту.

Список потенциальных улучшений - гиганский, но на то и прототип в продуктовой разработки, чтобы проявлять максимум лени и делать абсолютно необходимый минимум работ)
🔥121👍1
Ребята из LMSYS выкатили новый бенчмарк языковых моделей.

Лучшая модель - GPT-4 💰
Лучшая модель, которую можно запустить самим - Vicuna-13B, 5 место 🥷
Лучшая Open Source модель - Mosaic-7B-chat, 9 место 🍺
👍3🔥3
Клиенты у меня интересуются чаще всего двумя вопросами:

(1) Когда моя компания сможет запустить мощную LLM локально, чтобы данные не отправлять в сторонний API?
(2) чем нашей компании грозит желание США/ЕС зарегулировать все AI модели по самое «не хочу»?

Со вторым вопросом пока все сложно, а вот мигрировать продукты на локальные модели без потери качества можно будет начинать в 2024 году (если верить бенчмаркам)

Ещё вчера лучшей Open Source LLM моделью была mpt-7b-chat, но с тех пор прошла вечность. Модель Falcon-40B (и 7B) теперь стала Apache 2.0! Её можно использовать без ограничений в коммерческих целях.

По бенчмаркам HuggingFace Falcon уделывает даже LLaMA со всеми файн-тюнами.

Версии сжатые до 4bit запускаются даже на двух 3090/4090.

Погнали проверять, как наши продукты работают на Falcon? :)

#клиентспросил
🔥5👍2
Хочу порекламировать русскоязычный Langchain Developers Chat, русскоязычный. В отличие от большинства каналов и чатов на тему ChatGPT/LLM, он фокусируется не на теории а на практике применения технологий. LangChain, LlamaIndex, embeddings, vector databases итп.

Годные обсуждения.
🔥8
Evolutionary Pressure
(или про то, как модельки будут становится маленькими и специализированными)

На прошлой неделе я опубликовал newsletter про бесполезность грядущих законопроектов ЕС в области AI. В LinkedIn сразу же набежали адвокаты и начали пинать меня на тему, что закон трактовать должны только эксперты)

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

Большие мощные LLM модели хороши, когда только начинаешь работать над продуктом, а как оно должно работать - не понятно. Но по мере разработки промпты становятся все более специализированными и точными (я уже приводил пример схемы такого продукта). И становится понятно, что отдельные части pipeline можно уже мигрировать на специализированные модельки. Их можно тестировать лучше, дообучать и запускать локально.

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

Еще одна причина, по которой все будет двигаться в сторону мелких моделей - вычислительные ресурсы. GPU сейчас никому не хватает, начиная от OpenAI (они сами сказали) до маленьких компаний. Поэтому люди и запихивают модели на все подряд. Мелкие модели запихиваются лучше крупных.

В итоге все выглядит так, что эволюционное будущее за мелкими специализированными модельками, которые можно дообучать и запускать локально.
🔥4👍1
Лучшая модель, которую можно запустить самим, это нынче арабский Falcon40B.

HuggungFace запилили очень подробную статью про эту модель, как ее тюнить, готовить и использовать.

Кто-нибудь уже пробовал ее использовать в проектах?
Реальный диалог вчера, про то, как GPT-4 спасает время админов от всяких ненужных мелочей.
.
ML Engineer сисадмину: Можешь помочь добавить web sockets на этот вот nginx сервер?
Сисадмин: Не проблема, давай созвонимся в обед
ML Engineer: все нормально. Я уже скормил конфиг GPT-4, попросил его добавить советы туда. Он ответил, и все заработало 😂
😁2👍1
Microsoft Azure приостановила выдачу GPT-4 😢

Вот такое сообщение от Microsoft мне сейчас переслал клиент:

Please note that we are currently paused on onboarding new GPT-4 customers due to the high demand and do not have an estimated time for when we will onboard new customers.

Это значит, что запускать новые проекты будет сложнее и дольше. Из провайдеров GPT-4 остался только OpenAI, а он постоянно страдает от нагрузки.

Что можно сделать, если продукты запускать все равно надо?

(1) Податься на Azure OpenAI GPT-4 про запас.
(2) Податься в Anthropic, а заодно и в Amazon Bedrock, чтобы иметь доступ к Claude про запас (хуже GPT-4, но лучше GPT-3.5 turbo).
(3) Морально готовиться к тому, что GPU ресурсов может пока не очень хватать. Отлаживать миграцию на локальные модельки послабее. Тем более, что там ситуация с каждым днем получше.
😱2😢1
Пишу очередной newsletter про то, что сейчас GPU у крупных компаний мало, и надо искать альтернативы. А тем временем Айгиз присылает результаты прогона нашего бенчмарка на первых моделях из ggml семейства. И это 🤦

Альтернативные модели хороши, но с ними надо работать иначе, чем с самыми популярными instruct. Как вы с ними справляетесь?
👍1
Появилась многообещающая модель Lazarus-30B. Она сразу прыгнула на второе место HuggingFace Leaderboard.

Под капотом - смесь патчей (LoRA), которые надергали с разных моделей и слили вместе. Оказывается, и так можно 🤯

Это пока самая многообещающая открытая модель в наших продуктовых бенчмарках.
👍4🔥4🤯1
Наткнулся на интересный феномен. Wizard-Vicuna-13B без guardrails в HF leaderboard на 12 позиций выше версии с цензурой.

Интересно посмотреть, какой будет рейтинг у WizardLM-Uncensored-Falcon-40b
😁4👍2
Потихоньку продолжаем разрабатывать продуктовые бенчмарки для LLM моделей .

Зачем?

(1) разбираться в растущем зоопарке моделей и их вариаций с практической точки зрения
(2) точно знать, когда какой-то продукт можно пытаться запускать локально, и на какой модели это лучше делать
(3) систематизировать знания по работе с разными моделями и промптами.

На сегодня это все выглядит вот так. Красного сильно больше, чем зеленого, но все промпты были пока заточены только под InstructGPT модели. Придется их переписывать и на поддержку базовых моделей :)
🔥3
Кейс продукта с LLM под капотом: Ассистент маркетолога в компании #aicase

Оглавление:
(1) описание продукта (этот пост)
(2) секреты реализации
(3) архитектура проекта
(4) feedback клента и дальнейшие улучшения
(5) методичка по сбору базы знаний для ассистента
(6) как добавить креативности и разнообразия в тексты ассистента
(7) 🔥 Вторая версия со свободным написанием статей + пример и отзыв клиента

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

🤔 Проблема. Клиент - это небольшая компания с лучшей в мире продукцией для очень специфичной ниши. При этом их практически "не видно" в интернете. Сайт скуден (его переделывают третий год), маркетинговых компаний в соц-сеточках не ведется. Хочется заслуженной мировой славы, но не хватает людей и сил.

🚧 Задача - облегчить и ускорить работу маркетингового отдела, чтобы они могли доступно и понятно рассказать о своих продуктах всем тем, чьи проблемы он может решить.

Решение - ассистент маркетолога в компании, который встраивается в процессы отдела маркетинга.

Например, когда надо работать над заполнением сайта статьями про продукты: ассистент вытаскивает из базы знаний необходимую информацию и набрасывает возможные идеи статьей для выбранного продукта. Каждая идея фокусируется на:
- одной аудитории (чьи проблемы решаем?)
- одной проблеме
- 2-3 уникальных фишках продукта (USP)
- решении проблемы нашим продуктом
- ощущениях / эмоциях после решения проблем
- call to action

Человек потом выбирает из пачки идей наиболее понравившуюся. Галлюцинации отсеиваются на этом этапе (хотя их особо не замечал с таким подходом)

Дальше ассистент набрасывает несколько черновиков статьей на основе этой идеи. Он пользуется все той же базой знаний, плюс конкретным описанием структуры статьи. Прямо по рецептам Майи Богдановой :) То есть без всякого впаривания и пустого хайпа. Спокойно и с достоинством. Придерживаемся brand identity и ценностей компании.

Человек просматривает черновики, выбирает наиболее понравившийся и при желании допиливает. Просмотрев первые черновики маркетологи сказали: "the first drafts turned out well and can be read very fluently"

Процесс можно повторять, пока не будет по хорошей статье на каждый продукт для каждой аудитории. А потом еще пройтись по всем каналам для кампаний.

Про реализацию кейса 👉 тут 👈

---
Кейс продукта c LLM под капотом из канала https://news.1rj.ru/str/llm_under_hood.
🔥14👍74