Pull to refresh
-1
0.1
Send message

Transfer learning: подробный гайд для начинающих

Level of difficultyMedium
Reading time13 min
Views7.1K

Вместе с Марией Жаровой, Data Scientist в Альфа-Банк, подготовили гайд по трансферному обучению.

Разбираем основные принципы, механизмы и инструменты TL, рассказываем, где и как его используют, и даем конкретные кейсы для тренировки.

Читать далее

Использование ответов OpenAI API в формате JSON: Введение

Level of difficultyMedium
Reading time9 min
Views5.6K

Тема использования JSON в ответах OpenAI API звучала в анонсах примерно год назад и до некоторой степени описана в документации. В частности, Сэм Альтман на презентации одного из крупных релизов говорил о том что о такой фиче активно просили разработчики. Однако с тех пор мне не удалось найти целостных описаний решений, сценариев и паттернов, которые выглядели бы как практически полезные и на основе которых можно было бы быстро составить целостное понимание. Те материалы, которые попадались мне до сих пор, показались мне довольно абстрактными, недостаточно целостными, оторванными от реальности, иногда перегруженными техническими подробностями, за которыми теряется общая картина.

Вчера (6 августа) OpenAI выпустила обновление этого функционала и вместе с ним заметно обновила и дополнила документацию в этой части. С одной стороны, в новой версии документации стало больше конкретных и наглядных примеров. С другой, - в дополнение к понятию Function calling добавилось еще новое понятие Structured Outputs, которое для начинающего пользователя на первых шагах может усложнить понимание.

В этой статье я хотел на небольшом примере дать краткий поверхностный обзор того как, на мой взгляд, можно задействовать JSON-ответы для конкретной задачи. Сразу скажу, что мой пример оказался крайне примитивным (чуть сложнее чем "Hello, World!"). Я старался достичь наглядности за счет демонстрации всего цикла от идеи "продукта", до его рабочего прототипа. Свою задачу я реализовал в трех вариантах (по мере возрастания сложности): "Чат без Function calling", "Чат с Function calling" и "Assistant Function calling". Возможно, кто-то найдет для себя в этом что-то полезное.

Читать далее

Go: жарим общие данные. Атомно, быстро и без мьютексов

Level of difficultyMedium
Reading time8 min
Views11K


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

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

Вы нас просили и мы сделали. VPN на собственном сервере с XRay Reality за 5 минут с помощью Amnezia

Reading time4 min
Views265K

Всем привет! Это команда Amnezia. 

Мы читаем комментарии под нашими постами и знаем, что один из самых частых вопросов – когда будет XRay? Так вот, мы добавили XRay в приложение AmneziaVPN, а точнее протокол Reality от XRay для всех платформ -  IOS, Android, Windows, Linux и MacOS. Если у вас еще нет последнего релиза, скорее скачивайте и создавайте VPN на собственном сервере в пару кликов с одним из самых защищенных и быстрых протоколов в мире, ниже мы немного о нем расскажем, а в конце статьи будет пошаговая  инструкция как это сделать.

Почему XRay Reality так популярен ?

Все дело в том, что Reality подходит для стран с самым высоким уровнем интернет-цензуры, сейчас его используют в Китае и Иране, он защищен от детектирования методами active probing. 

Распознать цензоров REALITY может еще на этапе TLS-хендшейка. Если REALITY видит, что к нему приходит его клиент, то сервер запускает для него VPN туннель, а если приходит любой другой запрос на 443 порт, то TLS-подключение передается на какой-нибудь другой реальный сайт, например, google.com, где цензор получит настоящий TLS-сертификат от google.com и вообще все настоящие данные с этого сайта.

Со стороны систем анализа трафика это выглядит как подключение к настоящему сайту, сервер отдает настоящий TLS-сертификат этого сайта, и вообще все (включая TLS fingerprint сервера) выглядит очень по-настоящему и не вызывает подозрений. 

Особенно приятно, что при этом производительность REALITY и скорость подключения у протокола действительно хороши, в сравнении, например, со связкой OpenVPN over Cloak.

