Pull to refresh
0
0
Send message

Как ускорить LLM-генерацию текста в 20 раз на больших наборах данных

Reading time7 min
Views6.6K

Всем привет, я Алан, разработчик-исследователь в MTS AI. В команде фундаментальных исследований мы занимаемся исследованием LLM, реализацией DPO и валидацией наших собственных языковых моделей. В рамках этих задач у нас возникла потребность в генерации большого количества данных с помощью LLM. Такая генерация обычно занимает много времени. Однако за последний год, с ростом популярности LLM, стали появляться различные инструменты для развертывания таких моделей. Одной из самых эффективных библиотек для инференса языковых моделей является библиотека vLLM. В статье показывается, как с помощью асинхронных запросов и встроенных особенностей vLLM можно увеличить скорость генерации примерно в 20 раз. Приятного чтения!

Читать далее
Total votes 18: ↑17 and ↓1+16
Comments0

InstantID: Создание персонализированных изображений по одному фото. И лучший бесплатный генератор нейро-аватарок

Level of difficultyEasy
Reading time8 min
Views19K

Друзья, всем привет, вышла в свет новая удивительная технология, на гите она подписана как InstantID : Zero-shot Identity-Preserving Generation in SecondsНо по факту это самый крутой генератор аватарок в мире, который по одной лишь вашей фотографии может создать персонализированное изображение с вашим лицом в любом стиле по текстовому запросу используя SDXL модели Stable Diffusion. Так что к концу этой статьи, у вас так же как и у меня будет десяток новых аватарок и совершенно бесплатно.

В статье много красивых и тяжелых картинок.

Читать далее
Total votes 51: ↑47 and ↓4+43
Comments18

Как обучить нейросеть рисовать в стиле любого художника

Level of difficultyMedium
Reading time4 min
Views16K

Прошло 3 года с момента когда я обучал StyleGAN на панельках и мне стало интересно что там сейчас с генерацией картинок. А там - ого - можно дообучить целый stable diffusion на любом стиле любого художника! Как? А вот щас расскажу

Читать далее
Total votes 36: ↑31 and ↓5+26
Comments12

Stable Diffusion: text-to-person

Level of difficultyEasy
Reading time35 min
Views27K

Многие из вас сталкивались со Stable Diffusion и знают, что с помощью этой нейросети можно генерировать разнообразные изображения. Однако не всем интересно создавать случайные картинки с кошкодевочками, пускай даже и красивыми, и всем прочим. Согласитесь, было бы гораздо интереснее, если бы можно было обучить нейросеть создавать изображения... нас самих? Или наших любимых актёров и музыкантов? Или наших почивших родственников? Конкретных людей, в общем, а не какие-то собирательные образы из того, что было заложено при обучении нейросети. И для достижения этой цели нам потребуется обучить некую модель. Этим мы и займёмся, пытаясь определить наиболее оптимальный воркфлоу и максимально его автоматизировать.

Читать далее
Total votes 30: ↑30 and ↓0+30
Comments29

Визуальное RPG с долговременной памятью, генерируемое из 3 нейросетей и LLamы

Level of difficultyEasy
Reading time17 min
Views12K

Языковые модели (NLP) сейчас активно развиваются и находят себе всё больше интересных применений. Начиналась же их эпоха с классики жанра — D&D. Это настольная игра, где несколько друзей или просто знакомых синхронно галлюцинируют, представляя себя командой героев в некоем вымышленном мире. Прав же во внутриигровых выборах тот, кто выкинул большее число на игральной кости. Судить сейчас об их мотивации у меня нет никакого желания, да и статья вообще-то не об этом.

Важно только понимать, что движущей силой сюжета в их сессиях является лишь один из игроков, называемый Dungeon Master. Когда только начали появляться первые GPT-модели, одной из первых хотелок гиков оказалось желание сварить из нейросетей автоматического Dungeon Masterа.

