Собрали в одном месте самые важные ссылки
и сделали Тренажер IT-инцидентов для DevOps/SRE
Эта статья будет полезна аналитикам, дата-инженерам и специалистам по обработке больших данных, а также тимлидам команд, которые работают с Apache Spark для решения задач аналитики и машинного обучения. Вы узнаете, как правильно задавать параметры Spark-сессии, чтобы получить ресурсы.
Разберем что такое большие языковые модели, рассмотрим принцип генерации текста, и напишем свой генератор текста на Python, используя цепи Маркова.
Я решил рассказать о том, как ускорить обычный бинаный поиск в сотни раз и искать данные в обычном текстовом файле БЫСТРЕЕ, чем при использовании класических баз данных. Сейчас я попробую решить задачу бинарного поиска без них, расскажу об основных способах оптимизации, а в конце проведу сравнение. Это вполне реальная задача, с которой я столкнутся при разработке собственного проекта, а поэтому мне есть что вам рассказать.
В ходе исследования непонятного бага с битой кодировкой в именах загружаемых файлов мы столкнулись с непредвиденным поведением популярной библиотеки aiohttp. Решая эту проблему, мы получили полезный опыт, которым хочу с вами поделиться.
В данной статье представлены примеры использования фикстур (fixture) для фреймворка автоматического тестирования pytest. Фикстуры представляют собой функции, которые можно использовать для решения различных задач при проведении автоматизированного тестирования.
Приложение для поддержки тегов в Django. Приложение будет крайне полезно на сайте с новостями, которые необходимо помечать тегами, так же можно легко реализовать сортировку по тегам.. Скачать можно по ссылке: https://pypi.python.org/pypi/django-taggit/
Когда-то давно я узнал что в python есть Threading. Потом я узнал про GIL. Вариантов как его обойти - масса, но я решил провести небольшое исследование и написать про то, в каких случаях стоит использовать и какие библиотеки многопоточности. Я встречал на хабре статью про GIL, там описано это всё более подробно и более глубоко. Но мне, на тот момент только начавшему разбираться в многопоточности было сложно разобраться в том что там к чему, поэтому я решил сделать своё исследование, а спустя долго время и написать о нём здесь (естественно переписав всё исследование почти с нуля)
textX - это инструмент для создания языковых моделей (DSL) на Python. Он позволяет быстро и легко определить грамматику языка и сгенерировать парсер для этого языка. textX распространяется с открытым исходным кодом, легко интегрируется с другими инструментами Python и может быть использован в различных проектах, где необходимо определять и обрабатывать языки на основе текста.
Однажды на работе у нас возникла проблема с производительностью одной из наших основных Python-библиотек.
Эта библиотека формирует фундамент нашего конвейера 3D-обработки. Это довольно большая и сложная библиотека, использующая NumPy и другие научные пакеты Python для выполнения широкого спектра математических и геометрических операций.
Обзор книги Энтони Шоу "Внутри CPython".
Проверка типов и проверка значений обрабатываются в Python гибким и неявным образом. В Python начиная с Python 3 появился модуль 1typing, который обеспечивает поддержку подсказок типов во время 2выполнения. Но для проверки значений не существует единого способа проверки.
Когда дело доходит до оптимизации производительности, чаще всего особое внимание уделяется скорости и активности использования ЦП. Гораздо реже кто-либо задумывается о потреблении памяти, конечно, пока не будут израсходованы мощности RAM. Есть много причин, по которым предпринимаются попытки лимитировать использование памяти – не только стремление избежать отказа приложения из-за ошибок, связанных с её исчерпанием. В этой статье будет исследовано, как находить в ваших приложениях на Python такие участки, где возникает перерасход памяти, проанализировано, по каким причинам это происходит. Наконец, мы научимся снижать использование памяти и сокращать отпечаток программы в памяти, пользуясь простыми приёмами и эффективными структурами данных.
Нетипичный туториал по разработке Telegram-бота на Python и Aiogram 3. В отличие от большинства гайдов и туториалов про разработку ботов «для новичков», здесь будут рассмотрены все аспекты создания бота, от установки редактора кода до подключения оплаты и развёртывания на сервере. В первой части мы рассмотрим подготовку окружения, файловую структуру бота и напишем первый рабочий код бота.
TLDR: в этой статье я рассуждаю о подходах к организации валидации конфигураций сетевых железок и презентую свой плагин для NetBox, позволяющий легко создавать эти самые комплаенс‑тесты.
Завершение цикла статей про техническое оживление Python Дайджест. В первых трех частях рассказано как был совершен переход с Python 3.4 на Python 3.11 и Django 4, отформатирована вся кодовая база с pre-commit, настроена автоматизация задач на основе Github Actions. В заключительной части расскажу как получить "быстрый" сайт.
Enum (перечисление) - это удобный инструмент для определения констант и управления состоянием приложения в Python 3. Он позволяет определить набор именованных констант, которые могут использоваться в коде, что делает код более читаемым и понятным. Однако, использование enum имеет и свои ограничения и недостатки, которые также необходимо учитывать. В данной статье мы рассмотрим, как использовать enum в Python 3, а также обсудим его преимущества и недостатки.
GPT-4 позволяет достаточно просто писать boilerplate код с использованием различных языков, технологий и библиотек. Но, есть небольшая проблема, данные GPT-4 не совсем актуальные и ограничены серединой 2021 года.
ChatGPT, GPT-4 и Claude — это мощные языковые модели, которые дообучают, используя метод, который называется «обучение с подкреплением на основе отзывов людей» (Reinforcement Learning from Human Feedback, RLHF). Благодаря этому такие модели лучше отражают наши ожидания в плане их поведения, они лучше соответствуют тому, как мы собираемся их использовать.
В апреле поговорили об исследовании экосистемы Django от JetBrains, LTS-релизе Django 4.2, релизе Pandas 2.0 и свежих PEP. Под катом — текстовая выжимка из обсуждения.
В этой статье я расскажу об одном способе вычисления x mod p, для p вида (2 ** n - omega), причём omega значительно меньше 2 ** n. Напишу генератор констант на Python. Приведу пару игрушечных примеров на С++, для которых может быть выполнено исчерпывающее тестирование для всех возможных аргументов. А в качестве серьёзной проверки - вычислю 97! mod (2 ** 256 - 2 ** 32 - 977).