# Доклад про оценку БЯМ
## как оценить умность llm → бенчмарк
 
На ум приходят образовательные человеческие тексты, профессиональные тесты, специальные тесты для ЬЯМ.
 
Кастомные бенчи
- знание спецфактов
- провокации
- следование формату
- культурные код
С бенчмарками беда:
- протечки — попадание бенчней в тренировочную выборку.
- результат сильно зависит от способа замера.
- зависимость от опций ответов — у БЯМ есть предпочтения, какие из вариантов в тестах брать.
- тест != ум.
## как оценивать умность БЯМ → люди, лидерборд арена
Например, lmsys или Chatbot Arena.
Быстро, бесплатно, «объективно».
Есть проблемы:
- смещенные типы заданий и темы — на такие платформы приходят люди, интересующиеся БЯМ.
- смещение в формат ответа — у людей есть предпочтение на формат ответа.
## как оценивать умность БЯМ → разметка
Нанимать экспертов — аи-тренеров
Из чего состоит разметка
1. Фиксируем набор заданий.
1. Контроль: разнообразие тем, сложность, контрастность задачи, стратифиации, типы задачи
2. Фиксация правил разметки: безопасность, правдивость, полезность.
3. llm-as-a-judge — используем мощную БЯМ для оценки
Проблемы:
- llm-as-a-judge: модели больше нравятся свои ответы, смещение форматов, модель плохой фактчекер.
- АИ-тренеры это сложно, дорого, долго, немасштабируемо, не всегда коррелирует с тем что нужно пользователям.
## как оценивать умность БЯМ → разметка экспертами
Системная проблемы: чем лучше модель, тем сложнее ее оценивать. С какого-то момента необходимо привлекать экспертов в разных областях, чтобы оценить правильность ответов. Это стоит еще дороже, чем обычные АИ—тренера, и еще сложнее оценивать качество работы эксперта, потому что вы сами таковым не являетесь.
## Общий пайплайн
- Бенчмарки используем для первичного отбора.
- не забываем контролировать протечки, исследовать способы замера качества и устойчивость, делать кастомные бенчмарки и валидировать их.
- Разметкой делаем финальную приемку. Не забываем постоянно проверяйте качество, делать llm-as-a-judge.
- АБ-тесты на реальном продукте
## как оценить умность llm → бенчмарк
На ум приходят образовательные человеческие тексты, профессиональные тесты, специальные тесты для ЬЯМ.
Кастомные бенчи
- знание спецфактов
- провокации
- следование формату
- культурные код
С бенчмарками беда:
- протечки — попадание бенчней в тренировочную выборку.
- результат сильно зависит от способа замера.
- зависимость от опций ответов — у БЯМ есть предпочтения, какие из вариантов в тестах брать.
- тест != ум.
## как оценивать умность БЯМ → люди, лидерборд арена
Например, lmsys или Chatbot Arena.
Быстро, бесплатно, «объективно».
Есть проблемы:
- смещенные типы заданий и темы — на такие платформы приходят люди, интересующиеся БЯМ.
- смещение в формат ответа — у людей есть предпочтение на формат ответа.
## как оценивать умность БЯМ → разметка
Нанимать экспертов — аи-тренеров
Из чего состоит разметка
1. Фиксируем набор заданий.
1. Контроль: разнообразие тем, сложность, контрастность задачи, стратифиации, типы задачи
2. Фиксация правил разметки: безопасность, правдивость, полезность.
3. llm-as-a-judge — используем мощную БЯМ для оценки
Проблемы:
- llm-as-a-judge: модели больше нравятся свои ответы, смещение форматов, модель плохой фактчекер.
- АИ-тренеры это сложно, дорого, долго, немасштабируемо, не всегда коррелирует с тем что нужно пользователям.
## как оценивать умность БЯМ → разметка экспертами
Системная проблемы: чем лучше модель, тем сложнее ее оценивать. С какого-то момента необходимо привлекать экспертов в разных областях, чтобы оценить правильность ответов. Это стоит еще дороже, чем обычные АИ—тренера, и еще сложнее оценивать качество работы эксперта, потому что вы сами таковым не являетесь.
## Общий пайплайн
- Бенчмарки используем для первичного отбора.
- не забываем контролировать протечки, исследовать способы замера качества и устойчивость, делать кастомные бенчмарки и валидировать их.
- Разметкой делаем финальную приемку. Не забываем постоянно проверяйте качество, делать llm-as-a-judge.
- АБ-тесты на реальном продукте
👍1
  # генерация данных
