Обновить
524.7

Python *

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

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

Российский ИИ: критика, которая нужна сейчас, и путь, который работает

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

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

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

Но так ли все плохо и есть ли белый свет в конце тоннеля для российских LLM?

Читать далее

Новости

Финансовый AI-агент на Python: MCP и CodeAct

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

Продолжаем строить финансового AI-ассистента на базе MCP-сервера Finam. Сначала создадим классического MCP-агента на LangChain, затем эволюционируем его в CodeAct-архитектуру, где AI пишет Python-код вместо прямых вызовов функций. В итоге получим агента, способного анализировать тысячи акций, строить графики и не переполнять контекстное окно.

Читать далее

Дистрибутивные схемы, ч.2

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

Борис Цирлин

Продолжается рассмотрение класса дистрибутивных схем - подкласса схем, не зависящих от скорости, начатое в ч.1. Этот подкласс является промежуточным между параллельно-последовательным, рассмотренным в упомянутой статье и полумодулярными схемами которым посвящена статья "Полумодулярные схемы"

Все эти подклассы были описаны в книге "Автоматное управление асинхронными процессами в ЭВМ и дискретных системах, вышедшей под редакцией В.И.Варшавского в 1986 г. из которой и здесь заимствуются их формальные определения. Подсчитано количество дистрибутивных схем, состоящих из двух и трех элементов. Определены и подсчитаны неизоморфные схемы этого подкласса.

Читать далее

Почему мультиагентные системы плохо работают на малых данных

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

Мультиагентные системы — главный тренд в AI‑разработке. AutoGPT, CrewAI, LangGraph, Microsoft AutoGen обещают армию специализированных агентов, которые вместе решат любую задачу.

Сделал систему на 5 агентов, а потом передумал и сделал на одного.

История о том, что иногда с ИИ надо упрощать, а не усложнять.

Читать далее

Augmented LQR: расширяем пространство состояний, чтобы убрать статическую ошибку  (Часть 2)

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

Это вторая, завершающая часть опубликованной ранее на Хабре статьи про MIMO LQR/LQG регуляторы.

В первой части мы синтезировали LQR и LQG регуляторы. При всех достоинствах стандартные LQR (u = -Kx) и LQG (u = -K\hat{x}) по своей сути являются пропорциональными регуляторами (P-регулятором в терминах PID). Поэтому при наличии постоянного внешнего возмущения система в установившемся режиме (steady state) сходится не к нулю, а к некоторой статической ошибке x_{ss}. В этой точке управляющее воздействие u_{ss} = -K x_{ss} лишь компенсирует возмущение, но не может вернуть переменную точно к уставке.

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

В статье мы рассмотрели несколько подходов к решению этой проблемы и реализовали синтез LQR с расширенным состоянием (Augmented LQR) — метод, при котором в вектор состояний добавляются интегралы ошибок управления.

Как обычно, ссылка на код в конце статьи.

Читать далее

Как устроено управление памятью в Python и какую роль в нём играют слабые ссылки

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

Команда Python for Devs подготовила перевод статьи о слабых ссылках в Python и управлении памятью. В материале разбирается, как работает подсчёт ссылок, почему циклические зависимости приводят к утечкам памяти и в каких случаях weak references становятся незаменимым инструментом.

Читать далее

Новогодний подарок: Как я прикрутил LLM к scratch и порадовал ребёнка

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

Как известно, под новый год случаются чудеса, и этот год не стал исключением. Мне удалось прикрутить LLM в визуальный язык программирования Scratch, чем и обрадовал ребенка. А началось всё в один прекрасный день, когда мой сын - школьник осваивал n8n и ваял телеграм бота. Разговорившись, мы вспомнили, что его увлечение программированием началось со Scratch. И его фраза, что было бы здорово, если бы в scratch была бы встроена иишечка, можно столько прикольных игр сделать, стала отправной точкой для данного проекта. Рассказываю и показываю, как мы реализовали эту безумную идею.

Читать далее

Индикация раскладки клавиатуры подсветкой — решение для GNOME

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