Так и появился AIDungeon — уникальная для своего времени (2019 год) вещь, которая не сильно потеряла в популярности и по сей день. Однако, если вы любите смотреть глубже, то играть в него вам быстро надоест. Я же в своей серии из нескольких статей (посвящённых GPT) стараюсь показать простому обывателю механизм безболезненного использования нейросетевых моделей в простых проектах при помощи Python и Hugging Face Transformers.
Приступим
Total votes 64: ↑64 and ↓0+64
Comments11

Стабильная диффузия для самых маленьких. Или строим свою собственную ярмарку с хороводом и скоморохами

Reading time12 min
Views19K

Волшебный сказ с лубочными картинками.

Далеко ли, близко ли, высоко ли, низко ли, а летает нонче в небе жар-птица павлин из самого из города Муничинска. И где перо она потеряет, там картинки лубочные множатся, да не на бересте, а на бумаге белёной, да все больше с девками грудастымя вида неблагонравного, да воинами суровыми из земель былинных. Вельми старательно те лубки выведены, хотя с перстами иногда и перебор случается. Смотрит народ на картинки те и только губами причмокивает, да крестятся православные на земные чудеса удивляючись.

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

Дисклеймер: Не беспокойтесь. С Wednesday все в порядке. Пострадала только косичка и потом, мы же с вами знаем что это не её кровь.

Гужевые декавильки без городовых и сапёров
Total votes 31: ↑28 and ↓3+25
Comments10

Cнова про llvm

Reading time4 min
Views4.9K

Исследования любого приложения достаточно рутинный и длительный процесс. Без использования инструментов и автоматизации разобрать даже самые простые алгоритмы написанные на некоторых языках программирования практически невозможно. (Go рантайм без символов). Справиться с этой тяжелой задачей и предоставить набор инструментов могут следующие приложения:

- Hopper
- IDA Pro
- Ghidra
- radare2
- rizin

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

Читать далее
Total votes 14: ↑13 and ↓1+12
Comments0

Ещё 20+ игр, которые прокачивают логику, алгоритмы и радуют умный мозг [по следам комментариев на Habr]

Reading time9 min
Views118K
image

Я выложила вчера подборку «15 игр, которые прокачивают логику, алгоритмы, ассемблер и силу земли». И столько классных ссылок в комментарии накидали, что я чуток опухла, но сделала отдельную подборку, по горячим следам. Спасибо большое всем, кто внес свой вклад.

Еще я веду канал в Telegram: GameDEVils, делюсь там клевыми материалами (про геймдизайн, разработку и историю игр).
Читать дальше →
Total votes 83: ↑82 and ↓1+81
Comments59

Применение биполярных транзисторов с микроконтроллерами

Level of difficultyMedium
Reading time10 min
Views45K

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

Читать далее
Total votes 100: ↑100 and ↓0+100
Comments77

Прошивка Wi-Fi-модуля Realtek и разработка Intel 8051-кейлоггера с применением технологии RealWoW

Reading time13 min
Views10K
В прошлый раз я рассказывал об исследовании прошивки встроенного контроллера моего ноутбука. Сегодня я займусь исследованием прошивки Wi-Fi-модуля, подключённого к тому же ноутбуку.


Читать дальше →
Total votes 38: ↑37 and ↓1+36
Comments2

Zynq. Передача данных между процессорным модулем и программируемой логикой

Reading time19 min
Views17K
Как и обещал в предыдущей статье (Что такое Zynq? Краткий обзор), поговорим о передаче данных между процессорным модулем и программируемой логикой. В предыдущей статье упоминалось четыре способа передачи данных, в статье будут рассмотрены два способа, которые нашли большее применение. Подробности под катом. Осторожно, много картинок!
Читать дальше →
Total votes 23: ↑22 and ↓1+21
Comments13

Есть ли параллелизм в произвольном алгоритме и как его использовать лучшим образом

Reading time15 min
Views6.7K

