Обновить
1024K+

Python *

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

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

LitestarCatsCV. Тренируемся на кошках. Пробуем litestar и другое новьё. Часть 1

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

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

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

Читать далее

Как создать систему расшифровки после звонка для Битрикс24

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

Привет, Хабр! Сегодня поговорим о том, как расшифровывать звонки с клиентами через CRM-систему Битрикс24 вместо CoPilot. Для автоматизации подключим платформу МТС Exolve. Вы сможете получать все записи с транскрибацией в личном кабинете и сохранять их в карточке сделки с клиентом.

Читать далее

Автоматизируем учёт облигаций: как избавиться от рутины

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

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

Наше решение использует API Московской биржи для сбора данных и выгружает их в Excel, упрощая работу с облигациями.

В статье - детальный разбор, примеры и пошаговые инструкции. Сам скрипт доступен в open-source и уже готов к использованию. Код - на GitHub!

Собираем, анализируем, удивляемся 📊

Компилятор за выходные: синтаксический анализатор Уорли

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

Изначально, когда я решил написать компилятор за выходные, я решил, что нет смысла заморачиваться, и использовал сторонний лексический / синтаксический анализатор. Мой выбор пал на SLY, довольно известную библиотеку. И действительно, пара часов работы, и мой компилятор прекрасно строил синтаксические деревья из исходного кода на wend. Я пытался было заглянуть под капот, утонул в море технических терминов (LL(1), LR, LALR(1) и тому подобное), и решил, что парсинг своими руками - это не для меня, теория формальных языков меня слабо интересует. Однако же в итоге выяснилось, что базовый синтаксический анализатор - это не так сложно, и я закатал рукава.

Читать далее

Проверка IFC моделей по требованиям IDS

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

В сфере строительного проектирования все больше места занимают технологии информационного моделирования (ТИМ). главным форматом обмена данных в ТИМ является формат IFC. Модели в этом формате требуют как коммерческие заказчики, так и государственная экспертиза.

Работа с собственными форматами программных решений для информационного моделирования (такими как RVT) обычно не вызывает затруднений благодаря широкому функционалу, предоставляемому разработчиками программного обеспечения. Однако формат IFC часто вызывает вопросы из-за нехватки специализированных инструментов и знаний.

Одним из таких вопросов является создание чётко сформулированных требований к моделям IFC и последующая их проверка на соответствие этим требованиям.

В этой статье будет подробно рассмотрен данный вопрос. В качестве инструментов будут использованы формат IDS и библиотека ifcopenshell а также предложено готовое решения для валидации моделей IFC на основе этих инструментов.

Кроме того, статья включает пошаговую инструкцию по созданию спецификаций IDS и автоматизацию процесса проверки IFC-моделей. Для удобства читателей представлены полезные ссылки и готовый исходный код программы.

Читать далее

Taigram: Начало работы

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

Всем привет!

На этой неделе мы объявили о начале работы над Open Source проектом Taigram, название которому, к слову, выбрали вы в опросе.

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

Проектом занимаемся мы вдвоём: Иван и Виктор, а также с логотипом нам помог наш бессменный дизайнер Евгений. (Больше никто не захотел к нам присоединиться 😭)

Начнём мы, как водится, с самого начала...

Читать далее

Простыми словами о методе максимального правдоподобия и информации Фишера

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

Всем привет👋🏻

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

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

Присаживайтесь поудобнее, заварите кофейку и запаситесь печеньки, нам предстоит интересный путь🍪

Go little rockstar⭐

Смогу ли я уложить оптимизирующий компилятор в тысячу строк питона? Прогон первый: mem2reg

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

Год назад мне пришлось взять на себя курс лекций по теории компиляторов. Вы встречались некомпетентными преподавателями? Это я, здравствуйте! Прежде чем учить других, я всё-таки решил заглянуть в учебник сам, и это вылилось в серию статей "компилятор за выходные" (да, я помню, что за мной должок с описанием лексера/парсера). В итоге я уложил компилятор со мной придуманного си-подобного языка на GNU ассемблер в шестьсот строк кода, причём без внешних зависимостей, включая парсинг.