Несмотря на весь технический прогресс IT, мне за всё время так и не удалось повстречать убедительное решение проблемы ввода «ghbdtn» вместо «привет» или «lf» вместо «да» — путаницы с раскладкой клавиатуры при наборе текста.

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

Я опишу реализацию решения для среды рабочего стола GNOME, проверенное на дистрибутивах Fedora 43 и Ubuntu 24.04.

Читать далее

Как работают календарные системы

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

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

Читать далее

5 ключевых изменений в Python 3.14 глазами инженера

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

Команда Python for Devs подготовила перевод статьи о ключевых изменениях в Python 3.14. Автор разбирает релиз через призму внутреннего устройства интерпретатора и производительности: свободная многопоточность, конкурентные интерпретаторы, удалённая отладка, инкрементальная сборка мусора и новый Tail Calling интерпретатор.

Читать далее

Метрики для задач NLP. Часть 1. Классификация, NER, Кластеризация

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

В этой статье будет рассказано о популярных метриках для NLP-задач: классификации текста, NER и кластеризации. Рассказ будет сопровождаться визуализацией, примерами и кодом на Python.

🔥 Начинаем 🔥

Аналитическая инфраструктура для сбора и исследования данных Steam: архитектура, пайплайны, результаты

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

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

В этом проекте мы разработали полноценный программный комплекс для автоматизированного сбора, хранения и анализа данных Steam. Построили двухуровневую архитектуру хранилища, реализовали оркестрацию чанков, разработали пайплайны работы с API и конфигурацию параллельного масштабирования. На основе собранных данных сформирован датасет объёмом десятки тысяч игр и сотни тысяч пользователей — и проведён базовый аналитический обзор рынка.

Читать далее

ty: революция в тайп-чекинге

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

Всем привет!

За последние пару лет компания Astral буквально разрывает Python-мир своими инструментами. Даже если вы не слышали это имя напрямую, с большой вероятностью вы уже пользовались их продуктами — ruff или uv.

И это не преувеличение. И ruff, и uv сегодня фактически стали стандартом индустрии. Например, в свежем релизе PyCharm 2025.3 при создании нового проекта по умолчанию инициализируется именно окружение uv, а не привычный venv. Для open source-проекта — это очень серьёзный показатель доверия со стороны экосистемы.

Открытый исходный код и массовое принятие инструментов Python-разработчиками дали Astral тот самый «кредит доверия», который компания, судя по всему, пока что уверенно оправдывает.

И вот буквально на днях Astral объявили, что их новый «революционный» тайп-чекер ty переходит в стадию бета-тестирования. А если учитывать, что и uv, и ruff формально тоже всё ещё находятся в бете, то можно считать, что ty уже фактически вышел в релиз. Собственно, о нём и поговорим дальше.

Если вам интересны подобные материалы — подписывайтесь на Telegram-канал «Код на салфетке». Там я делюсь гайдами для новичков и полезными инструментами. А прямо сейчас у нас ещё и проходит новогодний розыгрыш.

Читать далее

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

Вайбкодинг: Почему полностью автономные ИИ‑агенты для кода — путь в никуда

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

Это третья часть моей мини‑саги про вайбкодинг, LLM и здравый смысл в разработке. В первой статье я уже рассказывал, как по совету ИИ едва не снёс себе БД, а во второй — разбирался, страшен ли этот самый вайбкодинг или это просто инерция мышления перед лицом прогресса.

Сегодня я хочу поговорить о «священном граале» текущего AI-хайпа — полной автономности кодинг-агентов. О том, почему вера в то, что нейросеть «сама всё напишет, пока я пью кофе», — это опасное заблуждение, которое лишь усиливает скепсис профильного сообщества.

Читать далее

Классы в Python: от основ ООП до продвинутых концепций

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

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

Для этого в Python используют классы. С их помощью описывают, какие данные есть у таких сущностей (объектов) и что с ними можно делать. Это и есть объектно-ориентированный подход — программа строится вокруг объектов и их взаимодействия.

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

