Обновить
824.71

Python *

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

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

Часть 3. TMA на KMP. Как платить через Telegram Mini Apps

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

Эта заключительная статья смешивает в себе как часть на Kotlin, самого Web приложения, и на Python, собственно реализация оплаты. Для лучшего понимания рекомендуется прочитать предыдущие части.

Читать далее

Как Google победил Skynet или подготовка обучения модели на мобильном устройстве

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

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

Читать далее

Создание искусственного датасета для обучения модели с использованием Paddle OCR

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

Привет, коллеги! Продолжаем тему разработки плагина для распознавания иврита с использованием Paddle OCR. В прошлый раз я забыла представиться, сделаю это в этом посте)
Меня зовут Алексей, я руковожу компанией, которая занимается разработкой с применением ИИ-технологий. Сам я  тоже погружен в разработку, но больше доверяю это своей команде – нам удалось собрать команду классных профи. Истории из нашей совместной работы я и планирую рассказывать в своем блоге.

Вернемся к теме статьи. Сегодня остановимся подробнее на создании искусственного датасета для обучения модели с использованием Paddle OCR. Этим занимался мой коллега Александр – экспертв компьютерном зрении.

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

Читать далее

Вызовы функций в Python по прежнему медленные? Анализ последних оптимизаций в CPython

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

Я наткнулся на пост в X/Twitter, где Pritam обнаружил, что его решение на Leetcode работало медленнее, когда он использовал встроенную функцию min, и производительность улучшилась, когда он реализовал min прямо в своем коде на Python.

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

Автор на этом скриншоте использовал Python 2, который на данный момент уже стал древностью. За последние 10 лет Python 3 получил множество релизов, и последние версии были нацелены на улучшение производительности языка. Так действительно ли вызовы функций по‑прежнему так сильно влияют на производительность в Python?

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

Читать далее

Реализация Триггеров TSQL на Python

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

В прошлой статье (https://habr.com/ru/articles/819931/) я рассказал про общую структуру проекта, про работу Kafka с CDC для получения данных из базы. Теперь пришло время поговорить про саму реализацию триггеров на Python. Как говорилось в предыдущей статье, мы будем реализовывать только триггеры Before (Instead Of останутся в базе без изменений). Итак, что же нам необходимо предусмотреть при разработке?

Читать далее

Дообучаем Llama 3.1 у себя дома

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

Привет, чемпионы!

С каждым днем появляется все больше и больше LLM. Их метрики растут с таким же бешеным темпом. Но в узких областях знаний они до сих пор дают осечку. Почему это происходит и как с эти бороться? - Разбираем универсальный код для дообучения LLM на своих данных!

Дообучать LLM!

Python на вынос: PyInstaller и Nuitka

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

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

Один из вариантов был использовать Docker, но я от него отказался по причине того, что окружение для Docker тоже надо будет готовить. Потом надо будет правильно запуск этот образ и правильно с ним взаимодействовать. Конечно, для упрощения можно использовать docker compose, но это не сильно снижает сложность для конечного пользователя. Кроме того, образ будет достаточно большим.

Поэтому я после некоторых размышлений обратился к таким инструментам как Python Compilers, а именно - Nuitka и PyInstaller и провёл небольшое исследование на предмет

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

Есть два варианта того, что мы получаем от их работы в качестве результата (кроме эмоциональных ощущений):

Читать далее

Алгоритмические уведомления для рынка акций MOEX в реальном времени

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

Алгоритмические уведомления для рынка акций MOEX в реальном времени

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

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

Читать далее

Как настроить двухфакторную аутентификацию через Telegram для SSH

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

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

Двухфакторная аутентификация (2FA) – это мощный инструмент, который значительно повышает уровень безопасности, требуя подтверждения вашей личности с помощью второго фактора. В этом контексте, двухфакторная аутентификация через Telegram представляет собой эффективное решение, которое можно легко интегрировать в процесс SSH-подключения.

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

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

Читать далее

Глубокий Анализ FastHTML

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

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

Читать далее

Программирование на Python для детей: топ-6 обучающих программ

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

Кто бы мог подумать, что Python изначально задумывался его создателем Гвидо Ван Россумом как предрождественское хобби, не более того. А сегодня — это один из самых популярных и востребованных языков программирования во всем мире. Разработчики, в стеке которых есть Python, могут работать в разных направлениях: от компьютерных игр до создания серверов и машинного обучения.

Секрет популярности языка — в широкой области применения и доступном синтаксисе. И на фоне роста ИТ-направлений в целом, многие выбирают именно Python в качестве первого языка программирования.

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

Читать далее

Как объединить фронтенд с бэкендом и не сломать веб-приложение

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

Привет! Меня зовут Артём Шумейко, я Python-разработчик и создатель одноименного канала на YouTube. Представьте: у вас есть проект с фронтенд- и бэкенд-частью. Первый работает на одном порту и отображает данные, после — передает бэкенду. Второй работает на другом порту, принимает и обрабатывает эти данные, после чего возвращает ответ. Обычно сайты находятся на едином домене с фронтендом и бэкендом, а здесь — на двух отдельных. 

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

Читать далее

Распознаем беспилотники малых размеров с помощью ИИ

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

Беспилотные летательные аппараты (БПЛА), или дроны, становятся всё более распространёнными в различных областях — от коммерческой доставки и мониторинга сельскохозяйственных угодий до разведывательных миссий и обеспечения безопасности. Однако, по мере роста их числа, возрастает и сложность задачи их распознавания, идентификации и трекинга, особенно когда речь идёт о малых дронах.

Читать далее ->

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

Как простой Python-скрипт с использованием ИИ может оптимизировать ваш рабочий процесс

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

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

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

Приятного прочтения!

Читать далее

Как я исправил сбой Microsoft Store в Windows (и при чём здесь Python)

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

Весной 2022 года у меня неожиданно перестал работать Microsoft Store. Вместо загрузки списка приложений (хотя бы бесплатных) просто отображалось сообщение о невозможности загрузить страницу и код ошибки: 0x80131500.

Читать далее

Калькулятор и электронная книга на Python в 11 лет: успехи детей на уроках программирования

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

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

Рассказываем и показываем, какие проекты на Python могут создать даже школьники без опыта программирования при первом знакомстве с языком.

Читать далее

Python с Yandex music API. Или индекс твоей смерти

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

Делаем, мини-тестового бота для дискорд, что будет проигрывать музыку с yandex.music

Не много ада, не много слёз, Егор Летов и много чая :)

Будь как дома, путник Я ни в чём не откажу

Кто работает за всех? Визуальный лидерборд для команды разработки ИТ

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

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

Читать далее

Cisco ASA, автоматизация поиска нужных строк в аксес-листе с помощью python. ч.2

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

Первая часть здесь

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

После выполнения команды 'show access-list' в Cisco ASA получаем:

Cisco ASA

Симулятор инсулиновой помпы в формате телеграмм бота

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

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

Главная цель разработки - тренажер подборки настроек инсулинотерапии с обратной реакцией в виде значения глюкозы.

Для навигации в боте разработано меню, представленное ниже

Читать далее