Решали задачу RAG по корпоративной базе данных. Использовали открытые модели от 7b до 70b, в том числе две версии Лламы и Сайгу.
Плюсы:
- можно генерировать неограниченное количество данных
- не содержат конфицденциальной информации
- можно котролировать характер данных
- получаем редкие или доменные данные
Проблемы:
- нужно контролировать качество генераций
- нужны опыт и знания в области
- не всегда применение синтетики уместно
- подбор нужных параметров может стать дороже и дольше, чем ручная разметка
Основная проблема, с которой столкнулись: сгенерированные данные — запросы пользователей — не совпадали с запросами реальных пользователей. Выход: перефразировать реальные запросы в синтетические (или наоборот).
Фишка проекта: он делался в условиях полного отсутствия данных. Именно по этому столкнулись с расхождением синтетики и реальных запросов. Сейчас на проекте 70 процентов данных — синтетика.
  Решали задачу RAG по корпоративной базе данных. Использовали открытые модели от 7b до 70b, в том числе две версии Лламы и Сайгу.
Плюсы:
- можно генерировать неограниченное количество данных
- не содержат конфицденциальной информации
- можно котролировать характер данных
- получаем редкие или доменные данные
Проблемы:
- нужно контролировать качество генераций
- нужны опыт и знания в области
- не всегда применение синтетики уместно
- подбор нужных параметров может стать дороже и дольше, чем ручная разметка
Основная проблема, с которой столкнулись: сгенерированные данные — запросы пользователей — не совпадали с запросами реальных пользователей. Выход: перефразировать реальные запросы в синтетические (или наоборот).
Фишка проекта: он делался в условиях полного отсутствия данных. Именно по этому столкнулись с расхождением синтетики и реальных запросов. Сейчас на проекте 70 процентов данных — синтетика.
В сентябре выпал шанс поучаствовать в конкурсе статьей на свободную тему в один контркультурный журнал. Я туда заехал со своей темой про суицид. Первый раз писал в таком жанре. Получился своего рода манифест, в котором собрал личные посылы к борьбе с этой напастью.
Текст вы можете прочитать здесь.
Отдельно хочется сказать «спасибо» Тимуру с его курсами по писательству, которые я проходил год назад. Они явно помогли (и помогают) сделать текст лучше. Я прямо видел в какие моменты это срабатывало.
А конкурс выиграть, к сожалению, не удалось.
Текст вы можете прочитать здесь.
Отдельно хочется сказать «спасибо» Тимуру с его курсами по писательству, которые я проходил год назад. Они явно помогли (и помогают) сделать текст лучше. Я прямо видел в какие моменты это срабатывало.
А конкурс выиграть, к сожалению, не удалось.
🔥10👏3❤1👍1
  В четверг выступал на одной конфе, где рассказывал про проект, который мы делаем уже полгода. Проект, который то умирал, то возрождался на протяжении последних трех лет. Это платформа для волонтеров, которые ищут суицидников в соцсетях по постам. Сейчас мы на середине пути, релиз будет летом 2025 года. Но поставить звёздочку репе можно уже сейчас.)
Заценить идею и результаты, которые есть сейчас, можно на записи в Ютубе или Рутубе.
Мы решили создать отдельный канал нашей команды, где будем вести некий дев-лог, хотя бы по месяцам. Также там будем писать о статьях научных, которые будем писать,но вы все равно читать про них будете, даже если не подпишетесь))) .
Репостните, по-возможности.
Заценить идею и результаты, которые есть сейчас, можно на записи в Ютубе или Рутубе.
Мы решили создать отдельный канал нашей команды, где будем вести некий дев-лог, хотя бы по месяцам. Также там будем писать о статьях научных, которые будем писать,
Репостните, по-возможности.
👍6🔥5
  Дорогой подписчик канала «Записки NLPшника».
