Как стать автором
Обновить
510.24

Python *

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

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

Бот авторизаций в Telegram для корпоративных чатов

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

Привет, я Саша Снытко, и я руковожу командой BI в Data Office Tele2. Мы уже рассказывали здесь о миграции на Fine BI, если быть точнее, о нашем опыте мониторинга пользователей. Сегодня речь пойдет о кардинально другой теме – разработке Telegram-бота для корпоративных каналов и чатов. Задача, которая родилась из потребности следить за составом подписчиков чата Data Office и выросла в полноценный корпоративный инструмент.

В статье мы с главным разработчиком нашего бота (спойлер: стажером команды, которая проявила инициативу и вызвалась заняться этой нетривиальной задачкой) рассказываем о своем опыте разработки в Telegram API на основе библиотек Telebot и Telethon. Еще объясним, как смогли обойти ограничение Telegram по выгрузке в 200 пользователей и настроили интеграцию с корпоративным LDAP-каталогом. Ну и куда без дашборда статистики активности Tg-каналов в Fine BI. В свое время нам не хватило прикладного DIY-материала, и мы проходили весь путь с граблями и шишками самостоятельно. Надеемся, что эта статья поможет кому-то из вас. А те, кто уже прошел этот путь, подскажут нам новые пути решения и возможности апгрейднуть наш сервис.

Читать далее
Всего голосов 4: ↑3 и ↓1+2
Комментарии1

Новости

Разделяй и запускай: делим тестовый стенд между департаментами

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

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

В настоящей статье делюсь опытом разработки и внедрения в процессы компании оптимизационного решения на базе математического программирования. Материал расширил исследовательскими элементами и локальным мини benchmark'ом.

Читать далее
Всего голосов 1: ↑1 и ↓0+1
Комментарии0

Как создать Python-приложение, которое предупредит о приближении астероида

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

Привет, Хабр! В статье я постарался показать, как объединить космос и технологии в одном приложении, которое через API оповестит пользователей по SMS о приближающемся к Земле астероиде. Подробности, как всегда, под катом.

Читать далее
Всего голосов 2: ↑2 и ↓0+2
Комментарии5

Классификация комбинаторных объектов на примере латинских квадратов

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

Хочу поделиться некоторым опытом по написанию программ для перечисления комбинаторных объектов из заданного класса (в примере будут рассматриваться латинские квадраты, хотя на картинке, для зрелищности, показан латинский куб). Обычно нужно перечислить все объекты с заданными параметрами, например, таблицы заданного размера, заполненные числами согласно некоторому правилу. Под словом «все» можно подразумевать как «все различные», так и «принципиально различные» в смысле, специфическом для конкретной задачи, например, таблицы могут считаться принципиально одинаковыми (эквивалентными), если одна получается из другой перестановкой строк.

Читать далее
Всего голосов 4: ↑4 и ↓0+4
Комментарии2

Истории

Разработка фреймворка для автоматизации загрузок данных из источников: Case Study для металлургической компании

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

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

Конечно, есть Apache NiFi, но с ним возникает много проблем при работе с большими объемами данных. Связка Python и Apache Airflow на сегодняшний день является одной из лучших практик в области управления данными не только для оркестрации данных, но и для извлечения, поэтому логично разрабатывать ETL-систему (Extract, Transform, Load) поверх Airflow. Это позволяет эффективно управлять процессами извлечения, преобразования и загрузки данных, обеспечивая надежность и гибкость в аналитической инфраструктуре.

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

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

Читать далее
Рейтинг0
Комментарии0

Задача распознавания эмоций. Часть 1. Введение

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

Распознавание эмоций.

Данная статья была подготовлена на основе презентации моей курсовой работы по компьютерному зрению. Ее цель - это краткий обзор аспектов машинного обучения в контексте задачи распознавания эмоций. То есть, в данной стать мы не будем излишне углубляться в детали, но при этом затронем практически все проблемы, которые так или иначе связаны с одной задачей: построение модели распознавания эмоций.

Статья будет состоять из 3 частей:

1. Введение
Описание и постановка задачи распознавания эмоций.

2. Три кита качества
Данные;
Архитектура;
Гиперпараметры.

3. Запуск модели
Разбор моего ноутбука с работой по шагам.

Каждая из частей будет более практическая чем предыдущая и постепенно перейдет от общей теории к реальному коду.

Читать далее
Всего голосов 1: ↑1 и ↓0+1
Комментарии4

SVG-виджеты для tcl/tk. Градиентная заливка и прозрачность. Часть II

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

Продолжим знакомство с svg-виджетами для tcl/tk. Напомним, что рассматриваемые примеры, сам пакет svgwidgets и интерпретаторы tcl/tk с необходимыми пакетами можно найти на github-е. После выхода первой статьи все они претерпели изменения. Начнем мы статью с примера скрипт_button_PACK.tcl:

$/usr/local/bin64/tclexecomp140_svg_Linux64 скрипт_button_PACK.tcl

Читать далее
Всего голосов 5: ↑4 и ↓1+3
Комментарии0

strtree — классификатор строк на основе регулярных выражений

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

Вы хотите найти короткие регулярные выражения, полно и точно отделяющие один класс строк от другого? Это статья для вас. Мы поговорим про задачу классификации строк с помощью автоматически определяемых паттернов, а в конце я предоставлю пример такой процедуры с кодом на Python. Пользоваться мы будем небольшой open-source библиотекой strtree.

