Как стать автором
Обновить
75
0.1

Пользователь

Отправить сообщение

Эффективный запуск и инференс LLM на своем сервере с нуля (часть 1)

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров7.2K

Привет, Хабр! На связи CEO команды Compressa AI. Недавно обнаружил для себя крутой базовый курс по эффективному запуску и инференсу LLM моделей от легенды AI мира — Andrew NG и его платформы DeepLearning. Он полностью на английском языке в формате видео, поэтому я осмелился адаптировать его под формат Хабра на русском языке. Знания должны быть доступны всем и в удобной форме, так ведь?

Многие команды (включая и Compressa AI) начинали LLM проекты с использования облачных API. Но по мере развития все больше разработчиков хотят использовать open-source LLM, чтобы экономить на токенах, снижать latency, запускать fine-tuning на собственных данных и в целом меньше зависеть от внешних моделей.

Из этого курса вы узнаете детали эффективного обслуживания и дообучения open-source LLM, включая методы обработки множества запросов от нескольких пользователей. Используя несколько таких методов одновременно, вы можете улучшить как задержку (latency), так и пропускную способность (throughput). Например, благодаря применению последних open-source технологий в своем продукте, мы добились увеличения пропускной способности до 70x на 1 GPU в сравнении с дефолтными Hugging Face & PyTorch.

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

Читать далее
Всего голосов 23: ↑23 и ↓0+27
Комментарии12

Что могут векторные СУБД — open source инструменты & облако

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров5.8K

Разработка систем искусственного интеллекта и обучение моделей подразумевает взаимодействие с огромными сводами неструктурированных данных — например, текстом и изображениями. Решать эту задачу помогают векторные БД. Они работают с так называемыми векторными представлениями (эмбеддингами), имеют продвинутые алгоритмы индексирования и особенно эффективны для реализации поиска по сходству. 

Учитывая популярность темы машинного обучения, новые векторные СУБД появляются чуть ли не каждый день. Мы сделали подборку open source решений, о которых мало рассказывали на Хабре: от крупных проектов вроде Qdrant до малоизвестных продуктов.

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

Читать далее
Всего голосов 17: ↑16 и ↓1+23
Комментарии5

У вас новый ремонт? Лучше! Рисунок нового ремонта. Как мы из Stable Diffusion сделали дизайнера интерьеров

Уровень сложностиСредний
Время на прочтение19 мин
Количество просмотров13K

Сейчас технологии машинного обучения и нейронных сетей находят широкое применение в различных сферах, не исключая дизайн и ремонт помещений. Одной из таких технологий является методы генеративных нейросетей, которые позволяют преобразовывать изображения, сохраняя основные элементы оригинала, но добавляя новые детали и стилистические изменения. Меня зовут Алексей Луговой, я работаю с Computer Vision в Самолете и уже обзорно рассказывал на Хабре, как мы применяем искусственный интеллект в строительстве. Сегодня же углубимся в задачу по созданию генеративной сети для создания проекта ремонта. Рассмотрю процесс использования диффузионных моделей с различными дополнениями на примере не самой обычной задачи — преобразования интерьера комнаты, начав с оригинального изображения голых стен и завершая итоговой генерацией в фирменном дизайнерском стиле.

Читать далее
Всего голосов 29: ↑26 и ↓3+30
Комментарии38

Работаем с PyTorch на CPU

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров5.8K


В этой статье мы рассмотрим железо, настройки, подводные камни и неочевидные вещи, которые позволят выжать всё из вашего процессора для как можно более комфортной работы PyTorch на CPU. Даже если у вас есть видеокарта, поддерживаемая PyTorch, вы сможете увеличить продуктивность компа через распараллеливание нагрузки на CPU и видеокарту.
Поехали!
Всего голосов 36: ↑36 и ↓0+51
Комментарии10

Scrum — рак, убивающий индустрию

Время на прочтение7 мин
Количество просмотров97K

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

Какой?
Всего голосов 191: ↑165 и ↓26+166
Комментарии289

Перформанс ревью: как подготовиться и взять от ежегодной оценки всё возможное

Время на прочтение6 мин
Количество просмотров3.8K

Перформанс ревью (performance review) — система оценки компаниями профессиональных качеств сотрудников. Это – популярный и эффективный инструмент, который используют крупные мировые и отечественные бренды, например, Google, Яндекс и Авито.

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

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

Читать далее
Всего голосов 13: ↑11 и ↓2+11
Комментарии8

[Пятничное] Теория Жоп

Время на прочтение5 мин
Количество просмотров230K

