Обновить
1024K+

Python *

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

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

Улучшение нейросетевого прогноза температуры воздуха

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

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

Речь пойдет о моем проекте edge-weather-forecast — лёгкой нейросетевой модели прогнозирования температуры, которую можно запускать прямо на метеостанции или на простом CPU-устройстве вроде Raspberry Pi.

Читать далее

Изучаем FastAPI за одну статью: от «Hello World» до структурированного API

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

Если вы пишете бэкенд на Python или только собираетесь вкатиться в эту тему, вы точно слышали про FastAPI. Он обещает скорость NodeJS, автодокументацию из коробки и строгую типизацию. Звучит круто, но для новичка любая новая технология выглядит пугающе.

В этом гайде я хочу взять вас за руку и провести по всем базовым концепциям фреймворка. Мы напишем свой первый API-сервис с нуля, разберем частые ошибки новичков с асинхронностью и поймем, как писать чистый код с помощью APIRouter. Спойлер: баз данных и сложных ORM сегодня не будет, сосредоточимся на чистом понимании магии FastAPI.

Читать далее

Что будет с джунами в эпоху ИИ-кодинга?

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

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

Если вы хотите узнать ещё больше об организации процессов ML-разработки, подписывайтесь на наш Телеграм-канал Варим ML

Давайте вообще кратко вспомним, в чём проблема. До текущего момента стандартный путь разработчика или ML-инженера выглядел примерно так:

Читать далее

Как обойти платную подписку Битрикс24 и вернуть своего бота к жизни: делаем свой провайдер событий на коробке

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

Привет, Хабр! (И тебе, страдалец, который три недели смотрит на мёртвого бота в Битриксе. И тебе, админ, который уже устал объяснять руководству, почему «оно перестало работать». И тебе, безопасник, который узнал, что данные компании летают через какой-то curator.pro и чуть не уронил кружку.)

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

Спойлер: стало хуже. Но мы справились.

Читать далее

Как я устал дебажить MAX API, отреверсил их вебхуки и отучил Cursor галлюцинировать

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

Как я устал дебажить MAX API, отреверсил их вебхуки и отучил Cursor галлюцинировать

Когда я писал своего первого более-менее серьезного бота под Max, случилась классика. Я и мой ИИ-ассистент (Cursor) пишем код, строго опираясь на официальную документацию Max API. Запускаю — падает. Сижу по 5-6 итераций, пытаюсь отдебажить базовый функционал, который под ту же Телегу пишется с закрытыми глазами.

В какой-то момент меня это достало. Я понял, что проблема не во мне и не в галлюцинациях нейронки. Я просто включил логирование всех входящих POST-запросов и стал дампить реальные вебхуки, которые прилетают от серверов Max. Открыв логи, я понял, почему мы так долго буксовали: то, что написано в документации, и то, что прилетает по факту — это две большие разницы. А слепая привычка писать архитектуру под Telegram Bot API делает только хуже.

Различия с официальной документацией Max API (Docs vs Реальность)

Вскрываем реальные вебхуки Max API

Почему ReAct-агенты ломаются в продакшене и чем их заменить

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

Приветствую читателей.
Мы пытались построить LLM-чат для продакшена.
Через месяц у нас был 20k-токенный prompt, 50 тулзов и ответы по 2 минуты.
В итоге пришлось отказаться от ReAct и перейти на LLMCompiler.

А начали мы с того что компания захотела поекспериментировать с созданием чата

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

Простейший пример чата.

Читать далее

Мой первый open source проект с Cursor и Opus 4.6 — GenAI Prices Parser

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

Запустил свой первый open source проект. Задача простая, но полезная: автоматический сбор цен на LLM-модели всех основных провайдеров и загрузка в PostgreSQL для BI-аналитики.

Что делает:

Каждый день скачивает актуальные цены из базы pydantic/genai-prices (29 провайдеров, 1100+ связок провайдеров и моделей)

Раскладывает в плоскую таблицу: провайдер, модель, контекстное окно, цена input/output за 1M токенов, кэширование, аудио

Загружает в PostgreSQL: текущий снимок + историческая витрина для отслеживания динамики цен

