Просто Python | Data science | ML | AI
9.99K subscribers
2.04K photos
38 videos
40 files
2.06K links
Говорим просто о Python, Data Science и машинном обучении!

Связаться: @agencytender

Канал на бирже:
https://telega.in/c/pro100python1

Ссылка для друга:
https://t.me/+Iy7vrYZkpiU3NzJi

РКН: https://rkn.link/ANH
Download Telegram
Пишем GPT в 60 строк NumPy (окончание, 2/2)

В первой части поста мы начали реализацию с нуля GPT всего в 60 строках numpy.

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

Если не вдаваться в подробности, архитектура GPT состоит из трёх частей:

Текстовые + позиционные эмбеддинги
Стек декодера трансформера
Этап проецирования на вокабулярий

🧠 Читать статью

Просто Python
Please open Telegram to view this post
VIEW IN TELEGRAM
✈️ Пишем чат-бот для Telegram на Python, используя webhook и минимум внешних библиотек

Чат‑бот в Telegram может работать в одном из двух режимов.

Один из них называется polling — это когда код, непосредственно реализующий механику бота, опрашивает сервера Telegram с определенной периодичностью («не появилось ли чего новенького»). А если обнаружена активность в чате — реализуется определенная механика взаимодействия (общения).

Второй режим работы ботов, webhook, подразумевает, что Telegram сам вызывает обработчик события/сообщения, когда в боте происходит какая‑то активность. Другими словами, код, реализующий механику бота, срабатывает по инициативе человека, который «общается» с ботом. Самый главный плюс от такого режима работы — ответ бота на действие человека происходит мгновенно: человек написал что‑то боту, Telegram тут же вызвал webhook, написанный код сразу «ответил» человеку.

🧠 Читать статью

Просто Python
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡️ Построение пайплайна обработки данных в реальном времени с использованием Python

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

Обработка данных в реальном времени позволяет:

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

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

Оптимизировать производственные процессы и управлять ресурсами на основе актуальных данных.

Предсказывать будущие события и тренды, что помогает в принятии стратегических решений.

🧠 Читать статью

Просто Python
Please open Telegram to view this post
VIEW IN TELEGRAM
Тест-драйв PyTorch 2.0 и заглядываем под капот «двушки»

Новейший метод для ускорения кода в PyTorch 2.0 — torch.compile(), который позволяет JIT‑компилировать код PyTorch в оптимизированные ядра, требуя минимальных изменений кода.

JIT‑компиляция (Just‑In‑Time compilation) — это процесс, при котором код на высокоуровневом языке преобразуется в код на низкоуровневом языке, который может быть быстрее и эффективнее исполнен процессором или графическим ускорителем. torch.compile() использует TorchDynamo и заданный бэкенд для JIT‑компиляции кода PyTorch.

В посте мы рассмотрим, насколько эффективен torch.compile() на практике, заглянем под капот «двушки» PyTorch 2.0, чтобы узнать, как работает этот метод и какие преимущества он дает. Разработчики PyTorch заявляют, что torch.compile() может дать прирост производительности до 50% по сравнению с обычным кодом PyTorch. Для проверки этого заявления мы проведем ряд экспериментов на разных моделях и данных, выясним, есть ли реальная выгода от использования torch.compile().

💬 Читать подробнее

Просто Python
Please open Telegram to view this post
VIEW IN TELEGRAM
Многопоточность в Python: очевидное и невероятное

Уровень сложности
Средний

В данной статье я покажу на практическом примере как устроена многопоточность в Python, расскажу про потоки, примитивы синхронизации и о том зачем они нужны.

Изначально я планировал что это будет простая и короткая заметка, но пока готовил и тестировал код нашел интересный неочевидный момент связанный с внутренностями CPython, так что не спешите закрывать вкладку, даже если уверены что знаете о потоках в Python всё:)

🧠 Читать статью

Просто Python
Please open Telegram to view this post
VIEW IN TELEGRAM
🔺 Проектирование веб-приложений с помощью Python и Flask

Для каких проектов лучше всего подходит Flask, а для каких — Django? Какие особенности Flask можно использовать при разработке веб-приложений наиболее эффективно? Я Алексей Некрасов, лидер направления Python в МТС, автор форка библиотеки flask-combo-jsonapi, программный директор курсов по Python в Skillbox, СЕО Forkway и автор канала Python — учим и работаем.

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

🧠 Читать статью

Просто Python
Please open Telegram to view this post
VIEW IN TELEGRAM
💻 Я пользуюсь ChatGPT для создания скриптов на Python

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

С некоторых пор стал активно использовать ChatGPT для написания простых скриптов для автоматизации действий. Это не руководство к действию и не «волшебные промпты», лишь описываю свой опыт.

🧠 Читать статью

Просто Python
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡️ Протоколы в Python. О них мало говорят, а зря

Рассказали, зачем нужны протоколы в Python, почему о них так мало говорят и зачем нужен статический анализатор mypy.

Когда новички изучают Python, очень много внимания выделено на языковые конструкции и концепции. К примеру, рекурсия или ООП. Но никто не замечает, что речь о типизации в этом языке программирования, если заходит, то сильно вскользь? И, как правило, это фразы в стиле: “Python – это язык с динамической типизацией”. Это понятно, но что это означает?

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

🧠 Читать статью

Просто Python
Please open Telegram to view this post
VIEW IN TELEGRAM
📈 3 простых способа ускорить код на Python

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

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

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

🧠 Читать статью

Просто Python
Please open Telegram to view this post
VIEW IN TELEGRAM
Как часто вы делаете code-review в своих проектах? 

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

Хотите научиться правильно проводить ревью, чтобы повысить качество своих конечных результатов? 

Приходите на бесплатный открытый урок «Code-review онлайн» от OTUS.

