Обновить
613.42

Python *

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

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

BDD как клей между TDD и DDD

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

Как превратить автотесты в живую документацию(как техническую, так и аналитическую).

Как сделать так, чтобы они рассказывали о предметной области.

И в конце концов, проверяли, что все это работает.

Читать далее

Делаем LLM-советника по акциям РФ как в Alfa Arena

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

Недавно стартовал необычный эксперимент — Alfa Arena, где шесть лучших LLM моделей (Claude 4.5 Sonnet, DeepSeek V3.1, Gemini 2.5 Pro, GPT-5, Grok 4 и Qwen 3 Max) соревнуются между собой в реальном трейдинге. Каждой модели дали по $10,000, и они торгуют криптой на бирже.

Что особенно интересно — это не просто шоу. Alfa Arena показывает принципиально новый подход в трейдинге. И хоть любопытно следить за тем, какая модель заработает больше денег или кто первый сольет, но настоящая ценность эксперимента совсем в другом.

Читать далее

Автоматический мониторинг Telegram-каналов

Время на прочтение10 мин
Количество просмотров1.5K

В этой статье узнаем, как создать систему мониторинга новостей из Telegram‑каналов и чатов с интеллектуальной фильтрацией и отправкой в целевой канал. Прототип мы реализуем на примере анализа экономических новостей.

Статья является логическим продолжением статей «Парсинг Телеграм‑каналов, групп и чатов с обработкой в LLM» и «Парсинг pdf‑отчётов публичных компаний для получения трейдерских инсайтов„.“»

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

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

Читать далее

Создаем свой create-react-app на Python: интерактивный генератор проектов с Typer и Questionary

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

В мире фронтенда уже давно стали стандартом такие инструменты, как create-react-app или vue create. Они задают несколько вопросов и за секунды разворачивают полностью настроенное рабочее окружение. Почему бы нам не создать такой же удобный помощник для своих Python-проектов?

Читать далее

Почему Python так популярен в 2025?

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

Многие языки приходят и уходят, но Python является одним из тех языков, который давно зарекомендовал себя на рынке как один из лучших вариантов для разработчиков всех уровней (и не только).

Неважно, работаете ли вы над интеллектуальными системами, процессами, управляемыми данными или пишете тесты — Python позволяет создавать вам это программное обеспечение. И, судя по всему, тренд его популярности не собирается снижаться.

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

Почему Python

Создаем GUI на Python: от простого скрипта к Markdown-редактору с Flet

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

В этой статье мы познакомимся с Flet — революционным фреймворком, который позволяет делать именно это. Flet дает вам возможность создавать интерактивные GUI на чистом Python, а для отрисовки использует мощный движок Flutter. Результат — быстрые, красивые и нативные приложения для Windows, macOS, Linux и даже для веба, без необходимости писать ни строчки на Dart или JavaScript.

Читать далее

Даем голос ESP: Уведомления в Telegram и ntfy

Время на прочтение8 мин
Количество просмотров7.4K

В прошлой статье  мы рассмотрели, как отлаживать код, загружать отредактированные файлы и удалять ненужные файлы на устройстве прямо из браузера (беспроводное управление устройством) через WebREPL и через uPyLoader. Теперь научим устройство "говорить" — отправлять нам сообщения  через систему push-уведомлений популярных мессенджеров.

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

Мы протестируем две системы уведомлений:

Telegram-бот — для ESP32, который будет отображать сообщения от модуля, обладающего достаточными ресурсами  для обработки SSL-шифрования, требуемого Telegram API.

Продолжаем

Создаем красивые и удобные CLI-приложения на Python с помощью Typer и Rich

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

Вспомните свой последний скрипт для автоматизации. Возможно, он скачивал данные, обрабатывал файлы или отправлял отчеты. Вы быстро набросали логику, запустили из командной строки, передав пару аргументов через sys.argv, и… всё сработало. Вы молодец.

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

Читать далее

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

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

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

Читать далее

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

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

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

Это не ваша вина. Это естественный этап роста любого проекта. И чтобы перейти от «кода, который страшно трогать» к «надежной и стабильной системе», профессиональные разработчики используют один мощный инструмент — автоматизированное тестирование.

Читать далее

Schema-Guided Reasoning: как научить языковые модели последовательно рассуждать

Время на прочтение11 мин
Количество просмотров2.5K

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

Для AI-инженеров это системная проблема. Возьмём автоматизацию документооборота: нужно классифицировать договоры, извлекать реквизиты, проверять стандарты. Но модель работает как лотерея — результат не поддаётся логике или меняется при повторном запуске с одинаковыми данными. Как встроить такой результат в бизнес-процесс?

