Обновить
1024K+

Python *

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

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

Автоматизируем чтение Telegram-каналов: LLM, Telethon и грабли на пути к MVP (Claude Code опыт)

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

Расскажу, как собрал бота для AI-суммаризации Telegram-каналов: архитектура, выбор LLM-провайдера, оптимизация скорости и неочевидные проблемы при деплое на российский VPS.

Читать далее

Шаблоны проектирования поглощения данных-01: пакетная обработка, потоковая передача и CDC — практическое руководство

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

Привет, Хаброжители!

От выбора подхода к поглощению данных может зависеть успех или провал работы конвейера данных

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

Читать далее

Как ИИ получил руки для торговли на бирже

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

📉🐻 Как ИИ получил руки для торговли на бирже

Claude Code уже разбирается в техническом анализе, умеет искать в интернете для фундаментального, может быть запущен удаленно на сервере с iPad через Claude Code on the web, умеет анализировать файлы логов сам программируя python скрипты.

Осталось ли собрать всё это в кучу...

Читать далее

Все об устройстве Q65 с примерами на Python (часть 3)

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

Q65 — цифровой протокол, разработанный Джо Тейлором (K1JT) и его командой в 2021 году для проведения минимальных связей в условиях сложных трасс прохождения радиосигнала.

В предыдущих частях цикла были рассмотрены структура протокола, алгоритмы формирования сигнала, механизмы компенсации эффекта Доплера, синхронизация и детектирование сигнала в условиях быстрых затуханий сигналов. В этой части статьи рассматривается механизм декодирования данных Q-ary Repeat Accumulation кодов протокола Q65.

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

Читать далее

Как Питолис мир создавал

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

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

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

(спойлер: Что-то вроде даже получилось)

Вперёд, создавать миры

MedGemma: разбираем медицинский AI от Google

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

25 февраля — финал The MedGemma Impact Challenge на Kaggle. Я уже несколько недель копаюсь в этой медицинской модели от Google, пытаясь выжать из неё что-то крутое для конкурса. Пока идеальное решение где-то между "гениально" и "зачем я это делаю в 3 ночи", решил поделиться тем, как вообще эта штука работает и что с ней можно делать.

Читать далее

От идеи к реальности: как я собрал свой первый пет-проект по распознаванию языка жестов

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

ПРЕДЫСТОРИЯ

Полгода назад, ближе к концу первого курса, я стал думать о будущей работе. Возможно на волне хайпа мой выбор пал на Нейронные сети. Начал с классического машинного обучения, а потом нашел хороший курс по свёрточным (CNN) и рекуррентным сетям. CNN меня впечатлили гораздо больше. После пары учебных проектов вроде классификации кошек и собак захотелось сделать что-то сложнее. Так появилась идея: детектировать руку в кадре и определять жест из американского языка жестов (ASL).

Читать далее

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

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

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

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

Читать далее

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

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

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

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

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

Что вас ждёт:

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

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

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

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

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

Читать далее

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

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

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

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

Читать далее

River: учим модель по одной строчке данных

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

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

Сегодня я расскажу про библиотеку Python River, которая позволяет обучать модели машинного обучения в потоковом режиме.

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

Новые пользователи приходят каждый день, события генерируются каждую секунду. Модель в продакшене устаревает, если не переучивать её регулярно. Переобучение с нуля нарастающим объёмам данных — удовольствие ниже среднего: долго, ресурсозатратно, да и не всегда возможно, если данные бесконечны (например, поток кликов или показателей датчиков).

Разобраться в теме

Хаос второго порядка: Как алгоритмические торговые боты играют сами против себя в убыток

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

🤖 Тысячи копий одного и того же алгоритма от Claude/Grok/ChatGPT торгуют друг против друга. Это создаёт спираль смерти, на которой зарабатывает только биржа через комиссии

Читать далее

Pydantic V2: Почему dataclasses вам ещё больше нужны

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

На написание статьи меня сподвигла статья «Pydantic V2: Почему dataclasses вам больше не нужны» и меткий комментарий:

«Спасибо за статью, но мне кажется Вы учите детей плохому. »

Давайте попробуем разобраться, почему и датаклассы хороши, и pydantic V2 прекрасен, а вместе они становятся ещё лучше.

Или устроить смешанное единоборство?

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

Ускорение Python в 150 раз с использованием C

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

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

NumPy уже не в моде?

Почему ваш AI-ассистент пишет «вырвиглазный» код, и как это исправить грубой силой

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

Технически это называется «неконсистентный». А по-человечески — боль. Делюсь рабочим, хоть и неидеальным, способом её лечения.

Читать далее

Как стримить большие ответы в Django через StreamingHttpResponse и async-генераторы

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

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

Сегодня рассмотрим решение одной непростой задачи, как в Django выдавать очень большие объёмы данных, например, выгрузку в CSV или потоковый JSON-формат NDJSON) так, чтобы сервер не ложился от нагрузки, а пользователи быстрее получали первые данные. Разберём, как использовать StreamingHttpResponse и генераторы (в том числе асинхронные) для стриминга больших ответов и поговорим нюансах.

Подробнее о стриминге

Как мы сократили время написания инструкций в несколько раз с помощью LLM и Whisper

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

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


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

Читать далее

Изучаем Python: модуль pathlib для начинающих с домашним заданием

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

Забудьте о ручном склеивании строк: с pathlib пути элегантно конструируются с помощью оператора /. Проверка существования, чтение, получение родительской директории — всё это становится методами и атрибутами самого объекта. В результате код получается не просто чище и читабельнее, он становится более надежным и по-настоящему "питоничным" (Pythonic).

Читать далее

Долгая дорога к DiT (часть 2)

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

Первая треть пути преодолена и совсем скоро мы создадим генератор картинок на целиком на архитектуре трансформеров. Но перед тем как совершить финальный скачок к Diffusion Transformers (DiT) нам сначала надо научиться работать с готовыми датасетами и освоить генерацию изображений "простым" способом - через MLP-ResNet. Статья является прямым продолжением первой части, так что советую сначала ознакомиться с ней, чтобы понимать откуда всё началось. Будет много про работу с датасетами.

И вообще статья получилась какой-то неприлично большой.

Читать далее

itertools для тех, кто думал, что знает itertools

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

Привет, Хабр! Модуль itertools мне известен многим вдоль и поперёк. Ну действительно, что там сложного? Пара функций вроде chain да product, и кажется, что ничего нового для себя уже не найти. Однако стоит копнуть глубже, и выясняется, что у itertools есть немало нюансов и даже новых возможностей, появившихся в свежих версиях. В этой статье рассмотрим многие функции itertools: от базовых до самых интересных.

Понять силу итераторов