Как стать автором
Обновить
35
0.1
Алексей @iwram

Системный администратор

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

Обратный инжиниринг дешевой мини видеокамеры из семейства А9

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

В данной статье речь пойдет о Wi-Fi мини видеокамере из семейства А9 от китайских производителей. Цель исследования этих камер – расширить возможность их применения, которая ограничена использованием только стандартных приложений для мобильных устройств на базе Android или iOS.

По итогу представлен некоторый анализ дампа сетевого трафика между камерой и мобильным приложением, а на его основе предложен работающий код на Python.

Читать далее
Всего голосов 32: ↑37.5 и ↓-5.5+43
Комментарии27

Как мы тестировали большие языковые модели для модерации отзывов

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

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

Рассказываем о том, как мы попробовали применять большие языковые модели, чтобы автоматизировать модерацию отзывов. 

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

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

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

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

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

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

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

Читать далее
Всего голосов 32: ↑31.5 и ↓0.5+31
Комментарии5

Open Source в российском ИИ: исследование ландшафта

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

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

Это исследователи из NSS Lab ИТМО и создатели сообщества ITMO.OpenSource. Мы считаем, что важно делать не просто науку, а открытую науку, результатами которой можно легко воспользоваться. Поэтому пишем об открытом коде, проводим митапы «Scientific Open Source» и разрабатываем научные решения с открытым кодом. Эта статья написана на материале исследования, которое мы презентовали на последнем митапе. В ней поговорим об открытом научном коде, посмотрим, как с ним обстоят дела в разных организациях, и поделимся подборкой репозиториев, которые могут решать различные научные задачи.

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

Рекуррентные сети против трансформеров

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

Или история о том, как научная статья "Вам нужно только внимание..." немного перевернула игру и индустрию ИИ. 

Трансформеры становятся сотами или попросту попадают в самые последние решения сферы NLP. Кстати, заслужили свою популярность они вообще недавно — только в 2017 году, когда курс доллара был 60 рублей, а для ТГ-каналов с новыми ИИ не исчислялись тысячами.

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

Алгоритм Diffie-Hellman: Пишем приватный мессенджер на Go

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

Это продолжение прошлой статьи про данный алгоритм. Где я рассказывал про возможность общения между двумя пользователями без прямого обмена ключом шифрования.

Я уже описывал идею создания прозрачного Open-Source мессенджера на основе этого алгоритма и хочу представить вам его самую простую реализацию с примерами кода.

Кода будет много...

Читать далее
Всего голосов 16: ↑14 и ↓2+12
Комментарии4

ClickHouse как бэкенд для Prometheus

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

Привет! Меня зовут Михаил Кажемский, я Lead DevOps в IT‑интеграторе Hilbert Team. В последнее время к нам часто обращаются заказчики, которым нужна помощь с организацией хранения долгосрочных метрик в российских облаках. Так как для многих эта задача сейчас актуальная, в данной статье мы с моим коллегой Денисом Бабичевым решили рассказать, как мы используем мощные возможности ClickHouse для эффективного долгосрочного хранения метрик Prometheus. В статье вы найдете рекомендации по использованию инструмента и описание альтернативных решений, таких как Thanos, Grafana Mimir и Victoria Metrics.

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

Вы за это заплатите! Цена Чистой Архитектуры. Часть 2

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

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

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

Итак, продолжим.

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

Тормозящая виртуализация на x86. Небольшая попытка разобраться. Часть 3: Hyper-V

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

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

Часть 3. Что из этого следует, и как устроен планировщик нормального человека в Hyper-V. Тут не будет ничего нового для тех, кто открывал документацию про корневой раздел (root partition)

Читать далее
Всего голосов 38: ↑27 и ↓11+16
Комментарии5

Кластеризация в ML: от теоретических основ популярных алгоритмов к их реализации с нуля на Python

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

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

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

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

Путь Nvidia. Как компания, которая чуть не закрылась после первого чипа, стала «главной по мощностям»

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

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

Читать далее
Всего голосов 56: ↑54 и ↓2+52
Комментарии28

Как стать VPN провайдером за один вечер

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

Рассказываю о своём опыте использования Xray (с протоколом VLESS-Reality) - одного из лучших решений для преодоления интернет-цензуры на сегодняшний день. Я потратил много времени на то, чтобы разобраться с ним - теперь вам достаточно одного вечера, чтобы поднять свой сервер на несколько десятков пользователей, c xray на борту!

скрипт ex.sh для простой настройки и установки; есть поддержка Docker

легко добавлять пользователей; клиентские конфиги в форме url-ссылок

правильные конфиги: скрытность + удобство

трафик популярных российских сайтов идёт напрямую, a не через сервер

для xray есть приложения под все популярные ОС - делюсь инструкциями

только https, нет udp; торренты через сервер блокируются по возможности

мой проект на гитхабе: easy-xray

Интересны детали? Добро пожаловать под кат
Всего голосов 71: ↑70 и ↓1+69
Комментарии142

Тонкая настройка Whisper для многоязычного ASR с помощью Hugging Face Transformers

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

Предлагается пошаговое руководство по дообучению Whisper для любого многоязычного набора данных ASR с использованием Hugging Face 🤗 Transformers. Эта заметка содержит подробные объяснения модели Whisper, набора данных Common Voice и теории дообучения, а также код для выполнения шагов по подготовке данных и дообучению. Для более упрощенной версии с меньшим количеством объяснений, но со всем кодом, см. соответствующий Google Colab.

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

Как я перестал бояться и вышел в Интернет со своей IPv6-сетью

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