Параллелизации обработки данных в настоящее время применяется в основном для сокращения времени вычислений путем одновременной  обработки данных по частям на множестве различных вычислительных устройств с последующим объединением полученных результатов. Параллельное выполнение позволяет “обойти” сформулированный лордом Рэлеем в 1871 г. фундаментальный закон, согласно которому (в применимости к тепловыделению процессоров) мощность их тепловыделения пропорциональна четвертой степени тактовой частоты процессора (увеличение частоты вдвое повышает тепловыделение в 16 раз) и фактически заменить его линейным от числа параллельных вычислителей – при сохранении тактовой  частоты). Ничто не дается даром – задача выявления (обычно скрытого для непосвящённого наблюдателя, [1]) потенциала параллелизма в алгоритмах не является "лежащей на поверхности", а уж эффективность его (параллелизма) использования – тем более.

Далее читать
Total votes 14: ↑13 and ↓1+12
Comments38

Экосистема Low-Code решений

Reading time8 min
Views21K
image

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

Я бы хотел рассмотреть, что это за инструменты, как именно они помогают, и какие выглядят наиболее многообещающе.
Читать дальше →
Total votes 4: ↑4 and ↓0+4
Comments0

Ищем уязвимости в UC Browser

Reading time24 min
Views7K

Введение


В конце марта мы сообщали, что обнаружили скрытую возможность загрузки и запуска непроверенного кода в UC Browser. Сегодня разберём подробно, как эта загрузка происходит и как хакеры могут использовать её в своих целях.

Некоторое время назад UC Browser рекламировали и распространяли очень агрессивно: его устанавливали на устройства пользователей с помощью вредоносных программ, распространяли с различных сайтов под видом видеофайлов (т. е. пользователи думали, что качают, например, порноролик, а получали вместо него APK с этим браузером), использовали пугающие баннеры с сообщениями о том, что браузер устарел, уязвим и всё в таком духе. В официальной группе UC Browser в VK есть тема, в которой пользователи могут пожаловаться на недобросовестную рекламу, там много примеров. В 2016 году была даже видеореклама на русском языке (да, реклама браузера, блокирующего рекламу).

На момент написания статьи у UC Browser набралось более 500 000 000 установок в Google Play. Это впечатляет — больше только у Google Chrome. Среди отзывов можно увидеть достаточно много жалоб на рекламу и редиректы на какие-то приложения в Google Play. Это и стало поводом к исследованию: мы решили посмотреть, не делает ли UC Browser что-то нехорошее. И оказалось, что таки делает!
Читать дальше →
Total votes 25: ↑23 and ↓2+21
Comments7

Пишем простой модуль Magisk для Android

Reading time2 min
Views15K

Введение


Одним вечером я устал менять TTL после перезагрузки устройства и подумал как можно было бы делать это автоматически. Android же Linux и на нем должен быть аналог systemd или он сам. В процессе исследований мой взор пал на Magisk.


На удивление разработать модуль для него было очень просто.

Читать дальше →
Total votes 10: ↑10 and ↓0+10
Comments3

Вычисление 2D-коллизий: алгоритм Гилберта — Джонсона — Кирти

Reading time11 min
Views21K
image

Я занялся изучением процессов распознавания коллизий, и это привело меня к алгоритму Гилберта — Джонсона — Кирти (Gilbert-Johnson-Keerthi, GJK).

Все примеры кода в посте написаны на TypeScript. В примерах используются созданные мной структуры, которые подробно в посте не рассмотрены. Они просты и их можно посмотреть в репозитории GitHub:

  • Vector
  • IShape
  • Collision

Весь код из поста хранится в репозитории GitHub:

https://github.com/jthomperoo/gjk-ts-implementation

Пост написан на основании этой статьи и рекомендованного в ней видео:


Введение


GJK — это алгоритм, предназначенный для определения пересечения двух выпуклых фигур. Он прост и реализуется при помощи обобщённой «вспомогательной функции», позволяющей использовать более общий подход — аналогичным образом можно обрабатывать многоугольники и фигуры, состоящие из кривых, например, эллипсы.
Читать дальше →
Total votes 32: ↑32 and ↓0+32
Comments14