Читать далее
Всего голосов 7: ↑7 и ↓0+9
Комментарии2

Обнаружение вторжений с применением технологий машинного обучения. Часть 1

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

Привет Хабр! Меня зовут Татьяна Ошуркова, я главный аналитик департамента ИТ корпоративного, инвестиционного и депозитарного бизнеса Росбанка и автор телеграм-канала IT Talks.

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

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

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

Читать далее
Всего голосов 4: ↑4 и ↓0+4
Комментарии0

Об ускорении некоторых тестов на нормальность из библиотеки SciPy

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

Приветствую уважаемых читателей, случайно или нет наткнувшихся на эту статью. Адресована она всем тем, кто исследует распределение разнообразных эмпирических данных.
В моей публикации вас ждут: небольшой ликбез по теории вероятностей, развивающий её интуитивное и практическое понимание; детективная история о том, как решение дифференциального уравнения привело нас к двум важнейшим статистическим характеристикам выборочных последовательностей; ревизионизм в области проверки распределений на соответствие гауссовскому и объяснение пресловутого p-value с нуля за 5 минуты.

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии2

Способы возведения в степень в Python

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

В Дзене Python есть принцип, согласно которому "должен существовать один и, желательно, только один очевидный способ сделать это". Однако в Python есть как миниум три способа возведения числа в степень: оператор **, встроенная функция pow(), функция pow() модуля math.

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

Читать далее
Всего голосов 56: ↑54 и ↓2+55
Комментарии52

Анимация доски Гальтона на Python и manim

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

Многие видели математические видео с канала 3blue1brown. Оригинальный стиль, отличные визуализации самых разных математических понятий. Как они были сделаны? Грант Сандерсон, автор канала 3blue1brown, написал специальную библиотеку на питоне, manim, для создания своих видео. Библиотека оказалась популярной, был сделан форк и сложилось сообщество для ее дальнейшего развития. Мне стало интересно и я захотел научиться делать похожие видео, для примера будет анимация доски Гальтона. Математика присутствует, анимация интересная, что из этого вышло - написано в статье.

Читать далее
Всего голосов 10: ↑10 и ↓0+13
Комментарии2

Обнаруживаем атаки с помощью ML

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

Использование искусственного интеллекта позволяет существенно увеличить эффективность работы различных средств обеспечения кибербезопасности.

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

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

Собственно, вредоносное ПО это не только пресловутые вирусы, но и различные хакерские инструменты, например знаменитый Metasploit Framework, который хотя и предназначен для проведения тестирований на проникновение белыми хакерами, тем не менее активно используется и обычными взломщиками.

Читать далее
Всего голосов 4: ↑4 и ↓0+4
Комментарии7

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

Summer Merge
Дата28 – 30 июня
Время11:00
Место
Ульяновская область

Как освоить Streamlit для Data Science

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

Перевод статьи "Как освоить Streamlit для Data Science",

Автор: Chanin Nantasenamat

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

Читать далее
Всего голосов 3: ↑3 и ↓0+3
Комментарии8

Дообучение модели GPT-2 (RUS) для генерации описаний заведений на основании названия, рубрики и оценки

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

В данной работе представлен процесс дообучения модели генерации текста на основе архитектуры GPT-2. Целью работы является демонстрация возможностей применения дообученной модели для генерации текстов, соответствующих определённым наименованиям заведений, рубрикам и оценкам, выставленных пользователями. Используя предварительно подготовленный датасет, который включал названия заведений, отношение к определённым рубрикам и рейтинг, мы обучили модель на генерацию описательных текстов, которые могли бы отражать характер и уровень заведений в зависимости от их оценочной характеристики.

Читать далее
Всего голосов 5: ↑4 и ↓1+5
Комментарии3

Кратко про Multi-Head RAG: решение многоаспектных задач с помощью LLM

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

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

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

Читать далее
Всего голосов 3: ↑3 и ↓0+4
Комментарии0

Книжная полка разработчика в эпоху интернета и искусственного интеллекта

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

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

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

Читать далее
Всего голосов 13: ↑12 и ↓1+13
Комментарии18

Мега-Учебник Flask Глава 15: Улучшенная структура приложения (издание 2024)

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

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

Начать изучение
Всего голосов 3: ↑2 и ↓1+3
Комментарии0

Netmiko: упрощение сетевой автоматизации на Python

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

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

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

Netmiko — это обертка над библиотекой Paramiko, разработанная для сетевых инженеров. Она упрощает работу с SSH-соединениями и добавляет ряд методов и интерфейсов для взаимодействия с сетевыми устройствами.

Этот модуль поддерживает большой спектр сетевых устройств — от Cisco и Juniper до Arista и HP. Всё, что нужно, это определить параметры устройства в виде словаря, и Netmiko позаботится обо всем остальном.

Читать далее
Всего голосов 6: ↑6 и ↓0+9
Комментарии7

Алгоритм Backpropagation на Python

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

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

Алгоритм backpropagation, или обратное распространение ошибки, является некой базой для тренировки многослойных перцептронов и других типов искусственных нейронных сетей. Этот алгоритм впервые был предложен Полем Вербосом в 1974 году, а позже популяризирован Дэвидом Румельхартом, Джеффри Хинтоном и Рональдом Уильямсом в 1986 году.

Читать далее
Всего голосов 6: ↑6 и ↓0+8
Комментарии0
1
23 ...

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

Работа

Python разработчик
134 вакансии
Data Scientist
83 вакансии