Обновить
829.42

Python *

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

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

Дашбординг: Dash или Shiny

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

Разбираемся в устройстве Dash и Shiny и почему оба фреймворка отлично подходят для решения единственной задачи — создать функциональный и красивый дашборд

Читать далее

KAN 2.0: Kolmogorov-Arnold Networks Meet Science

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

Это полный перевод второй статьи на тему нейронных сетей на основе алгоритма Колмогорова-Арнольда (KAN), опубликованной в августе 2024 года. В этой работе  исследователи продолжают развивать тему KAN, раскрывают ее связь с наукой, а также приводят некоторые практические советы по использованию библиотеки pykan, написанной на  python, в которой реализован алгоритм KAN.  

Перевод первой статьи размещен по адресу.

Читать далее

Доверяй, но проверяй: Как парсинг помогает выявить фейки в НСИ

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

Меня побудило написать статью желание прежде всего поделиться файлом Excel, содержащим информацию о состоянии всех ГОСТов на текущий момент. О парсинге сайтов в открытых источниках, включая сам Хабр, достаточно информации. Кроме того, мне хотелось немного порассуждать о том, где и как можно применить эти данные и на что они могут повлиять.

Для проверки определенных типов данных я предлагаю парсинг сайтов, а автоматизация исправления уже на ваш вкус. Например, различные языки программирования. Лично я за весь свой опыт использовал: C#, Python, VBA для работы с Excel, в зависимости от ситуации.

Читать далее

Как за 6 промтов к ChatGPT создать Python скрипт, скачивающий видео с YouTube для просмотра на телевизоре через Kodi

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

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

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

Раньше на Kodi можно было напрямую отправить YouTube ссылку и посмотреть любое видео. С августа 2024 года этот вариант больше не работает. Короткие видео можно посмотреть с телефона, но вот длинные интервью или подкасты так смотреть или слушать неудобно. К тому же телевизором можно управлять через Алису - она подключена к Home Assistant.

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

Разбираюсь как за 6 промтов к ChatGPT создать Python скрипт, скачивающий видео с YouTube и генерирующий описание и фанарт для Kodi.

Читать далее

Python REST API: Flask, Connexion и SQLAlchemy (часть 3)

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

Это перевод статьи от Philipp Acsany

В этой третьей части серии вы узнаете, как:

Работать с несколькими таблицами с взаимосвязанной информацией в базе данных
Создавать связи «один ко многим» в базе данных
Управлять связями с помощью SQLAlchemy
Сериализовать сложные схемы данных со связями с помощью Marshmallow
Отображать связанные объекты в клиентском интерфейсе

Читать далее

Построй свой собственный голосовой помощник с помощью Raspberry Pi и Chat API

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

Содержание

• Введение
• Построение собственного голосового помощника
• Настройка Raspberry Pi
• Подключение микрофона, клавиатуры и мыши
• Аспекты питания
• Реализация кода
• Обнаружение слова активации
• Распознавание речи и преобразование в текст
• Использование Chat API
• Преобразование текста в речь
• Тестирование и оценка производительности
• Заключение

В последние годы наблюдается всплеск интереса к разработке в области искусственного интеллекта и инновационных проектов. С появлением Chat API, передовой языковой модели, стало заманчивым создание персонального голосового помощника, превосходящего существующие решения, такие как Google Assistant или Amazon Echo. В этой статье мы рассмотрим процесс создания собственного голосового помощника с использованием Raspberry Pi, Chat API и нескольких дополнительных компонентов.

Читать далее

Оптимизируем дообучение LLM: теория + гайд

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

В эпоху стремительного развития искусственного интеллекта большие языковые модели (Large Language Models, LLM) становятся неотъемлемой частью множества приложений – от интеллектуальных чат-ботов до систем анализа данных. 

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

Согласно исследованию Brown et al. (2020) о модели GPT-3, тонкая настройка на специализированных наборах данных значительно повышает эффективность модели в узконаправленных задачах, таких как медицинская диагностика или юридический анализ [2].

Однако тонкая настройка может потребовать значительных вычислительных ресурсов, особенно в части использования графических процессоров (GPU). Более того, сами большие языковые модели, запускаемые локально, сделают много боли (дорого!) при покупке мощностей для их эффективной работы [3, 4]. 

Дальше я расскажу как настроить небольшую LLM (llama-3.2-3b-instruct) так, чтобы снизить требования к оборудованию и ускорить процесс интеграции модели в бизнес-процессы.

