Pull to refresh
1
0.3

Двигатель прогресса

Send message

Революция в клеточной биологии: Применение GPT-4 для РНК-секвенирования

Level of difficultyEasy
Reading time11 min
Views10K

Одноклеточное РНК-секвенирование (scRNA-seq) – метод изучения экспрессионных профилей на уровне отдельных клеток, то есть определения, какие РНК присутствуют в каждой клетке и в каком количестве. Это позволяет ученым понимать, как функционирует каждая клетка и какие функции она выполняет.

Простыми словами: данный метод помогает понять, какие гены в клетке "включены" и "выключены" в данный момент. Это важно, потому что активные гены определяют, как клетка будет себя вести, например, будет ли она здоровой, превратится ли в раковую, поможет ли она иммунной системе бороться с инфекцией и так далее. Таким образом, РНК-секвенирование применяют для разработки лекарств, при изучении болезней и их лечении, а также для того, чтобы понять, как развиваются и функционируют различные живые организмы на уровне их клеток.

Весь процесс достаточно сложный, но как GPT-4 помогает в его осуществлении? Об этом подробно и доступно я расскажу в этой статье!

Приятного прочтения! :)

Читать далее
Total votes 32: ↑31.5 and ↓0.5+31
Comments5

Quantization Deep Dive, или Введение в современную квантизацию

Level of difficultyMedium
Reading time16 min
Views13K

Привет! Меня зовут Василий Землянов, я занимаюсь разработкой ML-инфраструктуры. Несколько лет я проработал в команде, которая делает споттер — специальную маленькую нейросетевую модельку, которая живёт в умных колонках Яндекса и ждёт от пользователя слова «Алиса». Одной из моих задач в этой команде была квантизация моделей. На пользовательских устройствах мало ресурсов, и мы решили, что за счёт квантизации сможем их сэкономить — так в итоге и вышло.

Потом я перешёл в команду YandexGPT. Вместо маленьких моделей я стал работать с очень крупными. Мне стало интересно, как устроена квантизация больших языковых моделей (LLM). Ещё меня очень впечатляли истории, где люди берут гигантские нейросети, квантизируют в 4 бита и умудряются запускать их на ноутбуках. Я решил разобраться, как это делается, и собрал материал на доклад для коллег и друзей. А потом пришла мысль поделиться знаниями с более широкой аудиторией, оформив их в статью. Так я и оказался на Хабре :)

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

Читать далее
Total votes 83: ↑82 and ↓1+81
Comments13

Анонимная P2P-база знаний, где никто не может подделать чужое авторство | Магия асимметричных ключей на практике

Level of difficultyMedium
Reading time31 min
Views10K


На днях, как это обычно и бывает перед сном, мой мозг решил, что было бы очень забавно перед экзаменом не спать, а заняться брейнштормом. Как результат я получил слитую сессию и безумное желание сделать свой P2P WEB 228.0 — ну вы знаете…

Вот вы никогда не задумывались, что Tor является весьма экстраординарным способом преодоления трансляторов сетевых адресов? По сути, он позволяет создавать туннель между двумя любыми удалёнными узлами, находящимися за NAT, выдавая им уникальные onion-адреса из очень большого диапазона.

Аналогичную же задачу решает переход на ipv6, но при этом он требует поддержки со стороны самого транслятора, в то время как Tor абсолютно самостоятелен, хоть он и не является настоящим p2p.