Всё бы хорошо, вроде работает, но кажется, самое веселье осталось за бортом. Мой компилятор, по факту, это простой pretty print вокруг синтаксического дерева, подумаешь. А как работают оптимизирующие компиляторы? И поставил я себе задачу попробовать уложить игрушечный, но всё же рабочий оптимизирующий компилятор в тысячу строк кода. Как думаете, получится?

Итак, тема сегодняшнего разговора - вынос переменных из памяти в регистры, оно же оптимизационный проход mem2reg, см. кпдв.

Читать далее

Автомодерация изображений: как исправлять нарушения, сохраняя количество и качество контента

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

Привет! Меня зовут Владимир Морозов, я старший дата-сайентист в отделе автоматической модерации Авито. Раньше мы блокировали объявления, которые нарушают правила публикации, а теперь исправляем — с помощью ML-системы. Так мы сохраняем количество контента, сокращаем стоимость модерации и улучшаем пользовательский опыт. В статье подробно расскажу обо всех этапах внедрения новой ML-механики: от идеи и исследования подходов до оптимизации нейронок и вывода в продакшен.

Читать далее

Телеграм-бот для бронирования столов на вебхуках: FastAPI, Aiogram Dialog, FastStream и RabbitMQ в единой экосистеме

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

В этой статье мы создадим функционального Telegram-бота для бронирования столиков в ресторане «Binary Bites» с использованием современных Python-инструментов. Бот будет работать через вебхуки, взаимодействовать с брокером сообщений RabbitMQ и поддерживать фоновое выполнение задач с помощью FastStream и APScheduler.

Проект объединит FastAPI, SQLAlchemy, Alembic, Uvicorn и другие библиотеки, обеспечивая гибкость и масштабируемость. Готовый бот позволит пользователям бронировать столики, просматривать и отменять брони, а администраторам — управлять заказами.

Читать далее

Как создать скрипт-beautifier в Ghidra на Python?

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

Приветствую, дорогой читатель. Хочу представить вашему вниманию пример, как можно упростить себе жизнь при исследовании кода программ, используя скриптинг в Ghidra.

Если вы уже имели опыт работы с дизассемблером, то заметили, что читать его вывод не так легко, если целью является понять более высокие абстракции, заложенные в нём. Возможно, вы даже пытались декомпилировать его в псевдокод, но работать с переменными типа local_1-999 – то ещё удовольствие. Да, можно щёлкнуть на каждую из них и присвоить имя на основе логики. А что, если у вас 2000 строк и более?

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

Все манипуляции были проделаны на версии 11.1.2. Чтобы попасть в список доступных скриптов, откройте меню Window → Script Manager и там же создайте новый скрипт, нажав в правом верхнем углу кнопку Create New Script и выбрав язык Python.

Важное ограничение: Ghidra использует внутреннюю реализацию языка Python версии 2.7.

Читать далее

Бот для проверки орфографии и пунктуации через GPT-4o на Python

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

Я не обладаю природной грамотностью, и мне бывает мучительно стыдно за то, что я пишу. Для приведения текстов в минимально читабельный вид я использую специальные сервисы, которые проверяют орфографию и пунктуацию. И сегодня мы попробуем не просто использовать такой сервис, а написать свой. В этой статье мы напишем и задеплоим Telegram бота, который проверяет грамматику.

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

Саму проверку грамматики осуществляет GPT-4o, что нам даст возможность легкой корректировки и адаптации решения к реальным кейсам в случае необходимости.

Читать далее

Моделирование управления AC двигателя — Field oriented control of PMSM с помощью opensource решений

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

