Обновить
860.91

Python *

Высокоуровневый язык программирования

Сначала показывать
Порог рейтинга
Уровень сложности

Machine Unlearning. Часть 1: Почему моделям нужно уметь забывать

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

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

Всем привет! Меня зовут Вадим, я Data Scientist в компании Raft. В этой статье я расскажу о достаточно новом направлении машинного разучивания (Machine Unlearning), которое позволяет моделям “забывать” не нужные знания без полного их переобучения.

Читать далее

ML на Мосбирже — почему мой грааль не работает?

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

Время после нового года решил провести с пользой и окунуться в машинное обучение. Заняться Machine Learning — и посмотреть получится что‑то или нет с российским рынком акций на Московской бирже.

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

Если говорить о результатах очень кратко, то технически всё работает, но вот финансовый результат на грани безубыточности.

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

Причём вся эта работа выглядит совершенно не так как показывается в фильмах про уолл‑стрит: фактически это написание скриптов и монотонный запуск и всё происходит полностью локально на компьютере.

Читать далее

Pydantic vs Adaptix – плюсы, минусы и области применения

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

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

Читать далее

Гайд по созданию международного стартапа используя vibe-coding

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

Наступил 2026 год, и у меня были новогодние праздники для создания международного стартапа - единорога 🦄. Поставил себе цель - заработать миллиард денег, поэтому проект должен быть международный(мультиязычный), чтобы увеличить трафик. Чтобы успеть за две недели, я решил использовать vibe-кодинг, а то потом ещё к ЕГЭ готовится.

VIBE-кодинг

Для написания кода я использую cursor.com версию pro - стоимость 20 $. Забегая вперёд, скажу что есть лимит токенов, и за пару неполных недель я сжёг лимиты токенов 3-учёток на проект.

Читать далее

Абсолютные валютные курсы: математика, код и практика

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

📊 Знаете, что общего у температуры в городах и валютных курсов? И то, и другое — относительные величины. У вас есть разницы, но нет абсолютных значений.

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

В этой статье мы делаем то, что звучит как задача для детектива: восстанавливаем абсолютные значения из одних лишь отношений. С помощью чистого Python и метода наименьших квадратов мы превращаем сеть из 85 рыночных котировок в единую шкалу стоимости для 45 валют.

Что вас ждёт:

Матрицы, логарифмы и МНК — как линейная алгебра очищает финансовые данные от шума.

Рабочий код — от построения матрицы инцидентности до ежедневного расчёта.

Фокус с разоблачением — на примере USD/JPY покажем, как понять, что на самом деле движет парой: укрепление доллара или ослабление йены?

Масштабирование до 153 валют — как та же математика работает для всей мировой системы.

Если вы когда-либо задумывались, как устроена «кухня» валютного рынка за пределами парных графиков — эта статья для вас. Переходите, чтобы узнать, как превратить относительность в абсолют.

Читать далее

Оценка эффекта релиза по истории метрики: causal impact без AB теста

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

После релиза метрика почти всегда меняется. Иногда это реальный эффект изменения, иногда - сезонность, маркетинг, внешний фон или просто шум. Если AB теста не было, а решение все равно нужно принимать, остается вопрос: как аккуратно оценить влияние релиза по истории метрики и не обмануться простым сравнением до и после.

В статье разбираю практический подход causal impact для случая, когда у нас есть одна метрика во времени и понятная дата изменения. Строим контрфакт (counterfactual) - прогноз того, какой была бы метрика без релиза - и сравниваем его с фактом. На этой основе считаем эффект в абсолютных значениях, накопленный эффект и относительный вклад в процентах.

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

Материал ориентирован на продуктовые задачи: когда релиз уже сделан, данные есть, а надежной оценки эффекта нет. В следующей части перейдем к более частому сценарию, когда изменение затронуло не всех, и вместо одной линии метрики у нас появляется набор линий по группам (географии, сегменты, кластеры). Там разберем синтетический контроль и diff-in-diff и частые ошибки, которые встречаются в таких данных.

Читать далее

Сервисы — место, где живет бизнес-логика II

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

