Обновить
512K+

Python *

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

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

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

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

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

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

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

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

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

Читать далее

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

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

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

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

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

Читать далее

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

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

Содержание

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

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

Читать далее

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

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

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

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

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

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

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

Читать далее

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

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

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

Читать далее

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

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

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

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

Читать далее

constexpr Game of Life

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

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

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

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

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

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

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

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

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

Читать далее

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

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

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

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

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

Читать далее

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

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

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

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

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

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

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

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

Читать далее

Красивые картинки на скатерти Улама

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

Скатерть Улама и тонкая структура простоты чисел .

Очень много больших картинок

Скатерть Улама

https://ru.wikipedia.org/wiki/Скатерть_Улама https://en.wikipedia.org/wiki/Ulam_spiral ) это очень красивое и наглядное представление структуры простых чисел. Красивая картинка говорит о том, что расположение простых чисел на оси натуральных чисел не случайно. Но вот формулу простую, по которой можно быстро и просто получить следующее простое число еще не придумали.

В данной статье мы тоже исследуем свойства "скатерти Улама", только немного её уплотним. Наша цель исследовать структуру множества простых чисел, их плотность и равномерность расположения на оси натуральных чисел.

Очень много больших картинок

Функция property() в Python: добавляем управляемые атрибуты в классы

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

Из этого руководства вы узнаете, как:

- Создавать управляемые атрибуты или свойства в классах
- Выполнять ленивую оценку атрибутов и создавать вычисляемые атрибуты
- Сделать классы более «питоничными», используя свойства вместо методов геттер и сеттер
- Создавать свойства только для чтения и с возможностью записи
- Создавать согласованные и обратно совместимые API для классов

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

Читать далее

ИИ в Крипто-Торговле: Возможен ли Успех? (Часть 1)

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

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

Читать далее