Чисто технически (при должном monkey patch`инге) можно даже заставить его работать как пробрасыватель портов для RDP, онлайн-игр и Vиртуальных Pриватных туннелей, которые нынче нельзя называть.
Читать дальше →
Total votes 59: ↑59 and ↓0+59
Comments32

Шпаргалка для алгособеса — алгоритмическая сложность, структуры данных, методы сортировки и Дейкстра

Level of difficultyMedium
Reading time33 min
Views97K

Привет, Хабр!

Так уж повелось, что любой уважающий себя работодатель перенимает передовые^✻ методики FAANG — по этой причине практически во всех IT-собесах есть она: секция алгоритмов. Кто-то ей рад, кто-то не очень, но секция есть и уходить пока не планирует. Поэтому нужно закатать рукава и достойно встретить суровую реальность.

Читать далее
Total votes 216: ↑214 and ↓2+212
Comments77

Прощайте, базы данных, да здравствуют векторные базы данных

Level of difficultyEasy
Reading time11 min
Views65K

Революция в области искусственного интеллекта переформатирует все отрасли нашей жизни, с одной стороны обещая невероятные инновации, а с другой ー сталкивая нас с новыми вызовами. В безумном потоке изменений эффективная обработка данных становится приоритетом для приложений, на основе больших языковых моделей, генеративного ИИ и семантического поиска. В основе этих технологий лежат векторные представления (embeddings, дальше будем называть их Эмбеддинги), сложные представления данных, пронизанные критической семантической информацией.

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

Читать далее
Total votes 53: ↑51 and ↓2+49
Comments55

Как работают трансформеры: разбираем математику

Level of difficultyMedium
Reading time28 min
Views16K

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

Как вы увидите, математика модели не так уж сложна. Сложность возникает из-за количества этапов и количества параметров. Перед прочтением этой статьи я рекомендую прочитать пост Illustrated Transformer (или читать их параллельно) [перевод на Хабре]. Это отличный пост, объясняющий модель трансформера интуитивным (и наглядным!) образом, поэтому я не буду объяснять то, что уже объяснено в нём. Моя цель заключается в том, чтобы объяснить, как работает модель трансформера, а не что это такое. Если вы хотите углубиться в подробности, то изучите известную статью Attention is all you need [перевод на Хабре: первая и вторая части].

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

Сам себе мобильный интернет. Запускаем базовую станцию стандарта 4G LTE

Level of difficultyHard
Reading time13 min
Views81K
Приветствую всех!

Я уже не раз рассказывал про то, как в домашних условиях поднять сотовые сети разных стандартов. Но всё же все они были уже весьма древними. Самое время замахнуться на кое-что поинтереснее — LTE.



Итак, в сегодняшней статье поговорим о том, что детально в нашем сообществе не описывал практически никто — о том, как запустить базовую станцию самого нового из поддерживаемых большинством телефонов этой страны стандартов. Поговорим об особенностях её работы и о трудностях, с которыми, возможно, придётся столкнуться при запуске. Традиционно будет много интересного.
Читать дальше →
Total votes 370: ↑369 and ↓1+368
Comments156

Почему B-деревья быстрые?

Level of difficultyEasy
Reading time7 min
Views46K

B-дерево — это структура, помогающая выполнять поиск в больших объёмах данных. Она была изобретена более сорока лет назад, однако по-прежнему используется в большинстве современных баз данных. Хотя существуют и более новые структуры индексов, например, LSM-деревья, B-дерево пока никто не победил в обработке большинства запросов баз данных.

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

Читать далее
Total votes 185: ↑184 and ↓1+183
Comments13

Локальные нейросети. Аналог ChatGPT-3.5 на домашнем ПК: OpenChat 7B превосходящая 70B, DeepSeek для кода уровня ChatGPT

Reading time8 min
Views79K

Есть много локальных аналогов ChatGPT, но им не хватает качества, даже 65B модели не могут конкурировать хотя бы с ChatGPT-3.5. И здесь я хочу рассказать про 2 открытые модели, которые всё-таки могут составить такую конкуренцию.

Речь пойдет о OpenChat 7B и DeepSeek Coder. Обе модели за счет размера быстры, можно запускать на CPU, можно запускать локально, можно частично ускорять на GPU (перенося часть слоев на GPU, на сколько хватит видеопамяти) и для такого типа моделей есть графический удобный интерфейс.

И бонусом затронем новую модель для качественного подробного описания фото.

UPD: Добавлена информация для запуска на Windows с ускорением на AMD.

Читать далее
Total votes 107: ↑105 and ↓2+103
Comments87

Fooocus v2 — бесплатный Midjourney у вас на компьютере. Подробная инструкция по установке и использованию нейросети

Level of difficultyEasy
Reading time10 min
Views209K

Друзья, всем привет! Сегодня я хочу рассказать вам про самую простую и доступную для понимания нейросеть, которая создает изображения по вашему текстовому описанию. Она называется Fooocus и основана на знаменитой Stable Diffusion XL. Это идеальное решение в качестве вашей первой нейросети, и необходимый инструмент для любого дизайнера или контент мейкера.

Внутри много тяжелых изображений.

Читать далее
Total votes 120: ↑117 and ↓3+114
Comments216

Вкатываемся в Machine Learning с нуля за ноль рублей: что, где, в какой последовательности изучить

Level of difficultyEasy
Reading time26 min
Views164K

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

Читать далее
Total votes 159: ↑157 and ↓2+155
Comments49

Управление Linux-сервером — самая ценная инвестиция

Level of difficultyEasy
Reading time6 min
Views70K

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

Сейчас это «древнее искусство» вновь стало актуальным. История идёт по кругу — всё старое возвращается в новом виде. Запуск сервера на своём хостинге стал хорошей альтернативой облакам. Этому есть ряд причин, которые мы не будем подробно разбирать, только повторим вкратце: безопасность, свобода, контроль над своими данными, экономия финансов.
Читать дальше →
Total votes 105: ↑101 and ↓4+97
Comments117

Стань героем мемов! Делаем гифки со своим лицом с помощью нейросетей

Level of difficultyMedium
Reading time5 min
Views16K

Друзья, всем привет, сегодня я научу вас как создавать шикарные мемные гифки с вашим лицом с помощью дипфейк нейросети FaceFusion.

Читать далее
Total votes 32: ↑29 and ↓3+26
Comments6

Релиз Bun 1.0 (новый runtime для JavaScript )

Level of difficultyEasy
Reading time12 min
Views35K

Представляем Bun версии 1.0.

Bun — это быстрый и универсальный набор инструментов для запуска, сборки, тестирования и отладки JavaScript и TypeScript кода (от одного файла до fullstack-приложения). Сегодня Bun стабилен и готов к продакшену.

Читать далее
Total votes 89: ↑86 and ↓3+83
Comments117

Как (быстро) сделать русский локальный ChatGPT

Level of difficultyMedium
Reading time7 min
Views36K

Эта история началась в начале марта этого года. ChatGPT тогда был в самом расцвете. Мне в Telegram пришёл Саша Кукушкин, с которым мы знакомы довольно давно. Спросил, не занимаемся ли мы с Сашей Николичем языковыми моделями для русского языка, и как можно нам помочь.

И так вышло, что мы действительно занимались, я пытался собрать набор данных для обучения нормальной базовой модели, rulm, а Саша экспериментировал с существующими русскими базовыми моделями и кустарными инструктивными наборами данных.

После этого мы какое-то время продолжали какое-то время делать всё то же самое. Я потихоньку по инерции расширял rulm новыми наборами данных. Посчитав, что обучить базовую модель нам в ближайшее время не светит, мы решили сосредоточиться на дообучении на инструкциях и почти начали конвертировать то, что есть, в формат инструкций по аналогии с Flan. И тут меня угораздило внимательно перечитать статью.

Читать далее
Total votes 90: ↑89 and ↓1+88
Comments54

Сам себе Linux смартфон: Как я выкинул Android и написал свою прошивку с нуля

Level of difficultyMedium
Reading time17 min
Views68K
image

К огромному сожалению, старые смартфоны всё чаще и чаще находят своё пристанище в мусорном баке. К прошлым, надежным «друзьям» действует исключительно потребительское отношение — чуть устарел и сразу выкинули, словно это ненужный мусор. И ведь люди даже не хотят попытаться придумать какое-либо применение гаджетам прошлых лет! Отчасти, это вина корпораций — Google намеренно тормозит и добивает довольно шустрые девайсы. Отчасти — вина программистов, которые преследуют исключительно бизнес-задачи и не думают об оптимизации приложений совсем. В один день я почувствовал себя Тайлером Дёрденом от мира IT и решил бросить вызов проприетарщине: написать свою прошивку для уже существующего смартфона с нуля. А дабы задачка была ещё интереснее, я выбрал очень распространенную и дешевую модель из 2012 года — Fly IQ245 (цена на барахолках — 200-300 рублей). Кроме того, у этого телефона есть сразу несколько внешних шин, к которым можно подключить компьютер или микроконтроллер, что даёт возможность использовать его в качестве ультрадешевого одноплатника для DIY-проектов. Получилось ли у меня реализовать свои хотелки? Читайте в статье!
Читать дальше →
Total votes 250: ↑248 and ↓2+246
Comments137

За секунды: полировка металлов электричеством

Level of difficultyMedium
Reading time7 min
Views17K

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

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

Дальше мы обзорно поговорим о ней, а желающие смогут задуматься о применении её в своих проектах.
Читать дальше →
Total votes 79: ↑79 and ↓0+79
Comments32

Вскрываем средство для DDoS-атак на российскую ИТ-инфраструктуру

Level of difficultyMedium
Reading time33 min
Views20K

Привет, Хабр! В начале апреля 2023 года на одном из хостов был обнаружен подозрительный файл mhddos_proxy_linux_arm64 (MD5: 9e39f69350ad6599420bbd66e2715fcb), загружаемый вместе с определенным Docker-контейнером. По открытым источникам стало понятно, что данный файл представляет из себя свободно распространяемый инструмент для осуществления распределённой атаки на отказ в обслуживании (DDoS), направленный против российской ИТ-инфраструктуры.

После запуска программа получает все необходимые настройки и автоматически
инициирует массированные сетевые подключения к целевым хостам на различных
уровнях TCP/IP для осуществления отказа в обслуживании.

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

Читать далее
Total votes 78: ↑75 and ↓3+72
Comments42

А что, если сделать Еще Один НеФлиппер?

Level of difficultyEasy
Reading time2 min
Views27K

Я следила за проектом Flipper Zero с самого начала, мне нравилась идея, команда, ее подходы и статьи о куче интересных деталей на Хабре.

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

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

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

В общем, я хочу коробочку на связку ключей, которая работает только в паре с телефоном или компьютером.

И я могу ее сделать.
Total votes 123: ↑104 and ↓19+85
Comments96

Обзор Coroot — Open Source-утилиты для наблюдаемости: установка, настройка, возможности, плюсы и минусы

Level of difficultyMedium
Reading time6 min
Views11K

DevOps- и SRE-командам важно знать как можно больше о работе приложений, за которые они отвечают: как эти приложения работают в разных условиях, как их показатели меняются со временем, в какой точке можно ускорить работу, тем самым улучшив показатели производительности и доступности сервисов. Для всех этих задач важны показатели наблюдаемости (observability). Реализовать наблюдаемость можно при помощи технологии eBPF, которой уже более 10 лет.

Чтобы легко адаптировать статистику eBPF и получать из нее полезную информацию, нужен дополнительный инструмент. Одним из них и является Open Source-решение Coroot. Coroot — это observability-инструмент, который превращает данные телеметрии в полезную информацию, помогая быстро выявлять и устранять проблемы с приложениями. В статье проверим, какие у него есть возможности.

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

Information

Rating
1,829-th
Registered
Activity