Эту полу-шуточную теорию о проектном управлении я излагал коллегам по ИТ цеху лет 15 назад, и тогда же неоднократно слышал советы загрузить этот текст на Хабр, но руки не дошли. На днях, разгребая старые файлы наткнулся на свои записи и решил все таки поделиться ими с Вами. Частое употребление ключевого слова к сожалению, неизбежно и не отделимо для целостности этого текста, прошу принимать или нет 'as is'. Итак...

Каждая карьера развивается от Жопы к Жопе, и никак иначе. Хочешь повышения - ищи Жопу и принимай, как говорят в Америке, "challenge". Если Вам предлагают возглавить новый проект, либо занять какую то должность, да что угодно - знайте, там Вас ждет Жопа. Иначе не предложили бы, а сами бы справились. Равно как и если Вы ожидаете избавиться от надоевшей Вам сейчас деятельности, надеясь вырваться из "этого ада" и заняться "чем то новеньким" - будьте готовы встретиться с Большой Жопой.

Читать далее
Всего голосов 399: ↑388 и ↓11+473
Комментарии107

Обзор новых Open Source LLM. Или как локально запустить аналог ChatGPT

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров31K

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

Читать далее
Всего голосов 33: ↑32 и ↓1+36
Комментарии47

Компилятор на JavaScript с использованием ANTLR

Время на прочтение19 мин
Количество просмотров17K



В начале этого года я присоединилась к команде, работающей над MongoDB Compass — графическим интерфейсом для MongoDB. Пользователи Compass через Intercom запросили инструмент, позволяющий писать запросы к базе данных, используя любой удобный им язык программирования, поддерживаемый драйвером MongoDB. То есть нам нужна была возможность трансформировать (компилировать) язык Mongo Shell в другие языки и обратно.

Данная статья может стать как практическим руководством, помогающим при написании компилятора на JavaScript, так и теоретическим ресурсом, включающим основные понятия и принципы создания компиляторов. В конце приведен не только полный список всех используемых при написании материалов, а также ссылки на дополнительную литературу, направленную на более глубокое изучение вопроса. Информация в статье подается последовательно, начиная с исследования предметной области и далее постепенно усложняя функционал разрабатываемого в качестве примера приложения. Если во время прочтения вам кажется, что вы не улавливаете переход от одного шага к другому, вы можете обратиться к полной версии данной программы и возможно это поможет устранить возникший пробел.
Читать дальше →
Всего голосов 16: ↑15 и ↓1+14
Комментарии3

Префиксы is, has, can, should… в нейминге переменных и функций

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров24K

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

Читать далее
Всего голосов 70: ↑66 и ↓4+71
Комментарии56

Векторные базы данных: простым языком про устройство и принцип работы

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров22K

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

Читать далее
Всего голосов 30: ↑29 и ↓1+35
Комментарии16

Кто же такая это ваша LoRA

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров47K

В сети в последнее время регулярно мелькают статьи типа - как обучить Stable Diffusion генерировать ваши фотографии/фотографии в определенном стиле/фотографии определенного лора/такие фотографии итп.

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

Читать далее
Всего голосов 32: ↑30 и ↓2+35
Комментарии18

Портативное прототипирование электроники

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров8.7K

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

Читать далее
Всего голосов 42: ↑41 и ↓1+58
Комментарии28

Как запустить Mixtral на своём компьютере

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров12K

Всякий раз, когда выходит новая хорошая публичная ИИ модель, Хабр наполняется вопросами "Как нам её попробовать" и неправильными ответами, будто нужно платить за какие-то сервисы или иметь железа на сто лямов. Поэтому я вновь напишу инструкцию, как запустить новейший mixtral-8x7 на обычных средних компьютерах.

Читать далее
Всего голосов 8: ↑8 и ↓0+8
Комментарии7

Создаем изометрические уровни игры с помощью Stable Diffusion

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров23K

Всем привет. Сегодня я покажу вам, как можно создавать 2.5D уровни в изометрии с помощью быстрого прототипирования техникой grayboxing, и генеративного искусственного интеллекта, а именно Stable Diffusion. Практически весь процесс, описываемый в статье, довольно легко автоматизируется.

Если интересно, добро пожаловать под кат.

Читать далее
Всего голосов 75: ↑75 и ↓0+84
Комментарии27

Как создать ассистента для поиска по видео

Время на прочтение9 мин
Количество просмотров1.6K

Всем привет! Меня зовут Георгий, я старший разработчик‑исследователь в MTS AI. Одной из задач, которыми я занимаюсь в компании, является умная видеоаналитика. Это мощный инструмент, особенно с учетом современных технологий искусственного интеллекта, который может использоваться во многих отраслях: от торговли до обслуживания клиентов.

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