В этот волшебный день время подвести итоги. Вспомнить, как смог за ночь до дедлайна выкатить модель в прод, или как смог сдать экзамен, заботав материал за одну ночь, или как, наконец, разобрался чем Mixtral отличается от Mistral, кроме буквы.
Не забудь вспомнить и все факапы, даже если от кринжа сводит зубы. От провалов не застрахован никто. Но в твоих силах разобраться, почему они случились и вынести уроки на будущее. Именно это называется опытом, который станет тузом в рукаве на очередном интервью.
В новом году желаю тебе сил. Чтобы глаза горели, чтобы руки чесались, чтобы голова жаждала решать задачи. Так доберешь до своей мечты.
Еще нет мечты? Тогда желаю найти ее. Общайся с людьми, ищи то, что хотел бы исправить. Держи сердце и разум открытыми и тогда обязательно ее найдешь.
С наступающим тебя,
Цифровой Дед Мороз
В этот волшебный день время подвести итоги. Вспомнить, как смог за ночь до дедлайна выкатить модель в прод, или как смог сдать экзамен, заботав материал за одну ночь, или как, наконец, разобрался чем Mixtral отличается от Mistral, кроме буквы.
Не забудь вспомнить и все факапы, даже если от кринжа сводит зубы. От провалов не застрахован никто. Но в твоих силах разобраться, почему они случились и вынести уроки на будущее. Именно это называется опытом, который станет тузом в рукаве на очередном интервью.
В новом году желаю тебе сил. Чтобы глаза горели, чтобы руки чесались, чтобы голова жаждала решать задачи. Так доберешь до своей мечты.
Еще нет мечты? Тогда желаю найти ее. Общайся с людьми, ищи то, что хотел бы исправить. Держи сердце и разум открытыми и тогда обязательно ее найдешь.
С наступающим тебя,
Цифровой Дед Мороз
🎄7❤5🦄1
  Forwarded from ПсиТехЛаб
Наши пока немногочисленные подписчики.
Команда Пситехлаба поздравляет вас с наступающим Новом годом. В первую очередь, конечно, желаем, чтобы в новом году ваша крыша была на месте. Гвоздями этой крыши служат люди, которые вас окружают. Поэтому желаем вам тепла в общении и дружбы, которой так часто не хватает во взрослой жизни.
Предстоящие праздники — отличный повод, чтобы написать старым друзьям, с которыми давно не общались. Поболтайте с братьями и сестрами, если жизнь вас разнесла по разным городам. Может вы даже соберетесь в Зуме посидеть, чтобы вспомнить, как кто выглядит. А может даже встретитесь погулять где-нибудь.
Мы вернемся с обещанным первым материалом после праздников. В нем мы расскажем про то, как мы выбирали и учились работать с платформой для версионирования затравок для больших языковых моделей. Оставайтесь с нами.
С наступающим 2025 годом.
  Команда Пситехлаба поздравляет вас с наступающим Новом годом. В первую очередь, конечно, желаем, чтобы в новом году ваша крыша была на месте. Гвоздями этой крыши служат люди, которые вас окружают. Поэтому желаем вам тепла в общении и дружбы, которой так часто не хватает во взрослой жизни.
Предстоящие праздники — отличный повод, чтобы написать старым друзьям, с которыми давно не общались. Поболтайте с братьями и сестрами, если жизнь вас разнесла по разным городам. Может вы даже соберетесь в Зуме посидеть, чтобы вспомнить, как кто выглядит. А может даже встретитесь погулять где-нибудь.
Мы вернемся с обещанным первым материалом после праздников. В нем мы расскажем про то, как мы выбирали и учились работать с платформой для версионирования затравок для больших языковых моделей. Оставайтесь с нами.
С наступающим 2025 годом.
  Записки NLPшника