Для решения этой задачи появился подход Schema-Guided Reasoning (SGR). Его активно продвигает Ринат Абдуллин в материалах по работе с LLM. Идея проста и эффективна: заставить модель мыслить не хаотично, а внутри заданной схемы. Это не панацея, но SGR серьёзно снижает количество ошибок, делает процесс прозрачнее, а также позволяет тестировать отдельные компоненты рассуждений.

Читать далее

Production AI сервер за ₽0: полный гайд по сборке ML-станции для Stable Diffusion на б/у комплектующих

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

Собрал production ML-сервер на двух RTX 2060 из хлама за ₽0. PyTorch + CUDA 11.8 + Stable Diffusion генерируют 512x512 за 38 секунд. YOLOv8 работает параллельно на второй GPU. Вот полный гайд: от BIOS настроек до первого теста. Никакого облака, только локальное железо.

Читать далее

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

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

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

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

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

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

Мы опубликовали silero-tts v5 на русском языке

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

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

Итак представляем вам новый v5 релиз наших публичных моделей для синтеза речи!

Что поменялось?

Возвращаем неактивных клиентов из YClients по SMS с умной проверкой Number Lookup

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров214

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

Во все филиалы сети ежедневно записываются около ста человек. Реактивировать часть потерянных клиентов можно с помощью SMS-информирования о персональной скидке. Но делать это вручную неудобно и долго. Поэтому мы сделали автоматический сценарий: он раз в сутки проверяет базу YClients, находит неактивных клиентов, выбирает лучшее время для отправки сообщения через Умную проверку номера МТС Exolve и отправляет им SMS с предложением вернуться.

Читать далее

Thefittest: зачем я пишу свою open-source библиотеку эволюционных алгоритмов

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

Автор: Шерстнев Павел

Что если модель могла бы проектировать саму себя? Подбирать архитектуру, параметры, операторы — без эксперта, без ручного тюнинга и десятков итераций? Эволюционные алгоритмы позволяют это сделать. Я собрал их в рабочую технологию — Thefittest — open-source проект, где эволюция используется для построения и оптимизации моделей машинного обучения.

Читать далее

Зарабатываем, открывая позиции против трейдеров на bybit

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

Привет, Habr! В этой статье я хочу поделиться своим проектом — Telegram-ботом, который автоматизирует торговлю на бирже Bybit на основе сигналов из специализированного канала. Бот парсит сообщения из Telegram-канала @TokenSplashBybit, извлекает информацию о предстоящих "token splash" (это события, когда новые токены добавляются на биржу с возможностью получения airdrop), и открывает длинные позиции (лонги) в момент результата.

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

Читать далее

Анализ EEG-датасетов с Kaggle: от сигнала до ML-модели

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров410

Электроэнцефалография (ЭЭГ) — это неинвазивный метод регистрации электрической активности мозга через электроды на поверхности головы. За последние годы ЭЭГ-данные перестали быть исключительно медицинской прерогативой и прочно вошли в мир data science. Сегодня их используют в нейромаркетинге для оценки реакций на рекламу, в когнитивных исследованиях для измерения внимания и памяти, в разработке Brain-Computer Interface (BCI) и даже в спортивной аналитике.

Читать далее

По следам CPython. Часть 2. Предконфигурация

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров869

Привет, читатель! Меня зовут Александр Щербанюк, и я Python-разработчик. Это вторая статья цикла, который посвящен разбору внутреннего устройства CPython.

В рамках прошлой статьи была настроена IDE и разобраны первые несколько функций CPython и используемые в них структуры. Так, повествование дошло до функции pymain_init из Modules/main.c.
Эта же статья будет посвящена разбору части вышеобозначенной функции, а конкретнее — этапу предконфигурации CPython.

Итак, продолжим изучение внутренностей CPython.

Читать далее

Шаблоны и принципы деления кода на классы

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

За 9 лет разработки ПО  я периодически выступал в  роли ментора и сталкивался с проблемой, которую недавно озвучил начинающий программист после онлайн-курсов: 

«Не понимаю, как делить код на классы».

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

Я показал студенту несколько готовых шаблонов классов, чтобы он мог сразу применить, и хотел дать методичку по теории, но под рукой не оказалось ни заметок, ни статей, ни книг. Поиск в интернете и запросы к ИИ выдавали только материалы по ООП и принципам SOLID, которые мало касались нужной темы. Выходило так, что вся нужная для такой методички информация, лежит у меня в голове.  

Так и родилась идея написать эту статью.

Читать далее

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