Для личных нужд я использую bare-metal сервер от Hetzner, порезанный на виртуалки и, с недавних времен, VPS на HostHatch для мониторинга и резервирования. Также есть маленькая ВМка у TietoKettu (для ВПН, экспериментов и прочее).

Так как IPv4-адресов мало, то хостинги обычно дают дополнительные айпишки за дополнительные деньги, а вот IPv6-сети выделяют щедро. Изначально, я объединил все виртуалки, у которых был публичный IPv4-адрес в Wireguard mesh сеть, но потом когда выяснилось, что надо бы присоединить ещё одну ВМку, пришлось переделать mesh на IPv6-адреса и тут понеслось...

Сначала выяснилось что у HostHatch нет связности с ElmoNet (TietoKettu использует их адреса), после недели-двух бодания с техподдержкой HostHatch-a связность появилась. Однако недели две назад от них приходит письмо, о техобслуживании нод, где живут мои ВМки. И что вы думаете? После обслуживания туннель до этих ВМок так и не восстановился. В итоге, оказалось что обе вмки исчезли их IPv6-интернета. На этот раз связность починили только через 3 дня, хотя я создал срочный тикет.

В итоге, я перевёл туннели обратно на IPv4 и переключился на DN42, но в один выходной мне на глаза попалась статья на Reddit и я решил воскресить идею о "своем" куске Интернета. Масла в огонь подбавил Vultr, который наглухо заблокировал доступ на свои ресурсы (даже IP calculator) с Hetzner.

В одном из комментов, к вышеупомянутой статье, была ссылка на IPv6-сообщество в Discord. Я присоединился и стал задавать много вопросов в канале #asn-newbies.

Думаю, что кому-нибудь мой опыт и набитые шишки будет полезен. Если это так, то прошу под кат.

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

Архитектура современных приложений на основе LLM

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

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

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

Практика Go — Обработка ошибок (1 часть)

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

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

Однако я пришёл к выводу, что единого способа обработки ошибок не существует. Вместо этого я считаю, что работу с ошибками в Go можно разделить на три основные стратегии.

Читать далее
Всего голосов 6: ↑3 и ↓30
Комментарии19

LVM+QCOW2, или Попытка создать идеальный CSI-драйвер для shared SAN в Kubernetes

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

Несколько месяцев назад у нас появилась необходимость разработать CSI-драйвер для Kubernetes, который в первую очередь использовался бы для хранения дисков виртуальных машин в Deckhouse Virtualization, но также мог бы использоваться и со стандартными контейнерами в Kubernetes. У оборудования наших заказчиков, как правило, есть определенная специфика — чаще всего это классическая SAN (Storage Area Network) с внешним хранилищем и общим shared LUN, который выделяется на несколько узлов. На одном LUN одновременно работает несколько виртуальных машин или контейнеров.

Помимо всего прочего, от драйвера нам требовалась поддержка различных CoW-фичей, таких как снапшоты, thin provisioning и возможность выполнять live-миграцию виртуальных машин в Kubernetes. Из существующих решений можно было бы отметить некоторые свободные проекты, однако ни один из них не реализует все желаемые фичи. Кроме того, у них есть явные проблемы с масштабированием.

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

Через реки, через лес прямо к PowerDNS

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

Всем привет! Меня зовут Максим, я руководитель одной из групп эксплуатации инфраструктурных сервисов в Ozon. Наша команда занимается поддержкой и развитием нескольких базовых сервисов компании, одним из которых, по историческим причинам, является сервис разрешения доменных имен (DNS).

В Ozon много различных сервисов и систем. Они общаются друг с другом и внешним миром по доменным именам. DNS — центральное звено, без которого не обходится почти ни одна инфраструктура. Понятно, что когда DNS отдаёт некорректные данные, то это неприятно, когда таймаутит — плохо, когда прилёг — очень плохо, когда прилёг надолго — в принципе, можно расходиться. Значит, одна из основных задач команды инфраструктуры — обеспечить сервисам надёжное и, желательно, быстрое разрешение доменных имён. Об этом мы и поговорим. Также затронем вопросы управления ресурсными записями, жизнь в Multi DC-среде, обслуживание DNS, кеширование, журналирование запросов и возможные проблемы.

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

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

Пособие по программированию модулей ядра Linux. Ч.4

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

Перед вами очередной фрагмент последней версии руководства по написанию модулей ядра от 2 июля 2022 года. Тема этой части — системные вызовы. В ней вы познакомитесь с этим понятием на примере создания собственной функции для открытия файлов, которая будет подменять собой исходную sys_open, а также следить за конкретным пользователем, информируя нас об открываемых им файлах.
Читать дальше →
Всего голосов 35: ↑35 и ↓0+35
Комментарии0

Лучшие Проекты Для Начинающих Python-Разработчиков

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

Чтобы научиться ходить – надо ходить, чтобы научиться подтягиваться – надо подтягиваться, чтобы научиться решать задачи по физике – надо решать задачи по физике. Так говорил преподаватель физики в моём университете, и эта аналогия применима и к программированию.

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

Цель данного "топа" – это не создание самого оригинального портфолио и не перечисление уникальных проектов. Цель статьи разобраться в простых вещах, технологиях и темах, которые помогут развить практические навыки программирования. Поэтому не стоит ждать здесь сборку Оптимуса Прайма, программирование Звезды смерти и создание двигателя на китовом жире. Мы пройдёмся по простым, но в тоже время базовым вещам. Ведь как говорил один мой приятель: «Всё великое начинается с малого».

Читать далее
Всего голосов 31: ↑28 и ↓3+25
Комментарии43
1
23 ...

Информация

В рейтинге
2 856-й
Откуда
Красноярск, Красноярский край, Россия
Дата рождения
Зарегистрирован
Активность