Читать далее

Алгоритм Крускала и кишки лабиринтов

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

Алгоритм Крускала (также алгоритм Краскала) - алгоритм, который преобразовывает связный неориентированный граф в минимальное остовное дерево. На самом деле пока что непонятно, что делает он, поэтому разберём поподробнее.

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

Читать далее

Telegram Bot API 9.5: Пользовательские теги и форматирование времени

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

Всем привет!

Сегодня Telegram выпустил небольшое, но как всегда интересное обновление своего Bot API под номером 9.5. Оно оказалось компактным, но в нём есть один интересный момент с надеждой на будущие обновления...

Кстати, одно из нововведений было известно ещё два дня назад в моём ТГ. Подписывайтесь на канал «Код на салфетке», если интересны подобные новости и разборы!

Читать далее

Клиент заказал AI-бота. Но помог не он

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

Клиент пришёл за AI-чатботом для поддержки — 200 обращений в день, четыре оператора, вечная текучка. Мы прочитали 500 тикетов глазами и обнаружили: 68% закрываются обычным API-вызовом, ещё 14% — формой-визардом. А вот AI понадобился совсем для другого — кластеризация жалоб выявила бракованную партию товаров до того, как проблема стала массовой.

Читать далее

Pandas на Python: От чтения CSV до сложной аналитики за 1 статью

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

Сколько раз вы пытались открыть в Excel файл на пару миллионов строк и смотрели на зависший белый экран под звук взлетающего кулера? А сколько раз писали трехэтажные циклы for в чистом Python, чтобы просто сгруппировать данные и посчитать среднее?
Pandas — это Excel на максималках и швейцарский нож любого разработчика и аналитика. В этой статье я собрал абсолютную выжимку: 10 главных шагов для работы с таблицами. Разберем вечную путаницу между loc и iloc, правильную очистку от пропусков, группировки и джойны (merge).

Читать далее

Webhook в Telegram и Discord: как подключить и чем лучше polling

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

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

Если вас заинтересовал заголовок, то вы, скорее всего, уже знакомы с разработкой Telegram или Discord-ботов. И что также вероятно: для получения обновлений вы используете обычный polling. Сегодня же я вам предлагаю ознакомиться с другим способом получения обновлений - через webhook.

Читать далее

Сделка с совестью на хакатоне или «Как победить с нерабочим кодом?» История одной команды…

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

🏆 1 место на хакатоне без работающего кода? Легко!

Мы заняли 3 место с рабочим сервисом. Победители показали картинки и получили премию Мэра. Мы проверили их GitHub: там пусто.

Внутри расследование:

Ссылки на код победителей (alert() вместо API).

Разбор метрик (SMAPE 79%).

Как связи решают всё.

Читайте, как выигрывают не технологии, а подрядчики. 👇

Погрузимся в историю...

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

Автоматизированный анализ графита по ISO 945: архитектура и инженерная реализация модуля

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

Всем привет! Я пытаюсь реализовать свою систему анализа металлов и сплавов. Занимаюсь своим проектом уже год. В составе системы уже около 15 модулей. И хочу представить один из них. Если кому-то интересно или есть изображения, которые нужно измерить, верифицировать с другими системами я только - за.

Немного теории из мира металловедения, который чем-то схож с миром биологии. Главное различие мира металлов, пластиков и других материалов, что это неживая материя.

Определение чугуна

Чугун представляет собой сплав железа с углеродом, где содержание углерода превышает 2,14% (обычно от 2,5% до 4,5%). Благодаря своей жидкотекучести, малой усадке и относительно низкой стоимости, чугун является одним из основных конструкционных материалов в машиностроении, энергетике и строительстве.

При анализе чугуны разделяют по состоянию углерода и форме графитовых включений, что определяет их физико-механические свойства:

Читать далее

Создание идеального лабиринта с помощью упрощённого алгоритма Прима

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

Лабиринты использовались в видеоиграх с момента их появления. Первой видеоигрой с процедурно генерируемым лабиринтом была Beneath Apple Manor, выпущенная в 1978 году. Лабиринт в ней генерировался методом деления на комнаты и коридоры, из-за этого лабиринт часто выглядел однообразным и предсказуемым, что портило впечатление от игры. Для того, чтобы лабиринт выглядел естественнее разработчики стали использовать различные алгоритмы на графах. В этой статье мы рассмотрим реализации генерации идеального лабиринта с помощью алгоритма Прима.

