Python Portal
56.7K subscribers
2.39K photos
363 videos
51 files
951 links
Всё самое интересное из мира Python

Связь: @devmangx

РКН: https://clck.ru/3GMMF6
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
А что если обучать AI-агентов на обычном ноуте было бы так же просто, как на GPU-кластере?

Команда из UIUC U Lab под руководством проф. Jiaxuan You выложила в опенсорс OpenTinker.

Это новая система формата Reinforcement-Learning-as-a-Service (RLaaS), которая разбивает тяжелый RL-пайтлайн на простые распределенные сервисы с удобными API.

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

Project: https://open-tinker.github.io/opentinker-page/
Code: https://github.com/open-tinker/OpenTinker
U Lab: https://github.com/ulab-uiuc

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
8👍6
This media is not supported in your browser
VIEW IN TELEGRAM
Научная фантастика, на которой мы выросли, становится реальностью в 2026 году 👀

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
49🤣11👀6🌭2👍1
😆😆😆

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
68😁44🔥8🤯1
4 парадигмы обучения в машинном обучении, объяснённые визуально:

1. Transfer Learning
2. Fine-tuning
3. Multi-task Learning
4. Federated Learning

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥19👍2
Эти Google Colab-ноутбуки помогают реализовать все алгоритмы машинного обучения с нуля 🤯

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍255
кресло для программирования против кресла для отладки.

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
😁51👀6
Сейчас ИИ-инструменты уже умеют читать сообщения, размышлять над ними и сами дергать нужные функции.

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

В этом туториале показывают, как собрать и задеплоить своего ИИ-агента на связке LangChain, FastAPI и Sevalla.

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
12👍5😁4
Совет по Python:

Можно сделать поля dataclass неизменяемыми, указав frozen=True.
В таком случае поля нельзя мутировать после создания инстанса.

Пример ниже👇

from dataclasses import dataclass

@dataclass(frozen=True)
class Color:
name: str
hex_value: str

color = Color("red", "#FF0000")

# color.name = "blue" # выбросит FrozenInstanceError


👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
20
Каждый раз, когда я узнаю что-то новое в области технологий, в отрасли появляется еще три новых вещи, которые нужно изучить.

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
😢7110🤯7👍4🔥2🤝1
Где получить навыки, для старта карьеры в ИТ?

Развивайтесь в аналитике и разработке на бесплатной программе от экспертов из Т-Банка.

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

А еще:

— онлайн-обучение в удобное время;
— нагрузка от 14 часов в неделю — можно совмещать с учебой или работой;
— мастер-классы, экскурсии в офисы и встречи в ИТ-хабах;
— чат с обсуждением заданий.

В процессе обучения участники получат шанс пройти собеседование в Т-Банке.

Успейте подать заявку до 23 января
🤔4🤣31
Лучшие библиотеки Python 2026 года

Общего назначения

▪️ty — сверхбыстрый type checker нового поколения
▪️complexipy — измеряет сложность кода так, как её чувствует человек
▪️Kreuzberg — извлечение данных из 50+ форматов
▪️hrottled-py — rate limiting с 5 алгоритмами
▪️httptap — HTTP waterfall прямо в терминале
▪️ fastapi-guard — безопасность FastAPI без боли
▪️modshim — расширяй модули без monkey-patching
▪️Spec Kit — спецификации → рабочий код
▪️Skylos — dead code + уязвимости
▪️FastOpenAPI — OpenAPI для любого фреймворка

AI / ML / Data

▪️MCP Python SDK + FastMCP — стандарт интеграции LLM с инструментами
▪️TOON — JSON, оптимизированный под токены
▪️ Deep Agents — агенты с планированием и памятью
▪️ smolagents — агенты, которые думают кодом
▪️ LlamaIndex Workflows — event-driven AI workflows
▪️ Batchata — дешёвые batch-запросы к LLM
▪️ MarkItDown — любые файлы → Markdown
▪️ Data Formulator — анализ данных через natural language
▪️ LangExtract — точное извлечение сущностей из текста
▪️ GeoAI — ML + геоданные без боли

Детально, с примерами и разбором — в полной статье

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
11👍6
Ускорение процесса решето Эратосфена

1. Быстро вспомним алгоритм

Классическая реализация:

def eratosthenes(n):
is_prime = [True] * (n + 1)
is_prime[0] = is_prime[1] = False

for i in range(2, int(n ** 0.5) + 1):
if is_prime[i]:
for j in range(i * i, n + 1, i):
is_prime[j] = False

return is_prime


Время — O(N log log N). Нас будет интересовать не асимптотика, а то, насколько можно ускорить чисто реализацией.

2. Оптимизация №1 — не трогаем чётные числа

Идея простая:

* все чётные, кроме 2, составные
* если работаем только с нечётными, уменьшаем массив и количество итераций примерно вдвое

Реализация:

def eratosthenes_odd(n):
if n < 2:
return []

size = (n + 1) // 2
is_prime = [True] * size
is_prime[0] = False

limit = int(n ** 0.5) // 2
for i in range(1, limit + 1):
if is_prime[i]:
p = 2 * i + 1
start = (p * p) // 2
for j in range(start, size, p):
is_prime[j] = False

return is_prime


3. Оптимизация №2 — вместо list[bool] использовать bytearray

Мысль:

* bool в Python — это объект
* bytearray — плотно упакованный буфер
* меньше накладных расходов и лучше ложится в CPU cache

Пример:

def eratosthenes_bytearray(n):
is_prime = bytearray(b"\x01") * (n + 1)
is_prime[0:2] = b"\x00\x00"

for i in range(2, int(n ** 0.5) + 1):
if is_prime[i]:
for j in range(i * i, n + 1, i):
is_prime[j] = 0

return is_prime


4. Оптимизация №3 — гибрид двух подходов

def eratosthenes_fast(n):
if n < 2:
return []

size = (n + 1) // 2
is_prime = bytearray(b"\x01") * size
is_prime[0] = 0

limit = int(n ** 0.5) // 2
for i in range(1, limit + 1):
if is_prime[i]:
p = 2 * i + 1
start = (p * p) // 2
is_prime[start::p] = b"\x00" * (((size - start - 1) // p) + 1)

return is_prime


5. Сравнение по времени

Тест на входе n = 10_000_000:

>>> eratosthenes.py
real 0.634s

>>> eratosthenes_odd.py
real 0.245s

>>> eratosthenes_bytearray.py
real 0.801s

>>> eratosthenes_fast.py
real 0.028s


Выводы:

* пропуск чётных (№1) даёт ~2.6× ускорение
* bytearray (№2) сам по себе не ускоряет — это больше про память
* гибрид (№3) даёт ~22.6× ускорение

Ключевой приём в №3:

is_prime[start::p] = b"\x00" * (((size - start - 1) // p) + 1)


Здесь нет Python-цикла — всё делает C-уровневая операция над слайсом. На таких задачах это огромная разница.

Общая мысль: в Python чаще всего ускоряют не асимптотику, а модель памяти и количество проходов по данным. Циклы + память → главные факторы.

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17🤯53🔥2
😅😅😅

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
37🔥8😁5🤔3