Здравствуйте! Это вторая часть из серии статей «Сервисы — место, где живет бизнес логика». Если Вы еще не знакомы с первой частью, то рекомендую начать с нее, чтобы у вас сложилась общая картина. Сегодня мы постараемся ответить на все оставшиеся вопросы: познакомимся с прекрасной, легковесной DI-библиотекой, научимся «инжектить» в Django, посмотрим на несколько дашбордов в Кибане и поговорим про доменные модели.

Читать далее

Как запустить 4 независимые нейросети на одном GPU (16 ГБ) под FastAPI

Время на прочтение34 мин
Охват и читатели15K

Как поднять мультимодальный AI-сервис (OCR, ASR, LLM, TTS) на одной GPU 16GB без облачных API?

Разбираем пошагово:

Подготовка VPS (Ubuntu + CUDA + драйверы)

FastAPI-архитектура с PyTorch/Transformers

Управление памятью (без OOM-ошибок)

Продакшен: systemd + Nginx + HTTPS + домен

Тестирование в Swagger

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

Для кого: DevOps, Python-разработчики, AI-интеграторы, стартапы.

Исходники в репозитории, демо-видео, лайфхаки по разработке прямо на сервере!

Читать далее

Джентльменский набор LLM-инженера: гайд по экосистеме языковых моделей

Уровень сложностиПростой
Время на прочтение20 мин
Охват и читатели18K

Каждый, кто хоть раз вводил pip install transformers, наблюдал, как терминал начинает безостановочно выводить простыню зависимостей: pytorch, accelerate, bitsandbytes, peft и многие, многие другие. Но если PyTorch является фундаментом, настоящим Атлантом, на плечах которого держатся тензорные вычисления, то какую роль играют его помощники?

В этой статье мы проведём ревизию джентльменского набора LLM инженера. Для этого мы изучим функционал, методы работы и даже заглянем в исходный код таких библиотек, как PyTorch, Transformers, Accelerate, Bitsandbytes, PEFT и Unsloth. Эти знания позволят вам видеть за списком импортов не просто названия, а четкую структуру, на которой держится ваше приложение.

Читать далее

Гибридная нейросимвольная архитектура для превращения вероятностных ответов LLM в детерминированный код

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели12K

Нам обещали, что ИИ заменит инженеров, а дали вежливых чат-ботов, которые галлюцинируют и путаются в зависимостях. Мы потеряли cтруктуру. В этой статье я реанимирую идеи Символистов 80-х и объединяю их с мощью современных LLM.

Это история создания ZervGen - Фреймворка, который превращает ваш Obsidian в живой граф знаний и пишет работающий код для RPG через бесплатные API.

P.S. Ровно два месяца назад, 11 ноября, я сделал первый коммит. Сегодня, 11 января, я показываю, к чему это привело. Совпадение? Не думаю.

Вскрыть архитектуру

Прощай, ЖЖ — cпасаем заметки Python-скриптом

Время на прочтение15 мин
Охват и читатели14K

В конце статьи Python скрипт для сохранения заметок.

Последняя шлюпка с «Титаника», чтобы утащить с ЖЖ свои и чужие мысли на жесткий диск, пока «эффективные менеджеры» окончательно не пустили всё на дно.

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

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

Спасаем заметки

Как я заменил BI-дашборд на AI-чат: архитектура RAG-системы для 600K записей

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

После 10 лет внедрения BI-систем (Qlik Sense, Power BI, Data Lens) я понял одну вещь: дашборд — это не решение. Это данные для решения. А между данными и решением — пропасть, которую преодолевает человек.

В этой статье покажу, как построил RAG-систему с чат-интерфейсом для базы из 600 000 записей техники из Федресурса. Без философии — только архитектура, код и грабли.

Читать далее

Визуализация на Python за 15 минут: пошаговый гайд по Seaborn для начинающих

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

Matplotlib — это мощно, но часто «многословно». Чтобы превратить стандартный график в нечто презентабельное, приходится писать десятки строк настройки осей и легенд.
В этой статье я собрал практическую шпаргалку (Cookbook) по библиотеке Seaborn. Разберем, как одной строкой строить красивые Heatmap, Boxplot и Pairplot. Минимум теории, максимум готовых рецептов (copy-paste), которые покроют 90% задач аналитика.

Читать далее

Ближайшие события

Очередь задач на Postgres: SKIP LOCKED + lease/heartbeat + backpressure (практический опыт)

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