И тут вы такие «каких-каких эмбеддингов?». Я сам был в шоке. Думаю, они не соврали, что первыми предложили такой метод. Чтобы такие получить, нужно сначала предложение превратить в синтаксическое дерево (сделать это можно через SpaCy, UDPipe или нейроразборщик, если знаете таковой), а затем это дерево перегнать в эмбеддинги с помощью Weisfeiler-Lehman graph kernel. Я нашел на Гитхабе пакеты с этим методом, но они какие-то запутанные, а мне fit_predict подавай. Разобраться в работе метода я даже не пытался, тут пояснительная бригада математиков нужна. Но сам факт, что так можно — делает душе приятно.
Почти год назад я разбирал статью, в которой мне попалась метрика оценки разнообразия синтаксиса. На чем я тогда остановился — читайте выше.
Так вот, судьбой было предназначено мне еще раз посмотреть на тот абзац из статьи, а оттуда уже и в ссылки, которых там две. Вы не поверите, как звучит одна из них: "GraKeL: A Graph Kernel Library in Python". Я говорю, что мне "fit_predict" подавай? Описание либы из гитхаба: "A scikit-learn compatible library for graph kernels". Да-да, рабочая либа для питона.
Вы спросите меня, как я искал тогда вообще? А я вам ничего не скажу.
Про запутанность метода я тоже преувеличил. У автора либы есть очень подробный обзор этих самых ядер, в том числе того самого Weisfeiler-Lehman graph kernel. Самое важное: в начале он воскрешает в памяти базовые понятия по графам, а затем объясняет, что собой представляют эти ядра математически. Никакой пояснительной бригады не понадобилось.
Вы, может, хотите спросить, как я читал тогда вообще? Да я вам снова ничего не скажу.
Мы в команде уже тыкаем эту штуку на практике и через время, думаю, сделаем пост про эти самые графовые ядра и про синтаксическое разнообразие.
Так вот, судьбой было предназначено мне еще раз посмотреть на тот абзац из статьи, а оттуда уже и в ссылки, которых там две. Вы не поверите, как звучит одна из них: "GraKeL: A Graph Kernel Library in Python". Я говорю, что мне "fit_predict" подавай? Описание либы из гитхаба: "A scikit-learn compatible library for graph kernels". Да-да, рабочая либа для питона.
Вы спросите меня, как я искал тогда вообще? А я вам ничего не скажу.
Про запутанность метода я тоже преувеличил. У автора либы есть очень подробный обзор этих самых ядер, в том числе того самого Weisfeiler-Lehman graph kernel. Самое важное: в начале он воскрешает в памяти базовые понятия по графам, а затем объясняет, что собой представляют эти ядра математически. Никакой пояснительной бригады не понадобилось.
Вы, может, хотите спросить, как я читал тогда вообще? Да я вам снова ничего не скажу.
Мы в команде уже тыкаем эту штуку на практике и через время, думаю, сделаем пост про эти самые графовые ядра и про синтаксическое разнообразие.
👍1
  Forwarded from ПсиТехЛаб
Не совсем сразу после праздников, но на первой неделе).
Выложили пост про Langfuse — платформу версионирования и учета затравок для больших языковых моделей. Рассказываем, почему выбрали именно ее, как развернуть и как начать с ней работать.
Почитайте.
Выложили пост про Langfuse — платформу версионирования и учета затравок для больших языковых моделей. Рассказываем, почему выбрали именно ее, как развернуть и как начать с ней работать.
Почитайте.
🔥3
  Пост-солянка разных интересностей, которыми хочется поделиться, но на отдельный пост не тянут
