Обновить
1024K+

Python *

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

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

22 протокола мониторинга в PingZen: от пинга до Playwright-сценариев

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

Вам точно нужен только HTTP-мониторинг? А как насчёт проверки, что DNS резолвится правильно, SMTP-сервер принимает почту, а Minecraft-сервер отвечает на handshake? В PingZen мы добавили 22 протокола, включая Transaction с Playwright, чтобы вы могли мониторить буквально всё. Рассказываю, зачем это нужно и как работает «под капотом».

Читать далее

Подключаем MAX к своей CRM за 30 минут на Python

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

Мессенджер MAX набирает обороты в корпоративном сегменте. У него есть Bot API, но документации и примеров интеграции в открытом доступе минимум. В этой статье покажу, как за полчаса поднять микросервис, который принимает и отправляет сообщения MAX, и подключить его к любой CRM или внутренней системе.

Что получим в итоге

FastAPI-микросервис на Python

Приём входящих сообщений через Long Polling

Отправка ответов из CRM обратно в MAX

Автоматическое переподключение при обрывах

Systemd-сервис для продакшена

Читать далее

Что реально нужно знать в Python начинающему аналитику

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

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

В статье разобрала по полочкам:

Что реально нужно знать про Python до того, как лезть в датафреймы
20+ методов Pandas, которые покроют 80% задач
Какие графики и чем рисовать
Библиотеки для статистики и SQL – минимум, но необходимый

Без воды, списками и примерами.

Читать далее

Как я за выходные собрала сервис озвучки книг на FastAPI + Edge TTS + Telegram Mini App

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

Привет, Хабр! Я люблю слушать книги, но не все есть на Литрес и Storytel. Особенно это касается профессиональной литературы, фанфиков, статей и документов — всего того, что вряд ли когда-нибудь озвучат профессиональные дикторы.

Я поняла, что нейросетевые голоса уже достаточно хороши для комфортного прослушивания. И подумала: а что если сделать Telegram-бота, которому можно просто скинуть файл — а через пару минут слушать аудиокнигу в удобном плеере прямо в Telegram?

Так родился VoiceBooks — open-source сервис для озвучки книг, который работает полностью бесплатно.

В этой статье я разберу архитектуру open-source проекта: как организован парсинг 6 форматов в единый пайплайн, как работает фоновая генерация аудио без Celery и RabbitMQ, и как элегантно обойти лимиты Telegram Bot API на загрузку файлов.

Стек: Python 3.12, FastAPI, aiogram 3, Edge TTS, SQLAlchemy 2.0 + PostgreSQL. Деплой — Railway.

Читать разбор архитектуры

Подробный технический разбор реализации Autoresearch, ИИ-исследователя Андрея Карпаты

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

Это несколько текстов, основной из которых — Autoresearch: Минимальный «агентский цикл» Карпаты для автономного экспериментирования с LLM . Пытаемся подробно разобраться в работе минималистичного ИИ-агента для исследований, предложенного Андреем Карпаты в начале марта. Это веха в истории ML, показывающая один из путей (хотя и не идеальный — и об этом тоже есть в статье) совершенствования ИИ. Бонус! Анализируем также весь python-код и инструкции агенту. Для всех, кто перешагнул уровень "спроси у ChatGPT" и задумывается о чём-то большем, но не знает, с чего начать...

Читать далее

Как мы избавились от копипаста в технической документации

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

Всем привет. Меня зовут Никита, я руковожу командой Цикл‑ОН. Мы уже более 5 лет ведем проекты по заказной разработке ПО и, как и многие, сталкиваемся с необходимостью разработки не только качественного кода, но и документацию на продукты. В нашей нише особенность, что заказчики живут в парадигме ГОСТа. Я бы здесь хотел оставить небольшую заметку о нашем опыте — как то, что для начаиналось как откровенное мучение превратилось сначала в умную идеологию, а по итогу в самостоятельное решение для подготовки документации.

Читать далее

Python Standard Library для спортивного программирования

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

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

Читать далее

Apache Superset 2026. Как работает Drill Down и Drill By

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

Работая с аналитикой, мы часто сталкиваемся с одной и той же проблемой: данные есть, но исследовать их неудобно.