Читать далее

Как ломаются большие системы и как их траблшутить — инсайты из интенсива ШАДа Яндекса

Reading time10 min
Views8K

Привет, меня зовут Руслан Савченко, я руководитель службы разработки динамических таблиц в Yandex Infrastructure и преподаватель в Школе анализа данных. Сегодня я поделюсь актуальными инсайтами о том, как ломаются большие системы и как их траблшутить. Думаю, это будет полезно разработчикам и студентам, которые интересуются Site Reliability Engineering. Вообще, мало где сейчас обучают SRE, хотя в индустрии такие задачи очень востребованы.

В основе статьи — материалы SRE Week, открытого интенсива ШАДа по работе с большими нагруженными системами.

Читать далее

Нейросети для генерации изображений: обзор популярных сервисов

Reading time8 min
Views13K

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

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

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

Читать далее

Плагины для VS Code, которые стоит использовать в 2024 году

Reading time3 min
Views29K

Привет, Хабр! Сегодня расскажем о нескольких полезных плагинах для VS Code, которые облегчают и упрощают работу специалиста. Конечно, в подборке далеко не все плагины, полезные для разработчика. Так что если у вас есть свои фавориты, рассказывайте о них в комментариях. А пока начинаем!

Читать далее

Наш публичный детектор голоса стал быстрее в 3 раза (*), качественнее, устойчивее и теперь работает на 6 000 языках

Level of difficultyEasy
Reading time1 min
Views4.4K

Мы уже рассказывали про наш детектор голоса на Хабре тут, тут и тутКратко опишу, что стало лучше в этот раз:

Поддержка 6 000+ языков;

Общий рост качества на 5-7%;

Существенно повышена устойчивость на шумных данных;

TorchScript (*) стал в 3 раза быстрее, а ONNX - на 10% (теперь они примерно равны по скорости, обработка 1 кусочка аудио занимает 325 и 189 μs соответственно);

Читать далее

Пакетная обработка в PostgreSQL

Level of difficultyEasy
Reading time3 min
Views7.4K

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

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

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

В этой статье рассмотрим, как реализовать пакетную обработку в PostgreSQL.

Читать далее

Выстраиваем стабильное соединение для обучения с подкреплением на Python на моделях AnyLogic

Reading time12 min
Views3.2K

AnyLogic — идеальная платформа для создания симуляционных моделей для обучения DRL-агентов в сложных средах. Недавно разработанная библиотека Alpyne — это библиотека Python, которая позволяет пользователям обучать DRL-агентов на Python, взаимодействуя с моделью AnyLogic. К сожалению, она все еще недостаточно стабильна для работы со сложными симуляционными моделями.

В этой статье мы представляем новый способ взаимодействия DRL с симуляционными моделям в AnyLogic с помощью библиотеки Pypeline. Этот метод также может быть использован для (не глубокого) обучения с подкреплением, но благодаря своей простоте большинство сред, для которых хватает простого RL, могут быть смоделированы непосредственно в самих языках программирования, таких как Python.

Читать далее

Он победил LLM RAG: реализуем BM25+ с самых азов

Level of difficultyEasy
Reading time18 min
Views18K

Привет, меня зовут Борис. Я автор телеграм канала Борис опять. Периодически мне на глаза попадается что-то интересное и я глубоко в этом закапываюсь. В данном случае это алгоритм поиска BM25+, который победил продвинутые методы векторного поиска на LLM.

Разберемся, что это за зверь и почему он так хорошо работает. В этой статье мы реализуем его на Python с нуля. Начнем с самого простого поиска, перейдем к TF-IDF, а затем выведем из него BM25+.

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

Код доступен в Google Collab.

Читать далее

Построение надёжных систем из ненадёжных агентов

Reading time8 min
Views3.3K