Использование ML/Data Open Source в России — команда из ИТМО проанализировала решения, инструменты и их применимость на базе открытого кода. Ребята выделили главных игроков, обозначили проблемы и перспективы.
Девушки в IT. Как на карьеру влияют семья, стереотипы и профильное образование — чуваки из Яндекса и ВШЭ опросили девушек, работающих в IT, и предоставили результаты анализа. tl;dr: если родители поддерживали, девушка училась в профильных классах, участвовала в олимпиадах и интересовалась математикой, то все у нее будет хорошо в IT. Секретов нет.
Меня первый раз процитировали вот в этой работе. Правда, всё цитирование сводится к фразе "There is one dataset constructed for the early detection of suicidal signals from social media texts" в описании смежных работ. Забавно, что авторы BERT называют БЯМ. И модели в работе они используют ну совсем не БЯМ. Вышкинцы, передайте коллегам, что БЯМ давно уже >1kk параметров.
Нашел калькулятор требований по памяти для инференса или обучения БЯМ.
Закрылся курс Браславского Павла по введению в обработку естественного языка на Степике. В уже далеком 2017 году я из него получил первые знания об этой области. Трансформер еще не родился, лучшей моделью были варианты LTSM, все обсуждали механизм внимания. Навсегда в моём сердце. F.
Я добавил много разных обучающих материалов в свой NLP Compass, посмотрите. До обновления диаграмм компетенций в ближайшее время руки вряд ли дойдут, но по тем вакансиями, что мне иногда приносят HR, вижу, что появился запрос про работу с LLM. Кажется, я это добавлял в прошлом году. Может, стоит фреймворков накидать для LLM, а то у меня там значится только LangChain. Есть идеи?
Использование ML/Data Open Source в России — команда из ИТМО проанализировала решения, инструменты и их применимость на базе открытого кода. Ребята выделили главных игроков, обозначили проблемы и перспективы.
Девушки в IT. Как на карьеру влияют семья, стереотипы и профильное образование — чуваки из Яндекса и ВШЭ опросили девушек, работающих в IT, и предоставили результаты анализа. tl;dr: если родители поддерживали, девушка училась в профильных классах, участвовала в олимпиадах и интересовалась математикой, то все у нее будет хорошо в IT. Секретов нет.
Меня первый раз процитировали вот в этой работе. Правда, всё цитирование сводится к фразе "There is one dataset constructed for the early detection of suicidal signals from social media texts" в описании смежных работ. Забавно, что авторы BERT называют БЯМ. И модели в работе они используют ну совсем не БЯМ. Вышкинцы, передайте коллегам, что БЯМ давно уже >1kk параметров.
Нашел калькулятор требований по памяти для инференса или обучения БЯМ.
Закрылся курс Браславского Павла по введению в обработку естественного языка на Степике. В уже далеком 2017 году я из него получил первые знания об этой области. Трансформер еще не родился, лучшей моделью были варианты LTSM, все обсуждали механизм внимания. Навсегда в моём сердце. F.
Я добавил много разных обучающих материалов в свой NLP Compass, посмотрите. До обновления диаграмм компетенций в ближайшее время руки вряд ли дойдут, но по тем вакансиями, что мне иногда приносят HR, вижу, что появился запрос про работу с LLM. Кажется, я это добавлял в прошлом году. Может, стоит фреймворков накидать для LLM, а то у меня там значится только LangChain. Есть идеи?
❤8
  Forwarded from ПсиТехЛаб
Привет.
Мы с девлогом за февраль. В нем рассказываем, как мы пересобираем набор классов для одной из наших моделей.
Читайте здесь.
  
  Мы с девлогом за февраль. В нем рассказываем, как мы пересобираем набор классов для одной из наших моделей.
Читайте здесь.
ПсиТехЛаб
  
  Devlog_1
  Девлог #1 Февраль прошел под знаменем «Сделаем разметку лучше». Мы разрабатываем две модели: первая модель должна определять разные сигналы и обстоятельства, повышающие возможность суицида, а вторая модель — факторы сдерживания. И вот со второй моделью всё…
❤2
  Была у меня такая задача. Есть россыпь классов, название которых могло незначительно отличаться, но смысл их был одинаков. Надо было такие классы объединить в один. Речь шла примерно о таких случаях: «нейтральный», «нейтрал», «нейтральныйОтвет».
