Рубрика «optimization»

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

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

Началось все с того, что я здесь на Хабре прочитал статью https://habr.com/ru/articles/1026040/ камрада @sergeivskЧитать полностью »

userver 3.0 — большой релиз фреймворка для IO‑bound‑программ, переход на C++20 - 1

Привет! На связи Антон Полухин из Техплатформы Городских сервисов Яндекса. После большого релиза 🐙 userverЧитать полностью »

Всем привет!

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

Предыстория

Читать полностью »

Discriminated Unions: Что не так с реализациями объединений в C#? - 1

В жизни каждого C# программиста рано или поздно наступает момент, когда switch по objectЧитать полностью »

Все мы проходили через это: скармливаешь RAG‑системе сложный PDF на 50 страниц, а она в ответ либо галлюцинирует, либо вываливает на LLM простыню нерелевантного текста, съедая ваш бюджет на токены быстрее, чем вы успеваете сказать «GPT-4o». Проблема в том, что классический подход со статическим top_k — это костыль, который либо не додает контекста, либо вызывает у модели информационное «ожирение» (заполняет контекст нерелевантным мусором). Нашему RAG нужно помочь адаптироваться к безжалостной среде разрозненных документов!

Читать полностью »

Кратко

Black-White Array (BWA) — это упорядоченная структура данных с амортизированным временем операций вставки/поиска/удаления O(log N) и Читать полностью »

Мы привыкли использовать ReduceLROnPlateau если val_loss не улучшается N эпох подряд - режем learning_rate. Это работает. Мы ждем, пока обучение врежется в стену, и только потом реагируем.

А что, если мы могли бы увидеть эту стену заранее? Что, если бы мы могли сбросить скорость плавно, еще на подходе к плато, и снова нажать на газ, если впереди откроется новый спуск?

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

Проблема ReduceLROnPlateau: Мы реагируем на симптом, а не на причину

Читать полностью »

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

Проблема классического подхода: реакция на шум

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

Читать полностью »

Всем привет! 👋

Я — Дмитрий, автор Sury — самой быстрой библиотеки для работы со схемами. Если вы фанат Zod (а кто не фанат?), эта статья для вас. Сегодня я поделюсь неожиданными результатами тестов производительности Zod v4, расскажу, что это значит для вас, и как избежать подводных камней.

Zod v4: Стал в 17 раз медленнееб и никто этого не заметил 🙈

Начнём с небольшого кликбейта)

Это действительно так, но, конечно, не вся правда. Давайте разберёмся.

Недавно, готовясь к большому релизу Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js