pythonportal | Unsorted

Telegram-канал pythonportal - Python Portal

58174

Всё самое интересное из мира Python Связь: @devmangx РКН: https://clck.ru/3GMMF6

Subscribe to a channel

Python Portal

Изучай алгоритмы computer science наглядно

Этот онлайн-инструмент помогает разобраться с широким спектром алгоритмов через интерактивные визуализации.

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

👉 @PythonPortal

Читать полностью…

Python Portal

OpenAI выпустила Atlas новый браузер с искусственным интеллектом, который умеет запоминать контекст и работает в Agent Mode.

Что известно:

Atlas полностью интегрирован с ChatGPT и использует ChatGPT Search под капотом.

В Agent Mode браузер может сам ходить по сайтам, кликать, искать и выполнять действия.

Можно открывать неограниченное число вкладок с агентами — каждый живёт своей жизнью и решает отдельные задачи.

Atlas уже доступен для пользователей Free, Plus, Pro, Go и Business по всему миру.
Пользователи Enterprise и Education могут получить доступ к бете, если админ включит её. Также в разработке версии для Windows, iOS и Android.

Скачать можно на chatgpt.com/atlas

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

👉 @PythonPortal

Читать полностью…

Python Portal

Совет по чистому коду в Python:

Избегай наивных datetime-объектов — всегда используй те, что учитывают часовой пояс.

Работай с ними в UTC, а пользователю показывай только в его локальной таймзоне.

import datetime
from zoneinfo import ZoneInfo

# BAD
now = datetime.datetime.now()

print(now.isoformat())
# 2025-10-21T15:03:07.332217

# GOOD
now = datetime.datetime.now(tz=ZoneInfo("UTC"))
print(now.isoformat())
# 2025-10-21T12:04:22.573590+00:00

print(now.astimezone().isoformat())
# 2025-10-21T15:04:22.573590+03:00


👉 @PythonPortal

Читать полностью…

Python Portal

Пока дебажишь чужой код, мир начинает играть новыми красками

👉 @PythonPortal

Читать полностью…

Python Portal

Бесплатный курс от MIT для начинающих по основам компьютерных наук. В этих классических лекциях разбираются такие концепции, как дизайн языков программирования, абстракция и рекурсия: https://bit.ly/46zVDEy

👉 @PythonPortal

Читать полностью…

Python Portal

Python митап от Авито 27 октября в Москве!

Вечером 27 октября вас ждут в офисе на Лесной, чтобы обсудить:

кейс оптимизации GC в Python от Саши Федосеева, backend-инженера из команды Main Page Tech Авито;
как mypy укрощает Python в большой компании вместе с Сергеем Яхницким из Яндекса.

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

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

Так что не откладывайте, регистрируйтесь и зовите коллег — все подробности по ссылке

Читать полностью…

Python Portal

Как работать с requirements.txt и не запутаться в зависимостях

Когда Python-проект разрастается, в нём появляется десятки библиотек. Чтобы не ставить их вручную и не ломать окружение, используется файл requirements.txt - список всех зависимостей проекта.

Чтобы сохранить список установленных библиотек, достаточно одной команды:

pip freeze > requirements.txt


Она выгрузит все текущие пакеты и их версии в requirements.txt.

Чтобы развернуть проект на другой машине или сервере, выполняем:

pip install -r requirements.txt


Все нужные пакеты установятся автоматически — с нужными версиями.

В requirements.txt можно указывать версии библиотек по-разному:

numpy==1.21.0     # строгая версия  
pandas>=1.3.0 # версия не ниже указанной
requests # установится последняя


И не забывай: комментарии начинаются с #.

# Основные зависимости
numpy==1.21.0
pandas>=1.3.0

# Для тестов
pytest


Если проект большой то можно разбить зависимости:

# requirements.txt
-r base.txt
-r dev.txt


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

Чтобы зафиксировать версии пакетов без прямого указания в основном файле, можно использовать constraints.txt:

pip install -r requirements.txt -c constraints.txt


Пример:

requirements.txt:

numpy==1.21.0
pandas


constraints.txt:

pandas<=1.3.5


Для разных задач - свои зависимости:

requirements-dev.txt     # разработка  
requirements-test.txt # тесты
requirements-prod.txt # продакшен


Пример:

pip install -r requirements-dev.txt


Чтобы подтянуть свежие версии библиотек:

pip install --upgrade -r requirements.txt


Всегда изолируй зависимости:

python -m venv venv
source venv/bin/activate # macOS/Linux
venv\Scripts\activate # Windows
pip install -r requirements.txt


👉 @PythonPortal

Читать полностью…

Python Portal

А случайно ли это было?

👉 @PythonPortal

Читать полностью…

Python Portal

Stack Overflow не умер, он делает мощный камбэк