Читать далее

Хостинг для бота: как без лишних усилий запустить Python бота в Docker-контейнере и почему это удобно

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

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

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

Читать далее

Предсказываем стоимость логистики грузоперевозок по городам на данных маркетплейсов логистики

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

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

Читать далее

Разработка Task Manager с нуля до полнофункционального продукта

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

Если Вы когда-нибудь задумывался о том, как создать своё собственное веб-приложение, надеюсь, эта статья окажется вам полезна.

Мы пройдём весь путь — от установки необходимых инструментов и настройки окружения до разработки интерфейса и деплоя приложения на сервере. Каждый этап будет сопровождаться объяснениями и примерами кода, которые вы сможете найти в репозитории на GitHub.

Читать далее

Selenium с Robot Framework — тест пользовательского интерфейса

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

Как специалист по контролю качества с опытом работы на Java и Selenium, я с гордостью расскажу о Robot Framework.

Читать далее

Искусственный интеллект на страже качества: Команда ZeBrains создала систему автоматического поиска дефектов ноутбуков

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

Рассказываем, как мы, » or «„=“ [ZeBrains] заняли призовое место в кейсе от компании „Сила“, и решили задачу по созданию ИИ‑модели для автоматического обнаружения и классификации дефектов на изображениях ноутбуков.

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

Читать далее

Объединяем фреймы данных в pandas: две самые распространённые операции

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

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

Объединять такие таблицы, например, в Excel, ужасно долго и муторно. К счастью, если их удалось загрузить в pandas в виде фреймов данных, есть решение одной командой. Если вы импортировали pandas как pd, то команда объединения будет выглядеть так:

Читать далее

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

constexpr Game of Life

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

В C++ уже больше 10 лет существует constexpr, который позволяет программисту ушло возложить часть вычислений на компилятор. В свое время это взорвало мне мозг, ведь компилятор может посчитать какие-то достаточно сложные вещи еще до запуска программы!

В какой-то момент я подумал: если компилятор сможет сам посчитать все за тебя, то зачем тогда тебе вообще рантайм? Что ты там будешь делать — ответ выводить что ли? Глупости какие-то. Это неспортивно.

На этом моменте и зародился мой челлендж:

"Без рук" или "даже не думай запускать exe-файл"

Челлендж принят!

Сборщик мусора CPython и его влияние на производительность приложения

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

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

Читать далее

Пишем свою Diffusion модель с нуля

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

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

Меня зовут Юра, я - разработчик, фаундер и ML энтузиаст, также пишу свои заметки в своем ТГ канале. Я решил разобраться и понять, как устроена Diffusion модель внутри, понять ее математику и постараться объяснить и разложить ее на пальцах. Ну и конечно пописать код, который (спойлер) заработал. На гифке изображены примеры итоговых картинок на моей финальной модели.

Если вам тоже интересно, то читайте дальше

Читать далее

Создаем свою ORM на python — гайд

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

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

ORM позволяет абстрагироваться от сырых SQL запросов путем абстракций.

В этой статье мы и рассмотрим создание своей ORM на Python с документацией и публикацией на PyPI. Данный проект очень интересен со стороны реализации: ведь требуется изучить большую часть ООП, принципов и паттернов.

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

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

Читать далее

FastAPI + APScheduler: Простой пошаговый гайд по созданию асинхронного API для мониторинга валют по расписанию на Python

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

Как создать асинхронный API для мониторинга курсов валют на Python? В этом практическом руководстве мы разработаем сервис на FastAPI с интеграцией APScheduler, который будет отслеживать курсы USD и EUR в банках России. Вы узнаете, как реализовать асинхронный парсинг данных, настроить планировщик задач и развернуть приложение в облаке. Проект включает систему аутентификации, фильтрацию данных и REST API — идеальный пример для изучения современной веб-разработки на Python.

Читать далее

Размер имеет значение: как исторические данные помогают на этапе дизайна A/B-теста

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

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

Читать далее

Установка Jupyter Notebook в Windows

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

В одном из предыдущих постов мы уже разбирали работу в интерактивном блокноте на примере Google Colab. Возможность написания кода в ячейках (почти как в MS Excel!), удобное выполнение в интерактивном режиме и совмещение с блоками красиво оформленного текста делает работу с данными — в том числе биологическими — гораздо приятнее. 

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

У интерактивного блокнота есть и офлайн-реализация, которая называется Jupyter Notebook (Рис. 1). Установить его можно разными способами.

Читать далее

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