Вместо того чтобы пытаться запихнуть тексты в векторы и накрутить на это кластеризацию или, тем более, просить БЯМ, я решил попробовать дедовский метод: сопоставление строк. Технически это та же кластеризация только над различиями строк.
Пошел в гугл искать питонячью библиотеку. Казалось для такой задачи их должно быть тонны. Как бы не так. Я потратил кучу времени на поиск хотя бы чего-то рабочего. Нашел только ОДНУ библиотеку Fuzz Up от пользователя со смешным для русского человека ником ebanalyse. Дизайн у либы ужасный, сама она давно не обновлялась, но на 10 питоне всё еще работает.
Пока искал либу, нашел обзор 2007 года по дедупликации строк в БД — так называется эта задача. Узнал, что для сравнения строк существует не только метрика Левенштейна. Часть описанных там метрик реализована в либе RapidFuzz, которая как раз используется в FuzzUp. Выбрать метрику можно через kwargs.
Отдельно обратил внимание на фонетические метрики похожести Soundex и Metaphone. Для русского и некоторых других языков реализацию можно найти в либе Fonetika. Автор даже оживился и за последнюю неделю закинул два комита впервые за три года.
Все либы добавил в список полезных реп, который теперь веду вот здесь.
Для моей задачи, кстати, метод не совсем подошел: постоянно было много кластеров, которые вроде хорошие, но один-два довольно крупных класса были вообще не в кассу. Как бы я не пытался крутить порог, уменьшить количество таких кластеров не получалось. Вручную проходиться и чистить тоже не хотелось. В итоге схлопнул по вхождению общей подстроки, а где подстроки не нашлось — выкинул))) Итог получился сносным, хотя, конечно, несколько классов явно имели совсем не ту семантику, которая ожидалась. Вот тут как раз уже можно и через эмбеддинги фильтрануть.
Вместо того чтобы пытаться запихнуть тексты в векторы и накрутить на это кластеризацию или, тем более, просить БЯМ, я решил попробовать дедовский метод: сопоставление строк. Технически это та же кластеризация только над различиями строк.
Пошел в гугл искать питонячью библиотеку. Казалось для такой задачи их должно быть тонны. Как бы не так. Я потратил кучу времени на поиск хотя бы чего-то рабочего. Нашел только ОДНУ библиотеку Fuzz Up от пользователя со смешным для русского человека ником ebanalyse. Дизайн у либы ужасный, сама она давно не обновлялась, но на 10 питоне всё еще работает.
Пока искал либу, нашел обзор 2007 года по дедупликации строк в БД — так называется эта задача. Узнал, что для сравнения строк существует не только метрика Левенштейна. Часть описанных там метрик реализована в либе RapidFuzz, которая как раз используется в FuzzUp. Выбрать метрику можно через kwargs.
Отдельно обратил внимание на фонетические метрики похожести Soundex и Metaphone. Для русского и некоторых других языков реализацию можно найти в либе Fonetika. Автор даже оживился и за последнюю неделю закинул два комита впервые за три года.
Все либы добавил в список полезных реп, который теперь веду вот здесь.
Для моей задачи, кстати, метод не совсем подошел: постоянно было много кластеров, которые вроде хорошие, но один-два довольно крупных класса были вообще не в кассу. Как бы я не пытался крутить порог, уменьшить количество таких кластеров не получалось. Вручную проходиться и чистить тоже не хотелось. В итоге схлопнул по вхождению общей подстроки, а где подстроки не нашлось — выкинул))) Итог получился сносным, хотя, конечно, несколько классов явно имели совсем не ту семантику, которая ожидалась. Вот тут как раз уже можно и через эмбеддинги фильтрануть.
🔥3⚡1
  Forwarded from ПсиТехЛаб
Всем здрасте. Мы с новым девлогом.
Любой МЛщик когда-то задается вопросом: «А как мне деплоить свои модели?». Мы давно нашли на него ответ: это Triton Inference Server, разработка Nvidia. В девлоге мы расскажем необходимый минимум о Тритоне и как мы его используем в нашем проекте. Ссылка на репу: tritoned_bert.
  
  Любой МЛщик когда-то задается вопросом: «А как мне деплоить свои модели?». Мы давно нашли на него ответ: это Triton Inference Server, разработка Nvidia. В девлоге мы расскажем необходимый минимум о Тритоне и как мы его используем в нашем проекте. Ссылка на репу: tritoned_bert.
ПсиТехЛаб
  
  Девлог #2. Про Наш Шаблон Triton Сервиса Для Бертовых Моделей
  Любой МЛщик когда-то задается вопросом: «А как мне деплоить свои модели?». Мы давно нашли на него ответ: это Triton Inference Server, разработка Nvidia. У него полно разных достоинств:
👍4
  Начинаем потихонечку рассказывать, что мы с командой сделали за последний почти год.
Начну с небольшой, знакомой площадки, где если и будут помидоры, то в салате на столе с фуршетомхочется верить, во всяком случае .
23 апреля в офисе MTS AI на Подсосенском переулке буду рассказывать, как мы в Пситехлабе собирали датесет для определения разных пресуицидальных и антисуицидальных признаков в тексте. В отличие от декабрьского доклада, в грядущем уже будет много деталей про то как выстраивали процесс разметки, с какими трудностями столкнулись и что получилось в итоге.
Кроме меня там будут еще два доклада. Первый про поиск аномалий в данных, второй про сжатие данных.
Регистрация здесь.
Начну с небольшой, знакомой площадки, где если и будут помидоры, то в салате на столе с фуршетом
23 апреля в офисе MTS AI на Подсосенском переулке буду рассказывать, как мы в Пситехлабе собирали датесет для определения разных пресуицидальных и антисуицидальных признаков в тексте. В отличие от декабрьского доклада, в грядущем уже будет много деталей про то как выстраивали процесс разметки, с какими трудностями столкнулись и что получилось в итоге.
Кроме меня там будут еще два доклада. Первый про поиск аномалий в данных, второй про сжатие данных.
Регистрация здесь.
🔥4
  Мои пальцы явно преследует кулинарное проклятие. Подавая заявку, я отправил сугубо «техническое» название доклада, потому что сроки горели. Я не успел авторам отправить нормальное название до того, как они сделали первый анонс, поэтому на полтелеграма мой доклад значится как «Собираем датасет для определения суицидальных признаков в тесте» (здесь, например).
Оправдывал себя, что торопился, бывает.
Однако, в анонсе выше я написал также. Спасибо, @anykeen, что заметил.
Я думаю это знак: нужно изучить суицидальные наклонности хлебных полуфабрикатов, теста в первую очередь. Собираю донаты.
Оправдывал себя, что торопился, бывает.
Однако, в анонсе выше я написал также. Спасибо, @anykeen, что заметил.
Я думаю это знак: нужно изучить суицидальные наклонности хлебных полуфабрикатов, теста в первую очередь. Собираю донаты.
😁6
  Forwarded from ПсиТехЛаб
Привет.
Очередной девлог, за апрель. В нем почитаете про наш сервис детекции персональной информации и скриншоты нашей платформы. Про наш доклад на Moscow Python, где мы рассказываем про наш датасет, там тоже написано, но отдельно подсветим его здесь: смотреть на ютубе и рутубе можно посмотреть тут (презу в нормальном качестве смотреть тут).
Надеемся, вам понравился котик на нашем логотипе.
  
  Очередной девлог, за апрель. В нем почитаете про наш сервис детекции персональной информации и скриншоты нашей платформы. Про наш доклад на Moscow Python, где мы рассказываем про наш датасет, там тоже написано, но отдельно подсветим его здесь: смотреть на ютубе и рутубе можно посмотреть тут (презу в нормальном качестве смотреть тут).
Надеемся, вам понравился котик на нашем логотипе.
ПсиТехЛаб
  
  Девлог #3. Про Пироги, Скриншоты Платформы И Доклад
  Готовим детективные пирожки
❤3
  Forwarded from ПсиТехЛаб
Мы тут с внеочередным девлогом, который скорее инструкция, чтобы самим не забыть. Она о том, как сделать кастомный образ сервера Тритона, чтобы уменьшить его размер.
  
  ПсиТехЛаб
  
  Девлог #4. Как Сделать Кастомный Докер Образ Для Тритона
  Безусловно удобно, когда любую модель можно обернуть в тритоновский докер-образ, как мы научились это делать в tritoned_bert. Нам это нужно, чтобы было удобнее две наши модели поставлять вместе с платформой. Но 14-16 гигов объема каждого такого образа вызывают…
