Кринж недели.
Написал я значит маленький класс, чтобы шаблоны для затравок делать. Первое, что пришло в голову для основы — 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
Как-то я писал, что в институте делаем эксперименты по переводу датасета с помощью БЯМ. В апреле опубликовали статью, теперь, наконец, руки дошли написать пост на великом-могучем.
Я мечтал перевести этот датасет на русский пять лет, чтоб вы понимали.
Я мечтал перевести этот датасет на русский пять лет, чтоб вы понимали.
Хабр
Стирая языковые границы для NLP-датасетов
Всем привет. В этом посте расскажем, как мы тестировали БЯМ для переноса англоязычных датасетов на русский. «Мы» — это ваш покорный слуга и ребята из ФИЦ ИУ РАН. Пост по факту перевод нашей научной...
🔥4
Случайно нашел свежую статью, где выясняли, какой лучше брать энкодер для BERTScore для русского языка. В среднем по больнице таким энкодером оказался google/byt5-large среди 16 моделей (ruBERT только почему-то нет). Выясняли с помощью LLM-as-a-judge на материале 6 датасетов.
BERTScore — метрика качества сгенерированных текстов на ряду с BLEU, ROUGE и т.д. Догадайтесь сами на чем она основана)
BERTScore — метрика качества сгенерированных текстов на ряду с BLEU, ROUGE и т.д. Догадайтесь сами на чем она основана)
👍2
Ситуация. У вас в инфраструктуре есть инференсер БЯМ, который работает как часы: вы ему адрес модели в HF, а он вам эндпоинт. Живете себе и горя не знаете. Но вот инфру обновили и ваш часовой механизм ломается. Вместо предиктов БЯМ вам возвращается ошибка 404.
Что я попытался сделать:
1) Перезапустил эндпоинт, потому что сразу после обновы я попросил коллегу его поднять. У нее всё работало. Я заподозрил, что как-то изменилась политика прав доступа, и эндпоинты, развернутые другим пользователем, перестали быть видимыми для других.
2) Изменил имя эндпоинта на такое, которое никогда не использовалось, потому что я думал, что известное имя может конфликтовать каким-то образом.
3) Перепроверил настройки инференсера — появилось много новых.
4) Перепроверил тысячу раз путь.
Мне неизменно возвращалась ошибка 404.
Потратив два часа, я сдался. Позвонил коллеге, у которой все заработало, с намерением попросить ее прогнать данные через БЯМ, т. к. сроки горели. В разговоре она мельком упомянула, что поменяла токен доступа в инфре — единственное, что я не сделал. Сменил токен за 1 минуту и всё заработало. То есть ошибка 404 на самом деле была ошибкой 403. Разница в единицу стоила мне двух часов.
В манускрипт моих практик по шаманизму добавилась следующая запись: «Если система обновилась, то если какая-то штука не работает, которая раньше работало без проблем, и лог ошибки не бьется с реальностью, то выполнить все действия, будто запускаешь эту штуку первый раз».
Под «не бьется с реальностью» я вот что имею в виду. Я точно вижу, что адрес правильный. Я его даже не руками вводил, а скопировал из примера самой инфры. Но я все равно продолжал считать, что это я дурак, а логи врать не могут.
Что я попытался сделать:
1) Перезапустил эндпоинт, потому что сразу после обновы я попросил коллегу его поднять. У нее всё работало. Я заподозрил, что как-то изменилась политика прав доступа, и эндпоинты, развернутые другим пользователем, перестали быть видимыми для других.
2) Изменил имя эндпоинта на такое, которое никогда не использовалось, потому что я думал, что известное имя может конфликтовать каким-то образом.
3) Перепроверил настройки инференсера — появилось много новых.
4) Перепроверил тысячу раз путь.
Мне неизменно возвращалась ошибка 404.
Потратив два часа, я сдался. Позвонил коллеге, у которой все заработало, с намерением попросить ее прогнать данные через БЯМ, т. к. сроки горели. В разговоре она мельком упомянула, что поменяла токен доступа в инфре — единственное, что я не сделал. Сменил токен за 1 минуту и всё заработало. То есть ошибка 404 на самом деле была ошибкой 403. Разница в единицу стоила мне двух часов.
В манускрипт моих практик по шаманизму добавилась следующая запись: «Если система обновилась, то если какая-то штука не работает, которая раньше работало без проблем, и лог ошибки не бьется с реальностью, то выполнить все действия, будто запускаешь эту штуку первый раз».
Под «не бьется с реальностью» я вот что имею в виду. Я точно вижу, что адрес правильный. Я его даже не руками вводил, а скопировал из примера самой инфры. Но я все равно продолжал считать, что это я дурак, а логи врать не могут.
👍1
Forwarded from ПсиТехЛаб
Добрейшего утречка.
Врываемся в осень с девлогами о том, как провели лето. Вот первая часть.
Подсветим важное объявление из него.
12 октября наша команда будет участвовать в конференции для психологов «Открытые двери». Там наш руководитель будет участвовать в дискуссии, где будут обсуждаться проблемы и перспективы тандема «психология+ИИ», а также мы будем читать доклад о нейросетях для психологов. Другие доклады можно посмотреть в программе.
Если вам эта область знакома или вы хотите усилить «техническую сторону» на конференции, то билеты можно купить здесь. Формат онлайн и оффлайн.
Врываемся в осень с девлогами о том, как провели лето. Вот первая часть.
Подсветим важное объявление из него.
12 октября наша команда будет участвовать в конференции для психологов «Открытые двери». Там наш руководитель будет участвовать в дискуссии, где будут обсуждаться проблемы и перспективы тандема «психология+ИИ», а также мы будем читать доклад о нейросетях для психологов. Другие доклады можно посмотреть в программе.
Если вам эта область знакома или вы хотите усилить «техническую сторону» на конференции, то билеты можно купить здесь. Формат онлайн и оффлайн.
ПсиТехЛаб
Девлог #5. Как Мы Провели Лето, Часть 1
Время летит быстро, особенно для тех, кто чем-то занят. Вот и мы вроде только писали наш майский девлог, а уже четыре дня как школьники и студенты сели за парты. В следующих двух девлогах расскажем вам, как прошло наше лето, что делаем сейчас и какие планы.
👍1
Forwarded from ПсиТехЛаб
Как и обещали в прошлом девлоге, сделали пост о том, как мы переводили датасеты с помощью БЯМ. У Нафисы, нашего младшего разработчика, это первый пост на Хабре, давайте ее поздравим))
Хабр
Перевод датасета для оценки эмпатии на русский язык: подход, проблемы, результаты
Привет. Меня зовут Нафиса Валиева. Я младший разработчик в MWS AI и Пситехлабе, студентка 3го курса ПМ-ПУ СПбГУ. Этот пост — текстовый вариант моего выступления на Дата Фесте . Я расскажу вам, как мы...
❤1
Через неделю буду на конфе у псих-отерапевтов/олгов/иатров, где мы будем обсуждать чему равно «психология + ИИ».
Есть возможность докинуть какие-нибудь вопросы к обсуждению. Предложите в комментах тему, а я с организаторами отберу интересные и внесу в повестку.
Какие именно темы? Да любые, которые вы, возможно, хотели бы задать практикующим психотерапевтам с точки зрения ИИ.
Думайте.
Есть возможность докинуть какие-нибудь вопросы к обсуждению. Предложите в комментах тему, а я с организаторами отберу интересные и внесу в повестку.
Какие именно темы? Да любые, которые вы, возможно, хотели бы задать практикующим психотерапевтам с точки зрения ИИ.
Думайте.
❤4
Пока носился с больным сыном был в отпуске, пришла в голову гипотеза по прошлой теме диссера. Приехал заболел сам и проверил. Почитать можно здесь.
Astromis notes
Аспирантские флешбеки. Проверяю гипотезу о локальной внутренней размерности как границы сжатия векторного пространства
Data Science, Natural Language Processing, Knowledge
❤2👍1
Forwarded from ПсиТехЛаб
Вчера мы участвовали на конференции психологов «Открытые двери.CONF» в Питере, где мы считались целыми партнерами.
Наш руководитель Игорь участвовал там в обсуждении темы «Искусственный интеллект и психология», а потом они совместно с Нафисой рассказали психологам о нейросетях и как их применяют в психологии.
Как нас занесло в партнеры? Мы с проектом «Открытых дверей» разрабатываем бот-тренажер для психологов: заставляем БЯМ вести себя как определенный тип клиента, с которым у психологов могут возникнуть сложности. Самым «горячим» типом стал агрессивный клиент — матерится, плюётся токсичностью, обвиняет в некомпетентности и т. д. Поскольку «Открытые двери» обучают психологов, им такой инструмент очень в кассу — тренажер позволяет им наработать представление о проблемном типе, чтобы не впасть в ступор при встрече с реальным человеком. На этой конференции мы впервые представили тренажер широкой публике, чтобы собрать обратную связь.
У нас возникла идея. Мы к ним сходили и провели ликбез по нейросетям. Может быть, вам тоже было бы интересно послушать что-нибудь общее про практическую психологию? Да хотя бы про основные направления терапии, в чем их особенности и различия. Голосовалка будет ниже. Если у вас есть другая тема — каменты открыты.
Еще из приятного. Теперь наша работа по эмпатии есть не только как пост, но и как тезис в научном журнале.
Наш руководитель Игорь участвовал там в обсуждении темы «Искусственный интеллект и психология», а потом они совместно с Нафисой рассказали психологам о нейросетях и как их применяют в психологии.
Как нас занесло в партнеры? Мы с проектом «Открытых дверей» разрабатываем бот-тренажер для психологов: заставляем БЯМ вести себя как определенный тип клиента, с которым у психологов могут возникнуть сложности. Самым «горячим» типом стал агрессивный клиент — матерится, плюётся токсичностью, обвиняет в некомпетентности и т. д. Поскольку «Открытые двери» обучают психологов, им такой инструмент очень в кассу — тренажер позволяет им наработать представление о проблемном типе, чтобы не впасть в ступор при встрече с реальным человеком. На этой конференции мы впервые представили тренажер широкой публике, чтобы собрать обратную связь.
У нас возникла идея. Мы к ним сходили и провели ликбез по нейросетям. Может быть, вам тоже было бы интересно послушать что-нибудь общее про практическую психологию? Да хотя бы про основные направления терапии, в чем их особенности и различия. Голосовалка будет ниже. Если у вас есть другая тема — каменты открыты.
Еще из приятного. Теперь наша работа по эмпатии есть не только как пост, но и как тезис в научном журнале.
🔥2👍1