Тarantool Cartridge: шардирование Lua-бекенда в три строчки

Reading time9 min
Views12K


У нас в Mail.ru Group есть Tarantool — это такой сервер приложений на Lua, который по совместительству ещё и база данных (или наоборот?). Он быстрый и классный, но возможности одного сервера всё равно не безграничны. Вертикальное масштабирование тоже не панацея, поэтому в Tarantool есть инструменты для горизонтального масштабирования — модуль vshard [1]. Он позволяет шардировать данные по нескольким серверам, но придётся повозиться, чтобы его настроить и прикрутить бизнес-логику.

Хорошие новости: мы собрали шишек (например [2], [3]) и запилили очередной фреймворк, который заметно упростит решение этой проблемы.

Тarantool Cartridge — это новый фреймворк для разработки сложных распределённых систем. Он позволяет сфокусироваться на написании бизнес-логики вместо решения инфраструктурных проблем. Под катом я расскажу, как этот фреймворк устроен и как с его помощью писать распределённые сервисы.
Читать дальше →
Total votes 68: ↑67 and ↓1+66
Comments6

Почему сериал «Чернобыль» настолько плохо описал ядерную энергию

Reading time9 min
Views101K

Нет, чернобыльская радиация не навредила вашему ребёнку

Статья Майкла Шелленбергера – известного автора и колумниста, пишущего про энергию и окружающую среду.

С начала мини-сериала «Чернобыль» от HBO, рассказывающего о ядерной катастрофе 1986 года, журналисты расхваливали его за точность воспроизведения фактов и событий, даже несмотря на то, что его создатели допустили некие творческие вольности.

«Первое, что нужно понять насчёт мини-сериала „Чернобыль“ от HBO, — писал журналист из The New York Times, — то, что довольно многое является выдумкой. Однако другое, и более важное его свойство: это не так уж и важно». Журналист отметил ту же неточность, что и я в прошлой статье на ту тему: «жертвы радиации часто по какой-то причине оказываются испачканными кровью».

Однако «базовые вещи HBO показала правильно»,- пишет он, а именно то, что Чернобыль – «это больше тема лжи, предательства и прогнившей политической системы, чем вопросы того, хорошая или плохая ядерная энергия в принципе».
Total votes 183: ↑142 and ↓41+101
Comments701

Камеры глубины — тихая революция (когда роботы будут видеть) Часть 1

Reading time15 min
Views51K



Недавно я описывал, благодаря чему роботы завтра начнут НАМНОГО лучше соображать (пост про аппаратное ускорение нейросетей). Сегодня разберем, почему роботы скоро будут НАМНОГО лучше видеть. В ряде ситуаций намного лучше человека.

Речь пойдет про камеры глубины, которые снимают видео, в каждом пикселе которого хранится не цвет, а расстояние до объекта в этой точке. Такие камеры существуют уже больше 20 лет, однако в последние годы скорость их развития выросла многократно и уже можно говорить про революцию. Причем многовекторную. Бурное развитие идет по следующим направлениям:
  • Structured Light камеры, или камеры структурного света, когда есть проектор (часто инфракрасный) и камера, снимающая структурный свет проектора;
  • Time of Flight камеры, или камеры, основанные на измерении задержки отраженного света;
  • Depth from Stereo камеры — классическое и, пожалуй, наиболее известное направление построения глубины из стерео;
  • Light Field Camera — они же камеры светового поля или пленоптические камеры, про которые был отдельный подробный пост;
  • И, наконец, камеры, основанные на Lidar-технологиях, особенно свежие Solid State Lidars, которые работают без отказа примерно в 100 раз дольше обычных лидаров и выдают привычную прямоугольную картинку.

Кому интересно, как это будет выглядеть, а также сравнение разных подходов и их текущее и завтрашнее применение — добро пожаловать под кат!
Читать дальше →
Total votes 82: ↑82 and ↓0+82
Comments40
1
23 ...

Information

Rating
Does not participate
Registered
Activity