Представим типичную ситуацию. Есть таблица с десятками колонок и миллионами строк. Нужно понять, почему изменился какой-то показатель — например, выручка или конверсия. Обычно это превращается в цепочку SQL-запросов: сначала агрегируем данные по стране, потом по городу, потом по конкретному сегменту пользователей и тд.

Если таких гипотез несколько, количество запросов быстро растёт с геометрической прогрессией. Каждый новый уровень детализации требует отдельного SQL.

В какой-то момент хочется просто кликнуть по графику и мгновенно увидеть более детальные данные. Без написания нового запроса.

Именно здесь на помощь приходят BI-инструменты. Один из самых популярных open-source инструментов для аналитики — Apache Superset.

Читать далее

Архитектура вместо синтаксиса: CodeSpeak — язык разработки следующего поколения, использующий силу LLM спецификаций

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

Команда разработчиков под руководством Андрея Бреслава, российского разработчика и автора языка программирования Kotlin, представила публичную альфа-версию нового инструмента для разработчиков — CodeSpeak. Платформа позиционируется как язык программирования нового поколения, в котором инженеры пишут спецификации на английском языке, а нейросети берут на себя генерацию, тестирование и рефакторинг исполняемого кода. Полноценное внедрение инструмента позволяет сократить объем кодовой базы в проектах в пять-десять раз. Технология поддерживает интеграцию в существующие сложные проекты на Python.

ИИ-язык, созданный для людей

Знакомьтесь, Барри Уорсо (цикл заметок о выдающихся питонистах)

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

Влюбился в Python в 1994-м, придумал PEP как систему управления изменениями в языке, спрятал пасхалку import this в стандартную библиотеку и годами прокладывал Python дорогу в Linux-дистрибутивы. Речь пойдёт о Барри Уорсо (Barry Warsaw) – первом неголландце в ядре Python.

Будет интересно!

Как обнаружить заказной негатив с помощью скриптов

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

По данным Data Insight 30% отказов от покупок связано с заказным негативом. Раньше ботов вычисляли по шаблонным фразам, но сейчас спамеры массово генерируют жалобы через LLM. Модерация геосервисов пропускает такой контент. Формально отзывы уникальны и не нарушают правила площадок. Ручная проверка тысяч комментариев требует десятков часов работы аналитика и не исключает человеческий фактор. Визуально отличить качественный фейк от мнения реального клиента стало невозможно.

Противостоять генеративным сетям можно только программными методами. Автоматизировать поиск аномалий в поведении пользователей помогают скрипты на Python. Этот контур защиты включает парсинг данных с обходом лимитов API, вычисление временных выбросов через Z-оценку и семантический анализ текстов с учетом морфологии русского языка (через библиотеку Natasha). Это базовый алгоритм, который позволяет перевести защиту репутации из ручной разметки в измеримый технический процесс.

Читать далее

Можно ли будет благодаря ИИ обойтись без менеджеров пакетов?

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

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

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

В сгенерированном коде всё равно ещё придётся реализовать TLS, разобрать JSON, обработать Unicode. Если вы перестали называть что-то «зависимостью», сложность от этого никуда не исчезнет, а просто переместиться. Но мне нравится углубляться в кроличьи норы — давайте же посмотрим, куда ведёт эта.

Читать далее

BuxarParser — простой парсер поисковиков Google, Яндекса и DuckDuckGo на Python

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

Здравствуйте, товарищи! Сразу скажу: скрипт, которым делюсь, рассчитан в первую очередь на новичков (которых тут тьма). Старожилы, прошу не пинать сильно.

Читать далее

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

Как я вайбкодил озвучку текста для AutoCraft

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

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

План был обычный: вставил текст, выбрал движок, получил озвучку.

Но потом, как это часто бывает, всё поехало чуть дальше:

— LLM подкинула несколько идей
— кто-то попросил добавить дополнительные возможности
— а мне самому пришлось разбираться с символами, которые вообще не должны озвучиваться

В итоге из обычной функции озвучки выросло отдельное расширение для веб-панели AutoCraft.

Сразу уточню: эта статья именно про расширение Win TTS для веб-панели.

Про саму веб-панель я потом напишу отдельно, когда доведу её до состояния, которое меня устроит.