Большие языковые модели можно применять для разных практических целей. Одно из самых интересных направлений — это автономные AI-агенты. Если сгенерировать большое количество агентов по заданному запросу и заставить их конкурировать друг с другом, то теоретически можно получить оптимальный результат по данной проблеме. Это можно использовать и в информационной безопасности, и в других сферах программной разработки.

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

Обзор и тестирование Blackview MP100: доступный мини-ПК на Ryzen 7 5700U. Мощный, тихий и компактный

Reading time12 min
Views9.2K

Компания Blackview выпустила недорогой, но интересный домашний компьютер в миниатюрном корпусе на 0,72 литра. Девайс получил мощный восьмиядерный процессор Ryzen 7 5700U, двухканальную оперативную память с поддерживаемым объемом до 64 GB, современный WiFi 6 модуль и возможность одновременного подключения до 3 SSD-накопителей. Я очень люблю такие устройства, поэтому сегодня вас ожидает детальный разбор новинки, всевозможные бенчмарки и конечно же мои мысли.

Читать далее

Bcachefs: файловая система, которая не ест ваши данные

Reading time5 min
Views11K

Именно этот слоган (с добавлением технологии COW) написан на сайте данной файловой системы. Хотя эта файловая система входит в состав ОС Linux уже более десяти лет, о ней написано достаточно мало. В этой статье я попробую по возможности это исправить.

Итак, Bcachefs - это файловая система с использованием технологии CoW нового поколения, которая призвана предоставить функции уже достаточно распространенных BTRFS и ZFS с более стабильной кодовой базой, большей скоростью и лицензией, совместимой с GPL.

Читать далее

Справочник по применению GPU в машинном обучении

Level of difficultyMedium
Reading time35 min
Views13K

Это перевод популярного лонгрида Тима Детмерса "Выбор графического процессора для глубокого обучения: мой опыт и советы".

Глубокое обучение (Deep learning, DL) - область с высокими вычислительными требованиями, и выбор графического процессора будет в корне определять ваши возможности в этой сфере. Какие характеристики важны при выборе нового GPU? Оперативная память GPU, ядра, тензорные ядра, кэш? Как сделать экономически эффективный выбор? Мы рассмотрим эти вопросы, заодно разберемся с распространенными заблуждениями, разберемся в характеристиках GPU, дадим советы, которые помогут вам сделать правильный выбор.

Читать далее

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

Level of difficultyEasy
Reading time5 min
Views68K

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

Читать далее

Масштабирование глубокого обучения с помощью Horovod и Kubernetes

Level of difficultyMedium
Reading time7 min
Views1.7K

Horovod — это фреймворк для распределенного глубокого обучения, изначально разработанный в Uber. Он позволяет масштабировать обучение моделей на сотни и тысячи GPU, сокращая время тренировки с недель до часов. Horovod поддерживает такие фреймворки, как TensorFlow, Keras, PyTorch и Apache MXNet, и легко интегрируется с существующими кодовыми базами, требуя минимум изменений.

В статье как раз и пойдет речь о том, как масштабировать модельки с помощью Horovod и Kubernetes.

Читать далее

Проектирование DWH с помощью Data Vault

Reading time6 min
Views2.4K

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

Методология Data Vault была разработана Дэном Линстедом в конце 1990-х годов и предлагает гибкий, масштабируемый и проверяемый способ управления данными. Data Vault сочетает в себе самые лучшие черты нормализованных моделей данных и звездных схем.

В этой статье мы рассмотрим эту методологию и как с помощью нее проектировать DWH на примере.

Читать далее

Как поднять уровень анализа вашего Laravel-приложения с 0 до 9 в Larastan

Reading time6 min
Views3.8K

Larastan позволяет найти ошибки в вашем Laravel-приложении еще до его запуска. Он представляет собой обертку PHPStan, предназначенную специально для статического анализа с поддержки всей магии внутри Laravel.

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

Читать далее

Новые функции CSS (mod, round) или как сделать анимированные Sprite Sheet без JS

Level of difficultyMedium
Reading time5 min
Views6.1K

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

Читать далее

Information

Rating
4,531-st
Registered
Activity