Да, наш любимый Stack Overflow, где мы все когда-то искали ответы на «почему не работает мой код», снова в игре. Они запустили Stack Overflow AI

На первый взгляд это может напоминать ChatGPT или другие AI-инструменты, но ключевое отличие в том, что он работает на базе огромной базы знаний разработчиков, которую Stack Overflow собирал годами

Похоже, Stack Overflow снова нашёл способ быть незаменимым. 🩷

👉 @PythonPortal

Читать полностью…

Python Portal

Чёрт, не верится, что этот инструмент бесплатный и с открытым исходником 🤯

Идеальный конвертер файлов: без ограничений по размеру, без рекламы и полностью open source.

- Конвертирует изображения, видео, документы и многое другое
- Быстрый и простой в использовании
- Поддерживает кучу форматов
- Без регистрации и прочей ерунды

Обязательная штука для разработчиков, дизайнеров, контент-мейкеров, короче, для всех, кто работает с файлами :)

👉 @PythonPortal

Читать полностью…

Python Portal

Не программируй больше в одиночку в VS Code. Это расширение добавит питомцев прямо в твой редактор

Забираем здесь. GitHub тут

👉 @PythonPortal

Читать полностью…

Python Portal

Принес годноту: свежие доклады по аналитике

Чуть контекста:

20 сентября в Москве прошла Data Driven - ежегодная конфа для аналитиков от Поиска и Рекламных технологий Яндекса.


Вот пара докладов, что особенно мне откликнулись:

- End-to-end качество Алисы как универсального AI-ассистента / Мария Акопян. Как измерить «качество» виртуального ассистента, который живёт в колонках, чатах и приложениях? Мария рассказала, как команда переосмыслила оффлайн-оценку Алисы, научилась собирать сложные срезы пользовательских сессий и перешла на гибридную разметку с помощью LLM. Получился доклад про то, как метрики превращаются в реальные улучшения поведения ИИ.

- Дашборд как средство коммуникации разработчика с пользователем / Владимир Дмитриев. 10 000 дашбордов за три месяца - и всё равно пользователи не находят нужные данные. Владимир объяснил, почему дашборд, это не просто визуализация, а инструмент общения аналитика с командой. И как сделать так, чтобы данные реально помогали, а не лежали красивыми графиками в BI

Забирайте под горячий кофе ☕️

Все доклады можно посмотреть на сайте. Или здесь:
- Трек "Data to Insights": YT | VK
- Трек "Data to Artifacts": YT | VK

Реклама. ООО "Яндекс". ИНН 7736207543

Читать полностью…

Python Portal

Мертвый интернет - больше не просто теория

👉 @PythonPortal

Читать полностью…

Python Portal

Вышел PyTorch 2.9, обновление с упором на производительность, переносимость и удобство для разработчиков

Свежая версия приносит стабильный libtorch ABI для C++/CUDA-расширений, симметричную память для multi-GPU ядер, расширенную поддержку wheel-пакетов под ROCm, XPU и CUDA 13, а также улучшения для платформ Intel, Arm и x86.

В релизе — 3216 коммитов от 452 контрибьюторов, и PyTorch 2.9 продолжает развивать экосистему open source AI по всему миру.

Полный разбор: https://hubs.la/Q03NNKqW0

👉 @PythonPortal

Читать полностью…

Python Portal

Ни одно Python-сообщество раньше не принимало новый инструмент так быстро, как uv. 👀

Скорее всего, uv это лучший инструмент для Python за последние несколько лет.

Если ты им ещё не пользуешься, отложи всё и посмотри, что это такое.

А если уже пользуешься => глянь на прикреплённый читщит, там есть полезные штуки.

👉 @PythonPortal

Читать полностью…

Python Portal

Возможности Python впечатляют

👉 @PythonPortal

Читать полностью…

Python Portal

Один One Day Offer вам или целых три — всем? 😉

25 октября Сбер проведёт сразу три экспресс-отбора кандидатов в две команды: GigaData и Kandinsky. Чем вам предстоит заниматься 👇

✔️ Развивать GigaData — внутреннюю платформу Сбера, которая обрабатывает петабайты данных и миллиарды запросов в сутки. One Day Offer для Python‑разработчиков.

✔️ Работать над Kandinsky — обучать большие модели с нуля, собирать и подготавливать данные, исследовать самые эффективные методы дообучения моделей.

One Day Offer для Machine Learning Engineers с опытом в Deep Learning и компьютерном зрении (CV).
One Day Offer для Research и Deep Learning Engineers.

Выбирайте то, что больше подходит под ваши навыки, и регистрируйтесь на One Day Offer!

Читать полностью…

Python Portal

Бесплатная халява в Steam