Как сделать надёжную очередь задач без Rabbit/Kafka, используя только Postgres? Разбираю боевой паттерн: FOR NO KEY UPDATE SKIP LOCKED для конкурентного забора, lease/heartbeat для возврата задач после падений и backpressure, чтобы воркеры не съели память.

Читать далее

Как я отучил нейросеть писать «Я коммуникабельный» и заставил её проходить HR-фильтры

Время на прочтение3 мин
Охват и читатели13K

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

И каждый первый рекрутер научился их детектить за секунду.

Стандартный ответ LLM выглядит так:

Читать далее

Обучение ИИ-моделей на обычном ЦП

Время на прочтение16 мин
Охват и читатели11K

Ещё раз о ЦП для машинного обучения в эпоху дефицита мощностей GPU

Недавние успехи в области ИИ зачастую связывают с появлением и эволюцией графических процессоров (GPU). Архитектура GPU, как правило, включает тысячи ядер для многопроцессорной обработки, высокоскоростную память, выделенные тензорные ядра и пр. Такая архитектура особенно хорошо подходит для рабочих нагрузок, связанных с ИИ и машинным обучением, которые отличаются высоким потреблением ресурсов. К сожалению, из-за резкого роста разработок в области ИИ также наблюдается всплеск потребности в  GPU, из-за чего возник их дефицит. В результате разработчики систем машинного обучения всё активнее изыскивают альтернативные аппаратные платформы, на которых можно было бы обучать и эксплуатировать модели. В таком качестве используются, например, выделенные специализированные интегральные схемы (ASIC) для работы с искусственным интеллектом, такие как облачные тензорные процессоры GoogleHaban Gaudi и AWS Trainium. Притом, что эти варианты позволяют значительно сэкономить, они подходят для работы не со всеми моделями машинного обучения и, подобно GPU, также остаются дефицитными. В этом посте мы вновь обратимся к старым добрым классическим процессорам (CPU) и вновь поговорим о том, насколько они адекватны применительно к современным ML-моделям. Безусловно, ЦП обычно не так хороши для обслуживания связанных с машинным обучением рабочих нагрузок как графические процессоры, зато их гораздо проще приобрести. Если бы удалось гонять на ЦП (хотя бы некоторые) из таких рабочих нагрузок, то продуктивность разработки в целом удалось бы значительно повысить.

Читать далее

Как готовиться к cобеседованию с лайв-кодингом QA

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели13K

Сейчас на позициях любых грейдов, включая лидовские, у QA всё чаще работодатели требуют навыки разработки. Иногда это нужно, потому что позиция full-stack. Иногда это просто требование, чтобы отобрать технически подкованных ребят.

Я — Женя, Python-разработчик, бывший QA-автоматизатор. У меня 6 лет опыта в разных командах, в том числе 3 года я нанимаю и обучаю сотрудниклв. Решил составить свой список того, что нужно делать QA, чтобы подготовиться к этапу технического собеседования с лайв-кодингом.

Читать далее

Реляционные шарады: превращаем фильмы в таблицы

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

Реляционная модель обычно ассоциируется с аккуратными строками и столбцами, но на практике ей регулярно пытаются скормить то, для чего она будто бы не предназначена. В этой статье — эксперимент на грани здравого смысла: разложить фильм на пиксели, превратить кадры в строки и посмотреть, что получится, если к видео применить привычный SQL. Без обещаний пользы и универсальности — зато с честным разбором того, где такой подход неожиданно работает, а где начинает сопротивляться сама природа данных.

Перейти к материалу

Эксперимент по подстройке Gemma 3 для вызова процедур

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

Практический опыт тонкой настройки текстовой генерации для модели Gemma 3 с использованием QLoRA на видеокарте RTX 4090 (24 GB).

Читать далее

Сколько городов в России начинаются на букву К?

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

Именно этот вопрос возник у нас в процессе игры в "Города" пока мы ехали из Екатеринбурга в Тюмень, а названия городов то и дело заканчивались на "К". В тот момент город Курган был назван уже 25 раз. И нас озарило... Спарсим данные с RuWiki и посмотрим сколько городов в России начинаются и заканчиваются на букву К!

Читать далее