Читать про классы и объекты в Python →

Новая реальность бэкенда или что для меня изменилось с конца 2023 года

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

Осенью я начала готовиться к будущему выходу из декретного отпуска, купив курс Яндекс.Практикума «Продвинутый Go-разработчик». Сейчас я еще в процессе прохождения курса и недавно сдала первый дипломный проект, но уже сейчас могу сказать, что разработка ПО вышла на другой уровень за время моего отпуска длиной почти в 2 года. В разработке сервисов появилось много приятных фишек, которые мне нужно освоить. В данной статье я хочу описать то, какие изменения я уже заметила в разработке ПО и что я уже смогла почерпнуть из курса практикума.

Начать хочется с максимально актуальной темы — это использование нейронных сетей. Без них в современном мире разработки(и не только) теперь никуда. Когда я уходила в декретный отпуск, то только малая часть разработчиков активно использовала их, сейчас это повсеместно. Вот пару примеров того, как они уже облегчают нам жизнь.

Читать далее

Как я потратил время и нервы на CRM для программистов и почему это никто не купил

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

Недавно я заметил такую штуку: знакомые фрилансеры и маленькие студии разработки частенько теряют заказы, да и организовано у них всё так себе. Сообщения находятся то в одном сайте, то в другом, программисты в Discord сервере, заказчики и прогрев в Telegram, но при этом ещё надо в какую‑то CRM заходить и там ещё что‑то тыкать щёлкать. В общем — мест много, запутанно всё и не удобно.

Подумал: «А что если сделать CRM, которая работает ИЗ телеграма?» Клиент отправляет заказ боту, менеджеры видят в веб‑интерфейсе, программисты предлагают цены, все получают уведомления. Всего два места, но при этом заказчику вообще не надо об этом думать, он в телеграмме, там где уже зарегистрирован. Красиво же?

И я начал.

Читать

Автоматизация фоновой аналитики в финтехе с помощью background LLM‑агента: реальный опыт

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

Всем привет, меня зовут Максим Шаланкин, Machine Learning Team Lead в команде финтеха Big Data MWS. Внутренняя аналитика в финтехе живет в режиме постоянной гонки: новые клиенты приходят, ведут себя по‑разному, а бизнесу нужно быстро понимать, чем группы с разными сценариями отличаются друг от друга. При этом значительная часть работы аналитика — это однотипное сравнение когорт и поиски закономерностей в табличках и графиках. Фоновый LLM‑агент, который умеет сам поднимать данные, запускать статистические проверки и возвращать готовые инсайты, заметно сокращает путь от данных до решения.

Под катом — разбор, как устроен такой background‑агент для анализа активности новых клиентов, на чем он основан, как мы минимизируем галлюцинации и почему выбрали архитектуру, похожую на Claude Skills, а не идем в сторону MCP‑подхода.

Читать далее

Топ-5 фишек Python, которые вы, скорее всего, упустили

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

На дворе 2025 год. Мы привыкли к f-строкам и тайп-хинтингу, но всё ещё тащим в продакшен привычки из Python 3.6.

Вы знали, что блок else в цикле for выполняется вовсе не тогда, когда «цикл не сработал», а наоборот? А что громоздкий try-except pass для игнорирования ошибок — это антипаттерн, который заменяется одной элегантной строкой из стандартной библиотеки?

В статье — топ-5 прагматичных фич (от match/case с гардами до itertools.batched), которые позволяют писать декларативный код и выбрасывать лишние if и флаги. Никакой воды, только примеры «Было / Стало».

Читать далее

Строим масштабируемую архитектуру AI-агентов с FastMCP и LangChain 1.0

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

От монолита к модулям: строим масштабируемую архитектуру AI-агентов с FastMCP и LangChain

Год бума AI-агентов показал: самая большая проблема — не галлюцинации, а архитектура. Когда инструментов много, а агенты распухают, копипаста и сложность тестирования убивают скорость разработки.

Читать далее
1
23 ...

Вклад авторов