Читать далее

DNS TXT как канал доставки конфигов: тихо, надёжно, неубиваемо?

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

Когда сервер с конфигом заблокировали — клиент отвалился. Разбираем способ доставки который сломать сложнее чем сам интернет

У любого прокси-сервиса есть слабое место которое не связано с протоколом. Сервер переехал, IP сменился, конфиг устарел — и пользователь сидит без связи пока не получит обновление вручную. Чем больше пользователей, тем острее проблема.

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

DNS TXT-записи решают эту проблему не через обход блокировок, а через выбор канала который блокировать политически сложно.

Читать далее

Локальный голосовой ввод: Whisper + Ollama на Python

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

Мне нужен был голосовой ввод. Не диктовка в Google Docs, не облачный API — а простая штука: зажал клавишу, сказал, отпустил, текст появился в активном окне. Локально, без отправки аудио куда-либо.

Готовых решений, которые бы устроили, сходу не нашёл. Сделал свое. Может, кому будет полезно.

Читать далее

Ищи работу правильно — как не ошибиться в важном выборе

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

Поиск работы в IT часто выглядит похожим образом: десятки откликов, постоянные собеседования, новые команды, разные проекты и условия.

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

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

В результате решение об оффере принимается почти вслепую.

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

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

Поделюсь основными из них, надеюсь, что всем будет полезно 👇

Читать далее

7 дней на AI-продукт: как мы автоматизировали подготовку к международным экзаменам

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

Представьте, что у вас всего неделя, чтобы сделать AI-продукт, который превращает рутинные учебные планы для международных экзаменов в персональные траектории для каждого ученика. При этом ваш бэкграунд больше в образовании и аналитике, чем в технической разработке. Звучит фантастически? Сейчас, когда интенсив закончился, мне и самому так кажется.

Привет, Хабр! Меня зовут Дмитрий Орлов. На AI Talent Camp я выступал в роли хастлера (AI-Product) команды ExamLab Bot и ожидал классический хакатон: собрать команду, получить дедлайны, сделать демо и разъехаться. На деле это оказался интенсив с быстрыми итерациями и постоянным общением с менторами. Нам всё время напоминали, что MVP — это не демка «на сцену», что мы отвечаем за полноценный AI-продукт, который будет нужно развивать. Поэтому мы с Дарьей Дмитриевой, которая выступала в роли хакера (LLM Engineer), и смогли сделать то, на что в продуктовой разработке уходят недели.

Читать далее

Линейная алгебра для нейросетей: векторы на практике

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

Данная статья посвящена основе основ нейронауки — линейной алгебре. Если вы когда-либо планируйте изучать искусственные нейронные сети (и не только), то вам необходимо начать именно с этого. Причем не важно, собираетесь ли вы заниматься фундаментальными исследованиями (Data Science) или просто лепить модели в продакшн на конвейере (ML Engineering), вы обязаны знать их математику хотя бы поверхностно. Любые настройки, дообучение и применение даже готовой модели, требуют понимания основ. А по сему данное знание, как минимум, не будет избыточным.

Материал рассчитан на новичка. Если вы знаете школьную математику, то сможете освоить и мой курс. В будущем я напишу статью о линейном представлении нейросетей, где мы адаптируем полученное знание под прикладные задачи, напишем некоторые слои на Python и построим настоящую модель!

В этой статье:
* Понятие вектора;
* Векторизация данных;
* Умножение на скаляр;
* Сложение векторов;
* Норма вектора;
* Скалярное умножение;
* Векторное умножение;
* Практика с кодом;
* Домашняя работа.

Все будет объяснено на красочных примерах в игровой форме. Ничего сложного. А в конце вас ждет самостоятельная практика с кодом.

Приятного чтения!

Читать далее

Мой плохой код — это ваша вина

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

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

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

Разумеется, по эго это бьёт иногда больно, и некоторые моменты вспоминать не очень приятно. Самое страшное, что я когда-либо делал — коммитил приватный ключ в публичной репо. Вот написал и мне опять стыдно. Но я осознаю, что это всё я.

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

Сейчас я вам это покажу. Будет интересно, но впереди много боли. Я предупредил.

Хочу страдать