Забираем Upload Labs — симулятор программиста, где тебе предстоит спасти Вселенную от тепловой смерти, создав идеальную компьютерную систему. 🤣

Готовься к настоящему испытанию мозга, ведь придётся писать код, оптимизировать ресурсы и заставлять всё работать как часы.

Забираем: стим

👉 @PythonPortal

Читать полностью…

Python Portal

Вот трюк для оптимизации нейросетки, который даёт примерно 4x ускорение при передаче данных с CPU на GPU.

Представим задачу классификации изображений.

Определяем модель, загружаем и преобразуем данные.

В цикле обучения передаём данные на GPU и тренируем сеть.

В чём проблема:

Если заглянуть в профайлер,

- большая часть ресурсов уходит на ядро (то есть на само обучение),
- но заметное время тратится и на передачу данных с CPU на GPU (cudaMemcpyAsync).

Сократить это просто.

Изначально датасет состоит из пикселей в виде 8-битных целых чисел. Мы преобразуем их в 32-битные float’ы.
А потом именно эти float-тензоры гоняем на GPU. В итоге данных стало в 4 раза больше, а значит, и передача тяжелее.

Решение:

Сдвинуть шаг преобразования после передачи. То есть сначала передаём 8-битные int’ы, а уже на GPU конвертируем их в float.

В результате шаг передачи данных заметно ускорится.

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

👉 @PythonPortal

Читать полностью…

Python Portal

100 процентое сходство

👉 @PythonPortal

Читать полностью…

Python Portal

Визуальное объяснение интеграла

👉 @PythonPortal

Читать полностью…

Python Portal

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

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

Функциональность впечатляет:

- обработка текста, аудио, видео, ссылок и роликов с YouTube;
- создание единой базы знаний и поиск по ней через RAG;
- система памяти, запоминающая диалоги и предпочтения пользователя;
- генерация подкастов с помощью локальной модели синтеза речи.

Весь проект полностью открытый и доступен на GitHub, а сборка работает локально, без облачных зависимостей.

👉 @PythonPortal

Читать полностью…

Python Portal

Художник показал эволюцию глубокого обучения в честь Нобелевской премии Джеффри Хинтона

В сети появилась анимация “Evolution of Deep Learning by Hand” - творческая работа, посвящённая ключевым идеям, которые Джеффри Хинтон внёс в развитие глубокого обучения. Автор вручную нарисовал эволюцию концепций, лежащих в основе современных нейросетей, в знак признания вклада Хинтона, недавно удостоенного Нобелевской премии.

👉 @PythonPortal

Читать полностью…

Python Portal

Совет по Python:

Кортежи - неизменяемые, то есть их нельзя менять.
Точнее говоря, сам кортеж - его длина и ссылки на объекты не могут изменяться.

Но если внутри кортежа лежит ссылка на изменяемый объект, этот объект можно менять.

>>> a = (10, ["S","u","m","m","e" ,"r"], "abc")

>>> a[1] = ["S","u","m","m","e" ,"r", "Mode"]
TypeError: 'tuple' object does not support item assignment

>>> a[1].append("Mode")
>>> a
(10, ['S', 'u', 'm', 'm', 'e', 'r', 'Mode'], 'abc')


👉 @PythonPortal

Читать полностью…

Python Portal

Всё просто

👉 @PythonPortal

Читать полностью…

Python Portal

Роадмап по AI Engineering, которому реально могут следовать новички. Всё построено на 100% бесплатных, опенсорс и комьюнити-ресурсах

Все ресурсы можно найти здесь: GitHub

👉 @PythonPortal

Читать полностью…

Python Portal

Многие зевают на теме косинуса, думая, что это скучная тригонометрия.

Но на деле именно косинус лежит в основе того, как работают векторные базы данных.

Короткий разбор — byhand.ai/vecdb

Косинус это угол между векторами.
Cosine similarity способ сравнивать эмбеддинги.
Векторная база ищет наиболее релевантный кусок, измеряя, какие векторы направлены одинаково.

Вот она, та самая математика, на которой держатся поиск, RAG и агенты.

👉 @PythonPortal

Читать полностью…

Python Portal

Война браузеров

👉 @PythonPortal

Читать полностью…

Python Portal

Нужно поймать и IndexError, и KeyError?

Просто используй их общего родителя — LookupError

try:
db_host = config['db'][0]['hosts'][0][0]
except LookupError: # ловит оба варианта
db_host = 'localhost'


LookupError базовый класс для ошибок, связанных с поиском по ключу или индексу (включая KeyError и IndexError), так что этот трюк аккуратно покрывает оба случая.

👉 @PythonPortal

Читать полностью…

Python Portal

Джун, который уже второй день воюет с единственным багом, что я ему поручил 😅

👉 @PythonPortal

Читать полностью…
Subscribe to a channel