Читать далее

Декораторы в Python для самых маленьких и немного для взрослых

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

Представьте типичную ситуацию: вы написали отличный кусок кода. У вас есть десяток функций, которые делают полезную работу — например, ходят в стороннее API, парсят данные и аккуратно складывают их в базу. Код читаемый, лаконичный, всё работает как часы.

И тут приходит тимлид (или заказчик) и говорит: «Слушай, а давай-ка мы будем замерять время выполнения каждой функции и писать это в логи. Ну, чтобы отлавливать тормоза на проде».

Что делает разработчик, который не знает про декораторы?

Читать далее

Анатомия WebSocket: человечный разбор RFC 6455

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

Как правило, работа с веб-сокетами сводится к паре строк: connect() и send(). Удобные абстракции библиотек превратили этот протокол в магическую трубу, по которой летают данные в обе стороны. Но магия заканчивается ровно в тот момент, когда соединение молча отваливается с кодом 1006, балансировщик рвет коннект, а в логах появляются странные ошибки фрагментации. В этой статье мы спустимся с небес высокоуровневых фреймворков на уровень байтов и битовых масок.

Мы пройдем полный путь WebSocket-соединения, опираясь на RFC 6455: от генерации ключа на стороне клиента до обмена закрывающими фреймами. Попутно разберем весь необходимый понятийный аппарат: что такое фреймы, какими они бывают, зачем их маскируют и фрагментируют и т.д. Цель не в том, чтобы научиться пользоваться конкретной библиотекой, а в том, чтобы понять, как протокол работает изнутри независимо от языка и реализации. Для иллюстраций по тексту статьи даны сниппеты на Python.

Погружаемся

Python уже не торт? Как и почему меняются приоритеты разработчиков

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

Последние годы Python был вроде универсального инструмента: на нем писали всё — от мелких скриптов до огромных ML-систем, а его первое место в рейтингах воспринималось как норма. Но к началу 2026-го заметно, что динамика меняется. Скорее всего — вслед за приоритетами. Уходит время, когда удобство и низкий порог входа перекрывали любые вопросы к производительности. Компании всё чаще смотрят на отдачу — сколько ресурсов съедает система и как ведет себя под нагрузкой. Давайте посмотрим, что там с местом Python’а в рейтингах, и оценим причины. 

Читать далее

Linux в Windows + VSC

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

Эта статья для тех, кто столкнулся с необходимостью иметь компьютер под управлением одной из систем семейства Linux и при этом имеется единственный компьютер под управлением Windows. Для таких случаев в Windows есть стандартное решение под названием WSL (Windows Subsystem for Linux). Конечно нельзя назвать данное решение полноценным. Но для тестирования проекта или обучения вполне может подойти. В моем случае решил использовать эту систему для обучения работы в Airflow. Что из этого вышло покажу дальше в статье. Забегая вперед скажу, что не все так однозначно ни с подсистемой Linux в Windows ни с дальнейшей работай проектов в ней.

Читать далее

Зачем аналитику математика

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

«Зачем мне эта ваша математика?» честный разбор для тех, кто хочет расти в аналитике

Если вы работаете в аналитике и ни разу не задавались вопросом «а зачем мне эти интегралы и производные» – вы либо гений, либо врете.
В интернете много статей про матан для аналитиков, но они либо уходят в дебри интегрирования по частям, либо ограничиваются уровнем «логарифм делает большие числа маленькими». Где золотая середина?

Что внутри:
Логарифмы: не просто log1p, а эластичность и среднее геометрическое
Производные: как поймать момент перед падением (вторая производная)
Пределы: почему retention не упадет ниже 15% (и при чем тут асимптоты)
Интегралы: LTV с дисконтированием и площадь под uplift-кривой

Для кого: аналитики, которые уже вышли из Excel и хотят понимать, что на самом деле делают их .diff() и .cumsum().

Читать далее