Live с Practical ML🚀
Ходили послушать и поддержать Антона Семенистого, выступавшего с докладом про DL CTR модели в поиске. Более того, у Антона сегодня день рождения.
Антон, поздравляем тебя и желаем плодотворной творческой работы и успехов!🎉
Ходили послушать и поддержать Антона Семенистого, выступавшего с докладом про DL CTR модели в поиске. Более того, у Антона сегодня день рождения.
Антон, поздравляем тебя и желаем плодотворной творческой работы и успехов!
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥29🎉5❤3👍1🤪1
Привет! Я Сергей Кляхандлер, техлид в команде LLM Авито. Мы с коллегами продолжаем разрабатывать мультимодальную модель для улучшения поисковой выдачи на платформе. В прошлом году научили её создавать автоописания для объявлений, чтобы упростить жизнь продавцам.
Когда продавец загружал фотографии на сервис, модель анализировала главное фото и предлагала шаблон описания. Оставалось только добавить размеры и немного отредактировать текст при желании. В этом году мы чуть изменили подход и добавили дополнительную функцию.
Как теперь обстоят дела с автоописанием
1️⃣ Научили модель анализировать все фото из объявления, а не только одно. Теперь она предлагает более полные и точные тексты.
2️⃣ Избавились от излишней «сухости» в описаниях. Они стали живее и понятнее, при этом информативность осталась на прежнем высоком уровне.
🎉 Результат: +5.7% к использованию сервиса, а продавцы на 10.8% чаще получают подходящий текст с первого раза.
Что мы придумали ещё
Ещё один проект инициировала команда Поиска. Вместе с командой LLM, в нём участвовала инженер Камила Алибаева и тимлид — Илья Валяев.
Мы переиспользовали подход, чтобы решить другую проблему — неполную индексацию объявлений. Некоторые продавцы описывают не все характеристики товара или используют непопулярные слова-синонимы.
🎉 Результат: покупатели стали видеть на 22% больше релевантных объявлений, а количество уникальных пар «покупатель-продавец» выросло на 0.8%.
Подробный разбор с техническими деталями и цифрами читайте в моей статье на Хабре.
А если у вас есть идеи, что ещё можно улучшить — welcome в комментарии! 👇
Когда продавец загружал фотографии на сервис, модель анализировала главное фото и предлагала шаблон описания. Оставалось только добавить размеры и немного отредактировать текст при желании. В этом году мы чуть изменили подход и добавили дополнительную функцию.
Как теперь обстоят дела с автоописанием
1️⃣ Научили модель анализировать все фото из объявления, а не только одно. Теперь она предлагает более полные и точные тексты.
2️⃣ Избавились от излишней «сухости» в описаниях. Они стали живее и понятнее, при этом информативность осталась на прежнем высоком уровне.
🎉 Результат: +5.7% к использованию сервиса, а продавцы на 10.8% чаще получают подходящий текст с первого раза.
Что мы придумали ещё
Ещё один проект инициировала команда Поиска. Вместе с командой LLM, в нём участвовала инженер Камила Алибаева и тимлид — Илья Валяев.
Мы переиспользовали подход, чтобы решить другую проблему — неполную индексацию объявлений. Некоторые продавцы описывают не все характеристики товара или используют непопулярные слова-синонимы.
Например, куртку цвета хаки описывают как зелёную. В итоге покупатель, который ищет куртку хаки, это объявление не видит, хотя оно подходит.
Теперь наша модель анализирует главное фото и генерирует дополнительные ключевые слова, которые не указал продавец. Эти слова добавляются в поисковый индекс сервиса, а наш покупатель, который ищет куртку хаки, теперь увидит объявление и с зелёной курткой тоже.
🎉 Результат: покупатели стали видеть на 22% больше релевантных объявлений, а количество уникальных пар «покупатель-продавец» выросло на 0.8%.
Подробный разбор с техническими деталями и цифрами читайте в моей статье на Хабре.
А если у вас есть идеи, что ещё можно улучшить — welcome в комментарии! 👇
🔥20👍6
👋 Всем привет! DataFest давно прошёл, а мы ничего не показали! Исправляемся. Отобрали 10 докладов и оставили ссылки на них в одном месте, чтобы вам не искать. Читайте описания и выбирайте интересные выступления.
Вот что можно посмотреть:
👉 Какие LLM уже разработали наши инженеры.
👉 Как мы интегрируем нейросети в продукты и рабочие процессы.
👉 Как применяем ML.
👉 Как стажируются и растут DS-инженеры в Авито.
👉 Бонус: открытый диалог мастеров по Kaggle о том, какие мифы существуют вокруг соревновательного ML.
Заходите в статью и выбирайте интересные доклады
Приятного просмотра 🙂
Вот что можно посмотреть:
👉 Какие LLM уже разработали наши инженеры.
👉 Как мы интегрируем нейросети в продукты и рабочие процессы.
👉 Как применяем ML.
👉 Как стажируются и растут DS-инженеры в Авито.
👉 Бонус: открытый диалог мастеров по Kaggle о том, какие мифы существуют вокруг соревновательного ML.
Заходите в статью и выбирайте интересные доклады
Приятного просмотра 🙂
🔥12👍5🤝1
👀 На горизонте видна возможность интересной работы 👀
Если вы DS-инженер уровня middle+ и хотите работать в бигтехе — то приглашаем на осенний Weekend Offer в Авито. Сможете пройти все HR-этапы в ускоренном режиме и получите возможность дойти до оффера.
Что получите, если придёте на WO:
✔️ Обратную связь от команд сразу после собеседования.
✔️ Вероятность оффера через два дня после первого интервью.
✔️ Возможность попробовать себя в разных командах.
Что мы ждём от участников:
📌 Не менее трёх лет опыта в Data Science.
📌 Стек — NLP или классический ML.
Почему у нас классно:
Авито — большой продукт, которым пользуется каждый третий житель России. У нас развитая инфраструктура для разработки и обучения LLM, современные технические решения и, конечно, все айтишные плюшки: мощное железо, отличный офис или удалёнка, дополнительные дни отпуска.
→ Регистрируйтесь на мероприятие и отправляйте свои анкеты до 10 октября
Если вы DS-инженер уровня middle+ и хотите работать в бигтехе — то приглашаем на осенний Weekend Offer в Авито. Сможете пройти все HR-этапы в ускоренном режиме и получите возможность дойти до оффера.
Что получите, если придёте на WO:
✔️ Обратную связь от команд сразу после собеседования.
✔️ Вероятность оффера через два дня после первого интервью.
✔️ Возможность попробовать себя в разных командах.
Что мы ждём от участников:
📌 Не менее трёх лет опыта в Data Science.
📌 Стек — NLP или классический ML.
Почему у нас классно:
Авито — большой продукт, которым пользуется каждый третий житель России. У нас развитая инфраструктура для разработки и обучения LLM, современные технические решения и, конечно, все айтишные плюшки: мощное железо, отличный офис или удалёнка, дополнительные дни отпуска.
→ Регистрируйтесь на мероприятие и отправляйте свои анкеты до 10 октября
👍11✍7👀1
Всем привет! Меня зовут Алина, я DS Team Lead команды Auction Efficiency. В посте расскажу, почему хожу на профильные конференции, но сначала немного про мою команду 😇
В Авито продавцы платят за разные целевые действия: клики, сделки, звонки. Мы также хотим учитывать этот потенциал за оплату разных действий в поиске и рекомендациях — для этого рассчитываем монетизационный фактор. За его качество наша команда и отвечает.
Для оценки этого фактора мы используем ML-модели предсказаний целевых действий. Сейчас это catboost, но мы активно смотрим в сторону DL-моделей. И чтобы понимать, какие подходы есть сейчас и как они работают, мы не только читаем статьи, но и ходим на конференции.
Конференции — это возможность услышать идеи для своих задач: как на презентациях, так и в личных беседах.
Ещё, когда я слушаю об успехах, неудачах и сложностях других специалистов — это помогает мне чувствовать себя спокойнее в работе. Приятно, что не мы одни сталкиваемся с какими-то проблемами.
На конференции можно ходить, чтобы поддерживать коллег. Выступать всегда немного волнительно, особенно в первый раз. Поэтому приятно, когда в зале есть знакомые лица. Например, мы недавно ходили на Practical ML — поддерживали Антона Семенистого. Он рассказывал про DL CTR.
Ещё на таких мероприятиях можно в неформальной обстановке наладить контакт, а потом узнать подробнее про устройство бизнеса и команды. Например, на Practical ML мы слушали доклад про модель Argus, которая актуальна и для Авито, и, конечно, поболтали с ребятами из других компаний.
Ещё я как-то выигрывала два промокода в Лавку, управляя птичкой, а потом узнала, как команда Яндекс Плюс выбирает кешбэки для покупателей 😁
В общем, на конференции полезно ходить не только (и не столько) ради самих докладов, сколько ради нетворка и инсайтов, которые можно получить во время общения с коллегами из других компаний. Надеюсь, что в будущем и моя команда выступит с докладами!
А за что вы любите или не любите конференции?
В Авито продавцы платят за разные целевые действия: клики, сделки, звонки. Мы также хотим учитывать этот потенциал за оплату разных действий в поиске и рекомендациях — для этого рассчитываем монетизационный фактор. За его качество наша команда и отвечает.
Для оценки этого фактора мы используем ML-модели предсказаний целевых действий. Сейчас это catboost, но мы активно смотрим в сторону DL-моделей. И чтобы понимать, какие подходы есть сейчас и как они работают, мы не только читаем статьи, но и ходим на конференции.
Конференции — это возможность услышать идеи для своих задач: как на презентациях, так и в личных беседах.
Ещё, когда я слушаю об успехах, неудачах и сложностях других специалистов — это помогает мне чувствовать себя спокойнее в работе. Приятно, что не мы одни сталкиваемся с какими-то проблемами.
На конференции можно ходить, чтобы поддерживать коллег. Выступать всегда немного волнительно, особенно в первый раз. Поэтому приятно, когда в зале есть знакомые лица. Например, мы недавно ходили на Practical ML — поддерживали Антона Семенистого. Он рассказывал про DL CTR.
Ещё на таких мероприятиях можно в неформальной обстановке наладить контакт, а потом узнать подробнее про устройство бизнеса и команды. Например, на Practical ML мы слушали доклад про модель Argus, которая актуальна и для Авито, и, конечно, поболтали с ребятами из других компаний.
Ещё я как-то выигрывала два промокода в Лавку, управляя птичкой, а потом узнала, как команда Яндекс Плюс выбирает кешбэки для покупателей 😁
В общем, на конференции полезно ходить не только (и не столько) ради самих докладов, сколько ради нетворка и инсайтов, которые можно получить во время общения с коллегами из других компаний. Надеюсь, что в будущем и моя команда выступит с докладами!
А за что вы любите или не любите конференции?
❤17⚡5🔥4
Собеседование в прямом эфире: ML system design
13 октября | 18:30 мск
Что будет на стриме:
1️⃣ Разберём ML system design кейс, который ещё в недавнем прошлом предлагали на реальных собеседованиях.
2️⃣ Поговорим про компетенции, которые в Авито ждут от DS-инженеров.
3️⃣ Разберём результаты по итогам решения кейса и ответим на ваши вопросы.
Кто будет на стриме:
👤 Интервьюеры — Саша Ледовский, руководитель DS команд монетизации Авито и Максим Каширин, руководитель Data Science направления в модерации Авито.
👤 Кандидат —Дмитрий Савелко, LLM-инженер в R&D команде банка Точка.
Больше информации про событие и регистрация на Timepad.
Пришлём вам ссылку с напоминанием за 5 минут до старта 🚀
13 октября | 18:30 мск
Что будет на стриме:
1️⃣ Разберём ML system design кейс, который ещё в недавнем прошлом предлагали на реальных собеседованиях.
2️⃣ Поговорим про компетенции, которые в Авито ждут от DS-инженеров.
3️⃣ Разберём результаты по итогам решения кейса и ответим на ваши вопросы.
Кто будет на стриме:
👤 Интервьюеры — Саша Ледовский, руководитель DS команд монетизации Авито и Максим Каширин, руководитель Data Science направления в модерации Авито.
👤 Кандидат —Дмитрий Савелко, LLM-инженер в R&D команде банка Точка.
Больше информации про событие и регистрация на Timepad.
Пришлём вам ссылку с напоминанием за 5 минут до старта 🚀
👍9🔥7❤1
Привет! Меня зовут Артём, я DS-инженер в команде Auction Efficiency, занимаюсь CTR-моделями в Поиске.
С этого поста начну серию текстов, в которых буду делиться своим подходом к организации работы и исследований в Data Science.
Верхнеуровневая структура моего DS-проекта обычно выглядит следующим образом:
Пройдёмся по ней более подробно:
—
—
—
—
—
—
—
—
—
Это обобщённая структура, поэтому в одних проектах каких-нибудь файлов/папок может и не быть, а в других проектах нужно будет добавить дополнительные.
В следующий раз я расскажу, как навести порядок в своих jupyter-ноутбуках, поэтому, если такие практические советы вам интересны — ставьте ✍️ под постом, чтобы мы продолжили развивать это направление!
И ловите полезные ссылки по этой теме:
Cookiecutter Data Science: шаблон, с помощью которого можно в автоматическом режиме настроить свой Data Science проект с нуля.
Обзор от ИИ Google: если поискать в интернете
How to organize your Python data science project: ещё один подход к организации DS проекта.
А как вы структурируете свои DS-проекты? Рассказывайте в комментариях
С этого поста начну серию текстов, в которых буду делиться своим подходом к организации работы и исследований в Data Science.
Верхнеуровневая структура моего DS-проекта обычно выглядит следующим образом:
project/
├── code
├── configs
├── notebooks
├── data/
│ ├── input
│ └── output
├── results
├── models
├── requirements.txt
├── .gitignore
└── README.md
Пройдёмся по ней более подробно:
—
code: .py файлы с полезными функциями и классами.—
configs: различные конфиги для обучения моделей и трансформации данных.—
notebooks: jupyter-ноутбуки, в которых обычно происходит вызов функций и методов классов из python-файлов директории code.—
data: входные и выходные данные.—
results: результаты (метрики и др.)—
models: сохранённые модели для воспроизведения результатов.—
requirements.txt: файл с зафиксированными версиями библиотек.—
.gitignore: файл для создания правил по добавлению файлов в Git.—
README.md: описание проекта.Это обобщённая структура, поэтому в одних проектах каких-нибудь файлов/папок может и не быть, а в других проектах нужно будет добавить дополнительные.
В следующий раз я расскажу, как навести порядок в своих jupyter-ноутбуках, поэтому, если такие практические советы вам интересны — ставьте ✍️ под постом, чтобы мы продолжили развивать это направление!
И ловите полезные ссылки по этой теме:
Cookiecutter Data Science: шаблон, с помощью которого можно в автоматическом режиме настроить свой Data Science проект с нуля.
Обзор от ИИ Google: если поискать в интернете
data science project structure, то Google предоставляет классный конспект на эту тему.How to organize your Python data science project: ещё один подход к организации DS проекта.
А как вы структурируете свои DS-проекты? Рассказывайте в комментариях
✍32👍25❤2
Привет! Я Ярослав Хрипков — DS-инженер в команде LLM. Проведу в этом канале наш первый ML reading club в прямом эфире.
Мы прочитаем и разберём статью Qwen3-Next: Towards Ultimate Training & Inference Efficiency, чтобы понять, как и почему у компании Alibaba всё так круто сработало с этой версией модели.
Узнаем:
➡️ Чем хороша эта модель.
➡️ Из-за чего выросло её качество.
➡️ Как gated attention и gated delta блоки улучшили эффективность модели.
Для контекста заглянем и в другие материалы:
— Gated Delta Networks: Improving Mamba2 with Delta Rule
— Gated Attention for Large Language Models: Non-linearity, Sparsity, and Attention-Sink-Free
🎤 Эфир проведу 14 октября в 18:00 прямо в этом канале. Приходите, будет интересно!
Мы прочитаем и разберём статью Qwen3-Next: Towards Ultimate Training & Inference Efficiency, чтобы понять, как и почему у компании Alibaba всё так круто сработало с этой версией модели.
Узнаем:
Для контекста заглянем и в другие материалы:
— Gated Delta Networks: Improving Mamba2 with Delta Rule
— Gated Attention for Large Language Models: Non-linearity, Sparsity, and Attention-Sink-Free
Нюанс: если эфир будет плохо работать, попробуйте использовать сторонние сервисы и приложения, чтобы подключиться с другого IP 😉
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥24🙏4❤2🤷1
👋 Привет! Напоминаем, что ждём вас на нашем первом ML reading club. Обсудим статью Qwen3-Next: Towards Ultimate Training & Inference Efficiency, и разберёмся, что такого классного в новой модели от Alibaba.
Эфир пройдёт в этом канале завтра, в 18:00. Ссылку пришлём за час до старта.
Эфир пройдёт в этом канале завтра, в 18:00. Ссылку пришлём за час до старта.
❤9👍8
→ Переходите в Толк
Продолжим там
Продолжим там
avito.ktalk.ru
Видеоконференция Толк
Подключиться к видеоконференции
🤔8❤6😁1
Привет, это Настя Козий — DS Tech Lead команды Horizontal ML Technologies в юните DS SWAT. Ищу ребят, которые хотят одновременно работать над продовыми задачами и заниматься образованием.
Почему это крутая возможность?
1️⃣ Уникальная комбинация ролей
✦ Вы получите классическую позицию DS-инженера: обучение моделей, эксперименты, выкатка в прод и всё, что мы любим в боевом ML.
✦ Но вместе с этим официальная часть работы — заниматься образованием. Вы будете читать лекции, делать курсы и делиться экспертизой. Причём не «дополнительно в свободное время», а в рабочие часы в рамках должностных обязанностей.
2️⃣ Разнообразие продовых задач
У нашей команды проекты из разных доменов: компьютерное зрение, обработка текста, работа со звуком и многое другое. Наши технологии используют во всём Авито!
3️⃣ Образование как драйвер развития
✦ Подготовка материалов — это возможность глубже понять алгоритмы и научиться объяснять сложные вещи простым языком.
✦ Ваши лекции будут смотреть и пересматривать сотни, а потом и тысячи студентов. Это шанс заявить о себе так же громко, как сделали когда-то Соколов, Воронцов, Кантор и другие.
Если чувствуете, что такая позиция для вас, откликайтесь на странице вакансии или пишите мне в ЛС @steysie
Почему это крутая возможность?
1️⃣ Уникальная комбинация ролей
✦ Вы получите классическую позицию DS-инженера: обучение моделей, эксперименты, выкатка в прод и всё, что мы любим в боевом ML.
✦ Но вместе с этим официальная часть работы — заниматься образованием. Вы будете читать лекции, делать курсы и делиться экспертизой. Причём не «дополнительно в свободное время», а в рабочие часы в рамках должностных обязанностей.
2️⃣ Разнообразие продовых задач
У нашей команды проекты из разных доменов: компьютерное зрение, обработка текста, работа со звуком и многое другое. Наши технологии используют во всём Авито!
3️⃣ Образование как драйвер развития
✦ Подготовка материалов — это возможность глубже понять алгоритмы и научиться объяснять сложные вещи простым языком.
✦ Ваши лекции будут смотреть и пересматривать сотни, а потом и тысячи студентов. Это шанс заявить о себе так же громко, как сделали когда-то Соколов, Воронцов, Кантор и другие.
Если чувствуете, что такая позиция для вас, откликайтесь на странице вакансии или пишите мне в ЛС @steysie
👍20🔥9🥰3🥱1
📌 Запись трансляции ML reading club
14 октября Ярослав Хрипков — DS-инженер в команде LLM в прямом эфире разбирал, почему новая модель от Alibaba лучше своих предшественниц. Как и обещали, выкладываем видео, оно длится около получаса.
О чём говорили:
1:15 — Как устроен Gated DeltaNet
2:19 — Gated DeltaNet vs Linear Attention/Mamba-2
5:15 — Что даёт Gated DeltaNet
7:09 — Как работает Gated Attention
11:27 — Как выглядит модель целиком
15:05 — Изменения гиперпараметров
20:00 — Производительность Qwen3-Next
20:44 — Метрики качества Qwen3-Next
24:20 — Наблюдения от слушателя
Видео на ютуб-канале AvitoTech
14 октября Ярослав Хрипков — DS-инженер в команде LLM в прямом эфире разбирал, почему новая модель от Alibaba лучше своих предшественниц. Как и обещали, выкладываем видео, оно длится около получаса.
О чём говорили:
1:15 — Как устроен Gated DeltaNet
2:19 — Gated DeltaNet vs Linear Attention/Mamba-2
5:15 — Что даёт Gated DeltaNet
7:09 — Как работает Gated Attention
11:27 — Как выглядит модель целиком
15:05 — Изменения гиперпараметров
20:00 — Производительность Qwen3-Next
20:44 — Метрики качества Qwen3-Next
24:20 — Наблюдения от слушателя
Видео на ютуб-канале AvitoTech
👍15🔥10❤2
Мы обсудили общий подход к организации проектов в DS в первой части, а сейчас подробнее остановимся на jupyter-ноутбуках.
Считается плохой практикой писать весь свой код в ноутбуках. И да, и нет:
✅ Да, лучше писать production-код в
❌ Нет, не стоит отказываться от ноутбуков — ими очень удобно пользоваться для исследований и обучения моделей.
Поэтому полезно будет выработать определённую структуру, чтобы упорядочить код и комментарии в jupyter-ноутбуках. Ваши коллеги и вы сами в будущем скажете себе спасибо.
Рассмотрим базовые разделы, которые могут встречаться практически в каждом ноутбуке:
Импорты: делаем импорт пакетов (библиотек). Причём я стараюсь не складывать импорты в одну ячейку, потому что это помогает ориентироваться в коде
— Базовые импорты: основные пакеты, типа
— ML импорты: например,
— Spark импорты:
Параметры: определяем константы, которые будут использоваться во всём ноутбуке
Пути: фиксируем пути к файлам и папкам
— Входные: для файлов, по которым мы будем читать файлы
— Выходные: для файлов, по которым мы будем проводить запись
Данные: читаем входные файлы
Функции: храним функции, которыми пользуемся на протяжении всего ноутбука
Перечислим другие возможные разделы:
EDA (Exploratory Data Analysis): проводим разведывательный анализ данных. Его удобно разбивать на несколько разделов, например:
— Знакомство с данными
— Проверка на пропуски и дубликаты
— Описательные статистики
— Анализ целевой переменной
— Анализ признаков
— Выводы
Сбор признаков: формируем датасет для обучения
Обучение
— Бейзлайн: тренируем бейзлайн модель
— Улучшение: улучшаем бейзлайн
Результаты: считаем оффлайн-метрики
Выводы: делаем выводы
ToDo: фиксируем направления для развития
Вернёмся к структуре ноутбука, но теперь обсудим, как её оформлять:
— Крупные разделы (выше выделены жирным шрифтом) выделяются с помощью заголовка первого уровня (
— Подразделы выделяются с помощью заголовка второго уровня (
— И так далее.
Не советую использовать больше 3-4 уровней, потому что это будет чрезмерным усложнением структуры.
Текст лучше писать в отдельных ячейках и не смешивать с заголовками.
После правильного оформления ноутбука заголовки помогут вам быстро по нему передвигаться.
Для этого:
— В
— В
Теперь вы можете быстро перемещаться между разделами своего ноутбука!
Как обычно, ставьте ✍️ под постом, если вам нравятся практические советы!
Дополнительные ссылки:
Язык разметки Markdown. Зачем нужен ещё один язык разметки и как на нём писать.
Markdown Guide. An overview of Markdown, how it works, and what you can do with it.
Если я забыл сказать о каких-нибудь важных разделах или у вас есть чем дополнить пост, предлагаю поделиться этим в комментариях.
Считается плохой практикой писать весь свой код в ноутбуках. И да, и нет:
✅ Да, лучше писать production-код в
.py файлах.❌ Нет, не стоит отказываться от ноутбуков — ими очень удобно пользоваться для исследований и обучения моделей.
Поэтому полезно будет выработать определённую структуру, чтобы упорядочить код и комментарии в jupyter-ноутбуках. Ваши коллеги и вы сами в будущем скажете себе спасибо.
Рассмотрим базовые разделы, которые могут встречаться практически в каждом ноутбуке:
Импорты: делаем импорт пакетов (библиотек). Причём я стараюсь не складывать импорты в одну ячейку, потому что это помогает ориентироваться в коде
— Базовые импорты: основные пакеты, типа
os, pandas и другие— ML импорты: например,
scikit-learn, catboost и другие— Spark импорты:
import pyspark.sql.functions as F и другиеПараметры: определяем константы, которые будут использоваться во всём ноутбуке
Пути: фиксируем пути к файлам и папкам
— Входные: для файлов, по которым мы будем читать файлы
— Выходные: для файлов, по которым мы будем проводить запись
Данные: читаем входные файлы
Функции: храним функции, которыми пользуемся на протяжении всего ноутбука
Перечислим другие возможные разделы:
EDA (Exploratory Data Analysis): проводим разведывательный анализ данных. Его удобно разбивать на несколько разделов, например:
— Знакомство с данными
— Проверка на пропуски и дубликаты
— Описательные статистики
— Анализ целевой переменной
— Анализ признаков
— Выводы
Сбор признаков: формируем датасет для обучения
Обучение
— Бейзлайн: тренируем бейзлайн модель
— Улучшение: улучшаем бейзлайн
Результаты: считаем оффлайн-метрики
Выводы: делаем выводы
ToDo: фиксируем направления для развития
Для написания текста в jupyter-ноутбуках используютсяmarkdown-ячейки. Я рекомендую разобраться с этим языком разметки — научитесь красиво оформлять текст в ноутбуках и писатьREADME.mdфайлы. В конце статьи будут ссылки, которые могут вам помочь.
Вернёмся к структуре ноутбука, но теперь обсудим, как её оформлять:
— Крупные разделы (выше выделены жирным шрифтом) выделяются с помощью заголовка первого уровня (
# Импорты). — Подразделы выделяются с помощью заголовка второго уровня (
## Входные пути). — И так далее.
Не советую использовать больше 3-4 уровней, потому что это будет чрезмерным усложнением структуры.
Текст лучше писать в отдельных ячейках и не смешивать с заголовками.
После правильного оформления ноутбука заголовки помогут вам быстро по нему передвигаться.
Для этого:
— В
Visual Studio Code нужно на вкладке Explorer открыть раздел Outline.— В
Jupyterlab это нажать на Table Of Contents в левом меню. Теперь вы можете быстро перемещаться между разделами своего ноутбука!
Как обычно, ставьте ✍️ под постом, если вам нравятся практические советы!
Дополнительные ссылки:
Язык разметки Markdown. Зачем нужен ещё один язык разметки и как на нём писать.
Markdown Guide. An overview of Markdown, how it works, and what you can do with it.
Если я забыл сказать о каких-нибудь важных разделах или у вас есть чем дополнить пост, предлагаю поделиться этим в комментариях.
✍30🔥10❤6👍3
LLM Alignment
Привет! С вами Серёжа Попов — DS-инженер в команде монетизации. Я слежу за тем, чтобы ранжирование на главной странице Авито учитывало монетизацию. Но сегодня хочу поделиться постом про LLM alignment от Анастасии Рысьмятовой, руководителя разработки LLM в Авито. Она рассказала, как мы приучаем большие модели быть не просто вежливыми, а безопасными и полезными в реальных продуктах.
Это не теория: A‑Vibe крутится на проде в рантайме, пишет тексты объявлений, помогает продавцам в чате, суммаризирует отзывы. И любой промах — не «ну бывает», а реальные риски — токсичность, нарушение правил площадки, репутационные и юридические проблемы для компании.
🛡️ Обычно безопасность модели на 80% упирается в качество данных, и здесь помогает жёсткая фильтрация: многоступенчатый отсев токсичности и осторожная доля синтетики. С точки зрения обучения, SFT и DPO дают базовую вежливость, но реальную устойчивость добавляют RLHF и подходы по типу Constitutional AI.
👾 А ещё важно проверять модель на стойкость перед хаками: ребята из LLM-команды регулярно тестируют джейлбрейки, многошаговые обходы и LLM‑атаки. Соблюдать баланс полезности и безопасности сложно, и важно не растерять знания модели в процессе её дообучения с учётом ограничений.
Рекомендую прочитать пост, чтобы разобраться в ключевых аспектах:
👉 Как и зачем готовить данные: дедупликация, фильтрация токсичности, синтетика и мультимодальность.
👉 Какие подходы к выравниванию ребята используют на практике: SFT, DPO, RLHF, конституционные правила и где между ними баланс.
👉 Как проверяют стойкость модели (red teaming, LLM‑атаки) и настраивают контекстную модерацию под разные сценарии.
Прочитать
Привет! С вами Серёжа Попов — DS-инженер в команде монетизации. Я слежу за тем, чтобы ранжирование на главной странице Авито учитывало монетизацию. Но сегодня хочу поделиться постом про LLM alignment от Анастасии Рысьмятовой, руководителя разработки LLM в Авито. Она рассказала, как мы приучаем большие модели быть не просто вежливыми, а безопасными и полезными в реальных продуктах.
Это не теория: A‑Vibe крутится на проде в рантайме, пишет тексты объявлений, помогает продавцам в чате, суммаризирует отзывы. И любой промах — не «ну бывает», а реальные риски — токсичность, нарушение правил площадки, репутационные и юридические проблемы для компании.
🛡️ Обычно безопасность модели на 80% упирается в качество данных, и здесь помогает жёсткая фильтрация: многоступенчатый отсев токсичности и осторожная доля синтетики. С точки зрения обучения, SFT и DPO дают базовую вежливость, но реальную устойчивость добавляют RLHF и подходы по типу Constitutional AI.
👾 А ещё важно проверять модель на стойкость перед хаками: ребята из LLM-команды регулярно тестируют джейлбрейки, многошаговые обходы и LLM‑атаки. Соблюдать баланс полезности и безопасности сложно, и важно не растерять знания модели в процессе её дообучения с учётом ограничений.
Рекомендую прочитать пост, чтобы разобраться в ключевых аспектах:
👉 Как и зачем готовить данные: дедупликация, фильтрация токсичности, синтетика и мультимодальность.
👉 Какие подходы к выравниванию ребята используют на практике: SFT, DPO, RLHF, конституционные правила и где между ними баланс.
👉 Как проверяют стойкость модели (red teaming, LLM‑атаки) и настраивают контекстную модерацию под разные сценарии.
Прочитать
🔥14👍6❤2👾1
Всем привет! Я Настя Рысьмятова, и сегодня расскажу про ещё один успешный кейс внедрения большой языковой модели в Авито.
🧑🎓 Мы обучили LLM находить потенциально чувствительные данные в программном коде, которые могут угрожать безопасности — пароли к базам данных, API-ключи и токены доступа.
🔍 До этого в Авито использовались другие алгоритмы поиска уязвимости. Они находили все вероятные угрозы, включая самые незначительные, и отправляли их специалистам на ручную проверку. В результате за месяцы работы могла образоваться очередь из тысяч предупреждений. Мы хотели сократить объёмы ручной проверки с помощью ML, но важно было сделать модель с полнотой близкой к 1.0, так как в данной задаче false negative имеет большую стоимость.
⭐ Мы обучили LLM на 7 млрд параметров решать задачу с полнотой 0.99. Пытались применять модели меньшего размера, но пока безуспешно. После внедрения LLM, объём ручной проверки кода сократился в 5 раз.
🧑🎓 Мы обучили LLM находить потенциально чувствительные данные в программном коде, которые могут угрожать безопасности — пароли к базам данных, API-ключи и токены доступа.
🔍 До этого в Авито использовались другие алгоритмы поиска уязвимости. Они находили все вероятные угрозы, включая самые незначительные, и отправляли их специалистам на ручную проверку. В результате за месяцы работы могла образоваться очередь из тысяч предупреждений. Мы хотели сократить объёмы ручной проверки с помощью ML, но важно было сделать модель с полнотой близкой к 1.0, так как в данной задаче false negative имеет большую стоимость.
⭐ Мы обучили LLM на 7 млрд параметров решать задачу с полнотой 0.99. Пытались применять модели меньшего размера, но пока безуспешно. После внедрения LLM, объём ручной проверки кода сократился в 5 раз.
❤🔥28🔥18👍10🤣2
Всем привет! С вами снова Настя Рысьмятова.
🎉 Вчера мы с командой выложили в open source две модели: A-vibe и A-vision. Это адаптированные под русский язык и домен Авито модели Qwen3-8B-Base и Qwen2.5-VL-7B-Instruct.
Для A-vibe обучение проходило в несколько шагов.
1️⃣ Сделали свой токенизатор, оптимальный для русского и английского языка.
2️⃣ Подменили оригинальный токенизатор Qwen3-8B-Base на собственный.
3️⃣ Обучили полученную модель на большом корпусе данных.
4️⃣ Провели SFT этап.
5️⃣ Сделали RL.
В результате получили модель, которая выигрывает у instruct версии Qwen3-8B по многим русскоязычным бенчмаркам. На SFT и RL этапе удалось научить модель Function Calling и улучшить её навыки в решении математических задач.
Подробный отчёт об обучении A-vibe уже можно найти в статье
🎉 Вчера мы с командой выложили в open source две модели: A-vibe и A-vision. Это адаптированные под русский язык и домен Авито модели Qwen3-8B-Base и Qwen2.5-VL-7B-Instruct.
Для A-vibe обучение проходило в несколько шагов.
1️⃣ Сделали свой токенизатор, оптимальный для русского и английского языка.
2️⃣ Подменили оригинальный токенизатор Qwen3-8B-Base на собственный.
3️⃣ Обучили полученную модель на большом корпусе данных.
4️⃣ Провели SFT этап.
5️⃣ Сделали RL.
В результате получили модель, которая выигрывает у instruct версии Qwen3-8B по многим русскоязычным бенчмаркам. На SFT и RL этапе удалось научить модель Function Calling и улучшить её навыки в решении математических задач.
Подробный отчёт об обучении A-vibe уже можно найти в статье
🔥27❤20👍6😱4😁2
Привет! Я Илья Чумак, и сегодня расскажу, как мы с командой снизили время на обнаружение ошибок в работе моделей модерации Авито.
👀 Каждый день через наш сервис проходят миллионы объявлений разных категорий. Каждое тщательно проверяют модели модерации.
❗Если модели начнут ошибаться, на сайт может попасть нежелательный контент, или, наоборот, некоторые пользователи получат незаслуженную блокировку своих объявлений.
Раньше мы могли отследить такие сбои только раз в сутки, когда считали общую статистику за день и сравнивали изменения в поведении моделей.
Сейчас обнаруживаем изменение в потоке данных уже через 5–10 минут от их появления, благодаря техникам из области Online Changepoint Detection.
Как это работает
✔️ Для каждой точки внутри временного окна (примерно 30 минут) мы проверяем гипотезу: «не произошло ли именно здесь изменение?». Для этого отдельно оцениваем параметры распределения данных до и после этой точки.
✔️ Далее вычисляем, насколько правдоподобно такое разделение, и сравниваем с правдоподобием модели, где никаких изменений нет. Так как данные подчиняются нормальному распределению, мы используем средние значения и дисперсии.
✔️ Чтобы управлять чувствительностью детектора, мы задаём порог для отношения правдоподобий: чем он ниже, тем больше изменений будет находиться, и наоборот.
При частоте обновления данных раз в минуту даже полный пересчёт статистик работает достаточно быстро. Если нужно ускорить метод, можно перейти к инкрементальному (пошаговому) обновлению параметров в байесовской постановке, где апостериорные распределения обновляются при поступлении новых данных 🙂
🙂 Благодаря снижению времени реакции наших моделей более 70 миллионов пользователей Авито размещают свои объявления без задержек!
👀 Каждый день через наш сервис проходят миллионы объявлений разных категорий. Каждое тщательно проверяют модели модерации.
❗Если модели начнут ошибаться, на сайт может попасть нежелательный контент, или, наоборот, некоторые пользователи получат незаслуженную блокировку своих объявлений.
Раньше мы могли отследить такие сбои только раз в сутки, когда считали общую статистику за день и сравнивали изменения в поведении моделей.
Сейчас обнаруживаем изменение в потоке данных уже через 5–10 минут от их появления, благодаря техникам из области Online Changepoint Detection.
Как это работает
✔️ Для каждой точки внутри временного окна (примерно 30 минут) мы проверяем гипотезу: «не произошло ли именно здесь изменение?». Для этого отдельно оцениваем параметры распределения данных до и после этой точки.
✔️ Далее вычисляем, насколько правдоподобно такое разделение, и сравниваем с правдоподобием модели, где никаких изменений нет. Так как данные подчиняются нормальному распределению, мы используем средние значения и дисперсии.
✔️ Чтобы управлять чувствительностью детектора, мы задаём порог для отношения правдоподобий: чем он ниже, тем больше изменений будет находиться, и наоборот.
При частоте обновления данных раз в минуту даже полный пересчёт статистик работает достаточно быстро. Если нужно ускорить метод, можно перейти к инкрементальному (пошаговому) обновлению параметров в байесовской постановке, где апостериорные распределения обновляются при поступлении новых данных 🙂
🙂 Благодаря снижению времени реакции наших моделей более 70 миллионов пользователей Авито размещают свои объявления без задержек!
🔥17❤5👍3
Всем привет! Запускаем пробный формат: берём новость из мира DS и разгоняем дискуссию.
🎯 Наш кейс сегодня: Андрей Карпаты и его nanoGPT
Пока многие считают, что ничего не надо пробовать реализовать с нуля и хватает готовых библиотек, один из крашей всея индустрии, Андрей Карпаты, показал мастер-класс. Всего за 4 часа, 100 $ и ~8000 строк кода он собрал работающий клон ChatGPT — с нуля.
→ Github проекта nanoGPT
Это мощная поддержка «сборки на коленках», которая, кажется, постепенно уходит из Data Science.
🧑💻 Карпаты — «сын маминой подруги»
Андрей — редкий пример человека, который преуспел сразу во всех амплуа:
— IC (Individual Contributor): PhD, один из первых в OpenAI, энтузиаст open source с насыщенным github.
— Топ-менеджер: был директором по AI в Tesla.
— Просветитель: видео с миллионами просмотрами на Youtube, курсы в университетах.
Талантливый человек талантлив во всём? Бесспорно. Но важно и то, что такая универсальность сегодня ценится и в меньших масштабах — например, у нас в Авито.
🧭 А в Авито можно быть «Карпаты»?
Можно! И для этого есть все возможности:
— Как IC — задачи от фундаментальных R&D до внедрения в продакшен, где твоя работа напрямую влияет на бизнес-метрики.
— Как менеджер — курсы для будущих тимлидов, менторство в Академии Аналитиков Авито и на стажёрских программах.
— Как просветитель — ведение курсов в Академии, участие в магистратурах или, как вариант, посты в этом канале 🙂
💬 Вопросы к вам
Как вы считаете, что эффективнее в долгой карьере:
— Сфокусироваться на одной роли и становиться в ней лучшим?
— Или пробовать себя в разных амплуа, как Карпаты?
А хотели бы услышать реальные истории коллег, которые, как и он, переходили из менеджеров обратно в индивидуальные разработчики?
Ждём ваши мысли в комментариях! 👇
🎯 Наш кейс сегодня: Андрей Карпаты и его nanoGPT
Пока многие считают, что ничего не надо пробовать реализовать с нуля и хватает готовых библиотек, один из крашей всея индустрии, Андрей Карпаты, показал мастер-класс. Всего за 4 часа, 100 $ и ~8000 строк кода он собрал работающий клон ChatGPT — с нуля.
→ Github проекта nanoGPT
Это мощная поддержка «сборки на коленках», которая, кажется, постепенно уходит из Data Science.
🧑💻 Карпаты — «сын маминой подруги»
Андрей — редкий пример человека, который преуспел сразу во всех амплуа:
— IC (Individual Contributor): PhD, один из первых в OpenAI, энтузиаст open source с насыщенным github.
— Топ-менеджер: был директором по AI в Tesla.
— Просветитель: видео с миллионами просмотрами на Youtube, курсы в университетах.
Талантливый человек талантлив во всём? Бесспорно. Но важно и то, что такая универсальность сегодня ценится и в меньших масштабах — например, у нас в Авито.
🧭 А в Авито можно быть «Карпаты»?
Можно! И для этого есть все возможности:
— Как IC — задачи от фундаментальных R&D до внедрения в продакшен, где твоя работа напрямую влияет на бизнес-метрики.
— Как менеджер — курсы для будущих тимлидов, менторство в Академии Аналитиков Авито и на стажёрских программах.
— Как просветитель — ведение курсов в Академии, участие в магистратурах или, как вариант, посты в этом канале 🙂
💬 Вопросы к вам
Как вы считаете, что эффективнее в долгой карьере:
— Сфокусироваться на одной роли и становиться в ней лучшим?
— Или пробовать себя в разных амплуа, как Карпаты?
А хотели бы услышать реальные истории коллег, которые, как и он, переходили из менеджеров обратно в индивидуальные разработчики?
Ждём ваши мысли в комментариях! 👇
🔥10👍7