Преподаватель курса «С# Developer Professional» Антон Герасименко, .net developer + lead с опытом в разработке более 10 лет:
— проведет code-review нескольких учебных проектов;
— расскажет о сode-review в целом: стоит ли его проводить, кому и когда он полезен.

🔥Во второй части урока у вас будет возможность отправить свой код и разобрать его вместе с преподавателем прямо на вебинаре!

📆 Занятие пройдёт 5 октября в 20:00 мск в рамках курса «C# Developer. Professional». После открытого урока вы сможете поступить на курс на специальных условиях.

➡️Регистрируйтесь на вебинар
https://otus.pw/wUJO/

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, ERID: LjN8KaZCv, www.otus.ru
Please open Telegram to view this post
VIEW IN TELEGRAM
📚 7 полезных книг по Python для старта и развития навыков

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

🧠 Читать статью

Просто Python
Please open Telegram to view this post
VIEW IN TELEGRAM
🐼 (Pandas + SQL) Обзор Python-библиотеки PandaSQL

Pandas уже давно является неотъемлемым инструментом в арсенале любого специалиста, работающего с данными на языке Python. Ровно также неотъемлемым навыком является знание языка SQL, предназначенного для извлечения, хранения и модификации данных из реляционных баз.

В данной статье будет рассмотрена еще одна python-библиотека PandaSQL, которая позволяет использовать язык запросов SQL для обработки табличных данных pandas (DataFrame).

🧠 Читать статью

Просто Python
Please open Telegram to view this post
VIEW IN TELEGRAM
🎮 Три крутые игры на Python с исходниками

Игра №1. Арканоид

Цель этой игры, отбивать мяч от платформы и не упустить его.

Игра №2. Тетрис.

Эту игру знают все! Главная задача игрока не дать разным, геометрическим фигурам достигнуть "ФИНИША".

Игра №3. Танки.

Для создания данной игры нам потребуется всего ода библиотека, random.

🧠 Читать статью

Просто Python
Please open Telegram to view this post
VIEW IN TELEGRAM
💎Год ожиданий — и мы получили Python 3.12. Изменения, новшества и дополнения

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

Кроме того, запущен процесс альфа-тестирования Python 3.13, где заявлен режим сборки CPython без глобальной блокировки интерпретатора (GIL, Global Interpreter Lock). Тестировать ветку будут в течение семи месяцев, исправляя ошибки и добавляя новые возможности. Затем еще три месяца — тестирование бета-версий и еще через два месяца появится пред-финальная версия. Но будет потом, а сейчас поговорим о том, что уже есть в руках — о Python 3.12.

🧠 Читать статью

Просто Python
Please open Telegram to view this post
VIEW IN TELEGRAM
RoadMap для изучения Machine Learning 2023

RoadMap для изучения Machine Learning: Машинное обучение (ML) - это тип искусственного интеллекта (AI), который позволяет программным приложениям становиться более точными в прогнозировании результатов без явного программирования для этого. Алгоритмы машинного обучения используют исторические данные в качестве входных данных для прогнозирования новых выходных значений.

Механизмы рекомендаций - это распространенный вариант использования машинного обучения. Другие популярные области применения включают обнаружение мошенничества, фильтрацию спама, обнаружение угроз вредоносного ПО, автоматизацию бизнес-процессов (BPA) и прогнозное обслуживание.

🧠 Читать статью

Просто Python
Please open Telegram to view this post
VIEW IN TELEGRAM
💖 Функциональное программирование в Python: ежедневные рецепты

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

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

🧠 Читать статью

Просто Python
Please open Telegram to view this post
VIEW IN TELEGRAM
⚠️ 10 лучших практик логирования в Python

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

В этой статье мы рассмотрим лучшие практики логирования в Python. Следуя им, вы сможете обеспечить информативность, практичность и масштабируемость генерируемых логов. Давайте начнём!

🧠 Читать статью

Просто Python
Please open Telegram to view this post
VIEW IN TELEGRAM
🔺 Извлечение текста из файлов PDF при помощи Python

В эпоху больших языковых моделей (Large Language Model, LLM) и постоянно расширяющейся сферы их применений непрерывно растёт и важность текстовых данных.

Существует множество типов документов, содержащих подобные виды неструктурированной информации, от веб-статей и постов в блогах до рукописных писем и стихов. Однако существенная часть этих данных хранится и передаётся в формате PDF. В частности, выяснилось, что за каждый год в Outlook открывают более двух миллиардов PDF, а в Google Drive и электронной почте ежедневно сохраняют 73 миллионов новых файлов PDF (2).

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

🧠 Читать статью

Просто Python
Please open Telegram to view this post
VIEW IN TELEGRAM
🦾 Как правильно писать API авто тесты на Python

Если мы говорим про UI автотесты, то тут хотя бы есть паттерны Page Object, Pagefactory; для API автотестов таких паттернов нет. Да, существуют общие паттерны, по типу Decorator, SIngletone, Facade, Abstract Factory, но это не то, что поможет протестировать бизнес логику. Когда мы пишем API автотесты, то нам хотелось бы, чтобы они отвечали требованиям:

Проверки должны быть полными, то есть мы должны проверить статус код ответа, данные в теле ответа, провалидировать JSON схему;

Автотесты должны быть документированными и поддерживаемыми. Чтобы автотесты мог читать и писать не только QA Automation, но и разработчик;

Хотелось бы, чтобы JSON схема и тестовые данные генерировались автоматически на основе документации;

Отчет должен быть читабельным, содержав в себе информацию о ссылках, заголовках, параметрах, с возможностью прикреплять какие-то логи.

🧠 Читать статью

Просто Python
Please open Telegram to view this post
VIEW IN TELEGRAM