Тем не менее представьте, что можно создать общую систему видеоаналитики, которая заранее не настроена на определенные события. Она гибкая и умеет понимать задачи во время общения с пользователем. Запросы могут быть разнообразными, например: «предупреди меня, если в кадре произойдет ЧП, например, пожар или драка» или «я хочу найти кадры с желтыми автомобилями такси».

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

Читать далее
Всего голосов 11: ↑11 и ↓0+11
Комментарии1

Популярные алгоритмы машинного обучения. Теоретические основы и реализация с нуля на Python

Уровень сложностиСложный
Время на прочтение1 мин
Количество просмотров35K

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

Читать далее
Всего голосов 22: ↑22 и ↓0+22
Комментарии21

Разработка цифровой аппаратуры нетрадиционным методом: Yosys, SpinalHDL, VexRiscv (ч.1)

Уровень сложностиСложный
Время на прочтение127 мин
Количество просмотров12K

Основная прелесть использования ПЛИС, на мой взгляд, состоит в том, что разработка аппаратуры превращается в программирование со всеми его свойствами: написание и отладка кода как текста на специализированных языках описания аппаратуры (HDL); код распространяется в виде параметризованных модулей (IP-блоков), что позволяет его легко переиспользовать в других проектах; распределенная разработка обширным коллективом разработчиков с системой контроля версий, такой же, как у программистов (Git); и, как и в программировании, ничтожно низкая стоимость ошибки.

Последнее очень важно, так как если при разработке устройства классическим методом разработчик несет вполне существенные затраты на сборку и производство изделия, и любая схемотехническая ошибка или ошибка трассировки печатной платы — это всегда выход на очередную итерацию и попадание на деньги, то при работе с ПЛИС ошибки ничтожны по своей стоимости и легко устранимы. И даже если в серийном изделии обнаруживается ошибка, то её во многих случаях можно устранить очередным апгрейдом прошивки «в поле» без замены изделия. Короче, с приходом ПЛИС разработка цифровой аппаратуры все больше и больше выглядит как программирование, а это, помимо всего прочего, существенно понижает порог вхождения в тему, и все больше программистов становятся разработчиками «железа». А новые люди, в свою очередь, приносят с собой в индустрию новые подходы и принципы.

В этой статье я хочу поделиться своим небольшим опытом «программирования» микросхем ПЛИС и тем, как я постепенно погружался в тему ПЛИСоводства. Изначально я собирался написать небольшую заметку про открытый тулчейн для синтеза Yosys. Потом — про язык SpinalHDL и синтезируемое микропроцессорное ядро VexRiscv, на нём написанное. Потом — про замену микроконтроллеров микросхемами ПЛИС на примере моей отладочной платы «Карно». Но в процессе я погрузился в историю появления Hardware Description Languages (HDL), и когда я начал писать, Остапа, как это часто бывает, понесло... В общем, получилось то, что получилось.

А еще эту статью можно рассматривать как глубокое погружение в то, что происходит вот на этом новогоднем видео.

Погрузиться сполна
Всего голосов 42: ↑41 и ↓1+58
Комментарии65

Как распаковать айтишника и настроить цикл управления знаниями

Время на прочтение10 мин
Количество просмотров6.5K

О преимуществах управления знаниями уже много написано, но вот выстраивание этого процесса — настоящий вызов...

Привет, Хабр! Меня зовут Лена, я архитектор продуктовых знаний. В этом тексте я сосредоточусь на тиражировании знаний и расскажу, как их эффективно «перекладывать» из голов экспертов. Также разберу реальный кейс Selectel — технический курс по сетям для всех сотрудников компании. Подробности под катом!
Читать дальше →
Всего голосов 30: ↑29 и ↓1+37
Комментарии4

Надежный обход блокировок в 2024: протоколы, клиенты и настройка сервера от простого к сложному

Уровень сложностиСредний
Время на прочтение46 мин
Количество просмотров241K

Поскольку блокировки интернета в РФ в последние недели и месяцы многократно активизировались, а маразм все крепчает и крепчает, стоит еще раз поднять тему обхода этих самых блокировок (и делаем ставки, через сколько дней на эту статью доброжелатели напишут донос в РКН чтобы ограничить к ней доступ на территории страны).

Вы, наверняка, помните отличный цикл статей на Хабре в прошлом году от пользователя MiraclePtr, который рассказывал о разных методах блокировок, о разных методах обхода блокировок, о разных клиентах и серверах для обходов блокировок, и о разных способах их настройки (раз, два, три, четыре, пять, шесть, семь, восемь, десять, десять, и вроде были еще другие), и можете спросить, а зачем еще одна? Есть две основные причины для этого.

Читать далее
Всего голосов 445: ↑437 и ↓8+489
Комментарии371

Информация

В рейтинге
3 070-й
Зарегистрирован
Активность