🔥2
  Читайте, как я насчитал стоимость gpu-компьюта в России. (Используйте кнопочку Instant View).
  
  Astromis notes
  
  Аренда или покупка? Стоимость минуты GPU в России в 2025 году.
  Недавно стало интересно, где можно аредовать GPU и сколько это стоит. Сподвигла на это реклама на Хабре, типа, наши услуги для ваших ЭмЭльных задач. Пошел в поисковик и забил “аренда серверов с гпу” и пошел прям по порядку. Быстро понял, что сравнивать разные…
❤1
  Рассказываю, что натестил с генератором регэкспов, который нашел случайно на Хабре.
  
  Astromis notes
  
  Тест библиотеки автогенрерации регэкспов strtree
  Попался мне пост на Хабре, где автор классифицирует товары по их названиям: похожим, но не одинаковым. Для этого он написал генератор паттернов регулярных выражений strtree. Я специально такие генераторы никак не мог найти, а тут он мне сам под пальцы попался.
❤2
  Кринж недели.
Написал я значит маленький класс, чтобы шаблоны для затравок делать. Первое, что пришло в голову для основы — Jinja. Это почтенная либа шаблонов, которую используют для генерации страниц сайтов и документации. Думаю, не мне первому пришла идея использовать ее для затравок.
Класс работает безотказно как лом. Мне нужно-то всего уметь хранить отдельные части затравки, типа примеров и описания классов, и по команде собирать это в единый текст.
Дошел я в своих экспериментах до техники агрегации затравок. Это когда мы модель спрашиваем одну и ту же задачу разными затравками. За счет случайности процесса, получаем разные «точки зрения». Получается эдакий ансамбль по-бямски.
Идея реализации такая: сделать объект моего класса для затравки, сделать копии и каждую копию уже как-то изменить. Как раз части хранятся отдельно. Затем все по очереди инференсится. Что могло пойти не так?
Ответ убил: при попытке сделать
Я сначала даже не поверил сразу. Вы просто представьте, насколько это обескураживающе выглядит: ты спотыкаешься не на том, что у тебя БЯМ выводит какую-то фигню, а на простом копировании объекта. Еще больше балдеешь от того, что ишью эта висит в репе с 2017 года, Карл! Человек, который ишью создал, приложил костыль, который сработал и у меня. Хвала Опенсорсу.
Самое смешное, что дальше идет коммент от мейнтейнера, который "not sure there was ever an expectation that templates could be deep copied". Может, он знает чего-то, что не знаю я, но я не вижу ни одной причины, почему я НЕ должен ожидать, что любой питонячий объект может быть скопирован.
Мое лицо в этот период выглядело так:
Написал я значит маленький класс, чтобы шаблоны для затравок делать. Первое, что пришло в голову для основы — Jinja. Это почтенная либа шаблонов, которую используют для генерации страниц сайтов и документации. Думаю, не мне первому пришла идея использовать ее для затравок.
Класс работает безотказно как лом. Мне нужно-то всего уметь хранить отдельные части затравки, типа примеров и описания классов, и по команде собирать это в единый текст.
Дошел я в своих экспериментах до техники агрегации затравок. Это когда мы модель спрашиваем одну и ту же задачу разными затравками. За счет случайности процесса, получаем разные «точки зрения». Получается эдакий ансамбль по-бямски.
Идея реализации такая: сделать объект моего класса для затравки, сделать копии и каждую копию уже как-то изменить. Как раз части хранятся отдельно. Затем все по очереди инференсится. Что могло пойти не так?
Ответ убил: при попытке сделать
deepcopy от объекта класса вываливается ошибкаTypeError: __new__() missing 1 required positional argument: 'source'
Я сначала даже не поверил сразу. Вы просто представьте, насколько это обескураживающе выглядит: ты спотыкаешься не на том, что у тебя БЯМ выводит какую-то фигню, а на простом копировании объекта. Еще больше балдеешь от того, что ишью эта висит в репе с 2017 года, Карл! Человек, который ишью создал, приложил костыль, который сработал и у меня. Хвала Опенсорсу.
Самое смешное, что дальше идет коммент от мейнтейнера, который "not sure there was ever an expectation that templates could be deep copied". Может, он знает чего-то, что не знаю я, но я не вижу ни одной причины, почему я НЕ должен ожидать, что любой питонячий объект может быть скопирован.
Мое лицо в этот период выглядело так:
🙈2