IT-новости про Python, которые стоит знать

Собрали в одном месте самые важные ссылки
читайте авторский блог


Новый материал в ленте
  coverage - 7.4.2

Утилита позволяющая измерить процент покрытия тестами. Скачать можно по ссылке: https://pypi.python.org/pypi/coverage/


Python Дайджест. Выпуск 478

(13.02.2023 - 19.02.2023)

поделиться выпуском 
Дайджест python,

Статьи

  Python package registry в GitLab

При разработке проектов, и, особенно, распределенных приложений, возникает необходимость использования некоторых частей приложения в качестве отдельных модулей. Например скомпилированные классы для gRPC, модули для работы с БД, и многое другое, могут применяться в неизменном виде в кодовой базе десятка микросервисов. Оставив за скобками копипасту, как «хорошую» плохую практику. Можно рассмотреть git submodules, однако, такое решение не очень удобно тем, что, во‑первых, нужно предоставлять разработчикам доступ к конкретным репозиториям с кодовой базой, во‑вторых, нужно понимать, какой коммит надо забрать себе, и в‑третьих установка зависимостей для кода, включенного в проект как субмодуль, остается на совести разработчика. Менеджеры пакетов (pip, или, лучше, poetry), умеют разрешать зависимости из коробки, без лишних действий, и, в целом, использование менеджера пакетов значительно проще, чем работа с субмодулем. В статье рассмотрим, как организовать реестр пакетов в GitLab, а также различные подводные камни, поджидающие на пути к удобной работе с ним.

  Стратегии прогнозирования временных рядов в ETNA

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

  Пишем умный поиск по коду с Open AI

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

  Создаем диаграмму миграций Django проекта

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

  Что нужно знать нашим ML-сотрудникам

Недавно в комментариях к одному из постов в Варим ML меня спросили, какие навыки и знания нужны, чтобы у нас работать. Вопрос на самом деле очень важный - без правильного ответа невозможно нормально выстроить процессы найма и развития сотрудников. Можно быстро набросать дефолтный список - питончик, ML/DL, докер, и на этом закончить, но я решил зарыться в вопрос пообстоятельнее. Конечно, существуют самые разные родмапы, но лично мне они кажутся излишне общими, а я захотел поразмышлять именно про те скиллы, которые необходимы для работы в Цельсе, а главное про их необходимый уровень.

  Пишем GPT в 60 строк NumPy

В этом посте мы реализуем с нуля GPT всего в 60 строках numpy. Затем мы загрузим в нашу реализацию опубликованные OpenAI веса обученной модели GPT-2 и сгенерируем текст.

  Модель BG-NBD для анализа клиентской базы на Python

В этом материале мы воспроизведём на Python модель BG-NBD (Beta Geometric Negative Binomial Distribution). Она может быть использована для прогнозирования повторных заказов клиентов, чтобы определить пожизненную ценность клиентов (LTV — lifetime value). Она также может быть использована для прогнозирования оттока.

  Все, что вы хотели знать о задаче определения остаточного ресурса оборудования

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

  Личный путь и опыт в становлении Python разработчиком

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

  NORUAS — домашний Саурон, но это не точно…

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

  5 простых способов выйти из вложенных циклов в Python

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

  Делаем инференс на Nvidia Triton Inference Server

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

Видео

  Как мы с Fastapi на Django перешли

Мы переписали бекенд с FastAPI на Django. Расскажу, почему и как нам пришло это в голову, и что из этого получилось.

  Зачем нужен и как использовать Dependency Injection в питонячих сервисах

Расскажем про принцип Dependency Injection (DI). На конкретных примерах покажем как правильно его использовать в ваших сервисах и какие выгоды он принесёт.

Релизы

  pylint - 2.16.2

Статический анализатор Python-кода. Изменения описаны по ссылке https://pypi.org/project/pylint/2.16.2/. Скачать можно по ссылке: http://pypi.python.org/pypi/pylint/

  SQLAlchemy - 2.0.4

Библиотека работы с базами данных. Изменения описаны по ссылке https://pypi.org/project/sqlalchemy/2.0.4/. Скачать можно по ссылке: http://pypi.python.org/pypi/SQLAlchemy/

  aiohttp - 3.8.4

http клиент/сервер для asyncio. Изменения описаны по ссылке https://pypi.org/project/aiohttp/3.8.4/. Скачать можно по ссылке: https://pypi.python.org/pypi/aiohttp

  Django - 3.2.18

Мощный web-фреймворк. Изменения описаны по ссылке https://pypi.org/project/django/3.2.18/. Скачать можно по ссылке: http://pypi.python.org/pypi/Django/

  Werkzeug - 2.2.3

Швейцарский армейский нож веб-разработки Python. Изменения описаны по ссылке https://pypi.org/project/werkzeug/2.2.3/. Скачать можно по ссылке: http://pypi.python.org/pypi/Werkzeug/

  Mypy 1.0

Mypy is a static type checker for Python

  pip - 23.0.1

Утилита для управления модулями в Python. Изменения описаны по ссылке https://pypi.org/project/pip/23.0.1/. Скачать можно по ссылке: http://pypi.python.org/pypi/pip/

  sentry - 23.2.0

Мощная система логгирования и платформа агрегации логов. Изменения описаны по ссылке https://pypi.org/project/sentry/23.2.0/. Скачать можно по ссылке: https://pypi.python.org/pypi/sentry/

  Flask - 2.2.3

Web-фреймворк на основе Werkzeug, Jinja2 и благих намерениях. Изменения описаны по ссылке https://pypi.org/project/flask/2.2.3/. Скачать можно по ссылке: http://pypi.python.org/pypi/Flask/

  imapautofiler 1.13.0

imapautofiler applies user-defined rules to automatically organize messages on an IMAP server.

  django-upgrade release with Django 4.2 fixers

Automatically upgrade your Django projects

  celery - 5.3.0b2

Распределенная очередь задач. Изменения описаны по ссылке https://pypi.org/project/celery/5.3.0b2/. Скачать можно по ссылке: http://pypi.python.org/pypi/celery/

  selenium - 4.8.2

Модуль для автоматизации тестирования web-приложений. Изменения описаны по ссылке https://pypi.org/project/selenium/4.8.2/. Скачать можно по ссылке: http://pypi.python.org/pypi/selenium/

  pex - 2.1.122

Библиотека и утилита для генерации .pex (Python EXecutable) файлов. Изменения описаны по ссылке https://pypi.org/project/pex/2.1.122/. Скачать можно по ссылке: https://pypi.python.org/pypi/pex/