В этой статье я хочу поделиться результатом своих исследований в области моделирования систем управления двигателями переменного тока. В качестве объекта управления был выбран синхронный двигатель с постоянными магнитами PMSM (Permanent Magnet Synchronous Machine) как наиболее распространенная машина в современных транспортных средствах. Основное внимание будет уделено построению математической модели системы, объекта управления, и алгоритмов для симуляции. Для реализации модели я выбрал open source решения: Python control, Scilab. Мне было интересно, возможно ли использование свободных средств моделирования для построения более-менее сложных и реальных систем. Далее я поделюсь своими впечатлениями. В первой части статьи приводится теоретический материал, где описываются основные уравнения двигателя и элементы теории управления. Для теоретической части необходимы базовые понимания электротехники, ниже приложу ссылки, где можно обновить знания. Я постарался проработать разные источники литературы, чтобы взять необходимый минимум, с которым самому пришлось столкнуться для понимания сути процессов управления двигателем. Читатель вправе пропустить матчасть и перейти сразу к описанию реализации, и при необходимости вернуться к некоторым теоретическим аспектам в этом материале, или других источниках. Реализация алгоритмов управления построена по классическому принципу с помощью диаграммы потоков.

Читать далее

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

EDA of dataset Python

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

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

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

Очищать грязные данные можно c PandasРассмотрим основные методы.

Читать далее

Порядок работы с устареванием ML моделей. Шаг 2: Создание надежных и долговечных моделей

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

Еще на этапе создания модели следует проделать работу направленную на замедление ее устаревания.

Реализацию процесса работы с устареванием моделей в ML можно разделить на 4 шага.

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

Мы пройдем полный путь создания модели и работы над замедлением ее устаревания.

Читать далее

Эксперимент, программирование с минимальным участием программиста-человека. Новый этап эволюции или начало деградации

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

Не обладая нужными знаниями, не смог создать что то подобное текущему воплощению рассуждений в "топовых" языковых моделях, но моих навыков хватило быть неплохим учителем для модели, проверяя её решения, указывая на ошибки для дальнейшего создания работающего решения, конечно это не обучение с подкреплением, а теорема о бесконечных обезьянах в действии... Результат? Telegram бот, работающий на gpu nvidia и intel, созданный языковой моделью.

посмотреть

Как вовремя менять цены при росте курса доллара

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

Привет, Хабр! Сегодня расскажу, как оперативно обновлять цены в интернет-магазине, чтобы не оказаться в убытке. Для этого будем использовать CMS Битрикс24 в связке с сервисом рассылки SMS-уведомлений МТС Exolve. Владелец бизнеса или менеджер будет постоянно получать данные об изменениях на валютном рынке и принимать решения на их основе.

Читать далее

Создание растрово-векторной базы данных на примере скрипта с использованием FAISS и предобученной модели ResNet50

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

В современных задачах компьютерного зрения часто требуется не только анализировать изображения, но и эффективно работать с большими объемами визуальной информации. Для этого необходимо создать векторное представление изображений, которое можно использовать для поиска, классификации и других задач. В данной статье рассматривается процесс создания растрово-векторной базы данных с использованием предобученной нейронной сети ResNet50 для извлечения признаков изображений и библиотеки FAISS для организации быстрого поиска по векторным представлениям.

Читать далее

Как научить модель рассуждать, не переобучая её, меньше чем за 10$

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

Это статья обобщение моего исследования передачи знаний от большой модели с замороженными весами в малую модель, которую мы будем обучать через расширенный механизм кросс внимания или проще говоря через LLM модули. Оригинальное исследование доступно по ссылке: arxiv.org/abs/2502.08213 . Репозиторий с кодом и весами доступен на Hugging Face: LLM модули.

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

Читать далее

Декораторы Python. Введение

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

Всем привет, меня зовут Аббакумов Валерий.

Я Python разработчик, в основном занимаюсь бэкэндом веб приложений. Хочу написать серию статей для начинающих разработчиков. Посты будут трех уровнях сложности (от меньшей к большей) на разные аспекты языка, с которыми сложно справиться обывателю.

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

Я прикреплю ссылки на смежные статьи (тоже хороший материал, но ИМХО в них либо странная подача либо некоторая неполнота), мне кажется, что мой материал в разрезе 3 статей на каждую тему будет лаконичней и полней, но тут уже решать только вам, дорогие читатели

Читать далее