В Python есть встроенный кэш, о котором многие забывают.
Если функция часто вызывается с одними и теми же аргументами, не всегда нужно руками писать словарь, Redis или отдельный слой кэширования.
Иногда хватает lru_cache из стандартного модуля functools.
Пример:
from functools import lru_cache
@lru_cache(maxsize=128)
def get_user(user_id):
print("Запрос к базе")
return {"id": user_id}
Первый вызов выполнит функцию.
Повторный вызов с тем же user_id вернёт результат из кэша.
get_user(1) # Запрос к базе
get_user(1) # уже из кэша
maxsize ограничивает размер кэша, а старые значения вытесняются по принципу LRU: least recently used.
Полезно для:
• тяжёлых вычислений
• запросов к API
• чтения редко меняющихся данных
• рекурсивных алгоритмов
Главное помнить: lru_cache хорошо работает, когда результат функции зависит только от её аргументов.
@Python_Community_ru
Если функция часто вызывается с одними и теми же аргументами, не всегда нужно руками писать словарь, Redis или отдельный слой кэширования.
Иногда хватает lru_cache из стандартного модуля functools.
Пример:
from functools import lru_cache
@lru_cache(maxsize=128)
def get_user(user_id):
print("Запрос к базе")
return {"id": user_id}
Первый вызов выполнит функцию.
Повторный вызов с тем же user_id вернёт результат из кэша.
get_user(1) # Запрос к базе
get_user(1) # уже из кэша
maxsize ограничивает размер кэша, а старые значения вытесняются по принципу LRU: least recently used.
Полезно для:
• тяжёлых вычислений
• запросов к API
• чтения редко меняющихся данных
• рекурсивных алгоритмов
Главное помнить: lru_cache хорошо работает, когда результат функции зависит только от её аргументов.
@Python_Community_ru
Вышел scikit-learn 1.9.
Это не релиз про «новую модную модель», а про то, что библиотека становится удобнее для реальной ML-разработки.
Главное:
• experimental callbacks
Теперь можно вешать callbacks на estimator-ы через set_callbacks() и отслеживать ключевые этапы fit.
Из коробки есть ProgressBar для прогресса и ScoringMonitor для логирования метрик.
• лучшее HTML-представление моделей
В Jupyter estimator-ы теперь показывают больше полезной информации после fit: fitted attributes, типы, значения, output features у трансформеров и пайплайнов.
Для сложных Pipeline, ColumnTransformer и FeatureUnion это реально удобнее, чем вручную копаться в атрибутах.
• новый sparse_interface
Появилась настройка:
sklearn.set_config(sparse_interface="sparray")
Она позволяет управлять тем, возвращает scikit-learn старые SciPy sparse matrix или новые sparse array.
Пока default остаётся spmatrix, но дальше библиотека будет постепенно двигаться к sparray.
• больше поддержки Array API
Часть моделей и метрик теперь лучше работает с Array API-compatible inputs.
• Narwhals как новая лёгкая зависимость
Она нужна, чтобы проще поддерживать разные dataframe-библиотеки, например pandas и polars, особенно в связке с set_output.
Обновление:
pip install --upgrade scikit-learn
https://blog.scikit-learn.org/updates/release-1-9/
@Python_Community_ru
Это не релиз про «новую модную модель», а про то, что библиотека становится удобнее для реальной ML-разработки.
Главное:
• experimental callbacks
Теперь можно вешать callbacks на estimator-ы через set_callbacks() и отслеживать ключевые этапы fit.
Из коробки есть ProgressBar для прогресса и ScoringMonitor для логирования метрик.
• лучшее HTML-представление моделей
В Jupyter estimator-ы теперь показывают больше полезной информации после fit: fitted attributes, типы, значения, output features у трансформеров и пайплайнов.
Для сложных Pipeline, ColumnTransformer и FeatureUnion это реально удобнее, чем вручную копаться в атрибутах.
• новый sparse_interface
Появилась настройка:
sklearn.set_config(sparse_interface="sparray")
Она позволяет управлять тем, возвращает scikit-learn старые SciPy sparse matrix или новые sparse array.
Пока default остаётся spmatrix, но дальше библиотека будет постепенно двигаться к sparray.
• больше поддержки Array API
Часть моделей и метрик теперь лучше работает с Array API-compatible inputs.
• Narwhals как новая лёгкая зависимость
Она нужна, чтобы проще поддерживать разные dataframe-библиотеки, например pandas и polars, особенно в связке с set_output.
Обновление:
pip install --upgrade scikit-learn
https://blog.scikit-learn.org/updates/release-1-9/
@Python_Community_ru
🖥 GitHub Pages можно пересобрать почти на голом Python.
Автор показал, как сделать лёгкую платформу для хостинга статических сайтов без фреймворков и тяжёлой инфраструктуры. Только стандартная библиотека Python.
Идея простая:
• http.server отдаёт статические файлы
• небольшой Python-код добавляет логику деплоя
• автоматизация обновляет сайт после изменений
• HTTPS можно прикрутить без отдельного большого стека
Главный кайф не в том, чтобы «убить GitHub Pages», а в том, чтобы понять механику под капотом.
Статический хостинг - это не магия. Это файловая раздача, маршруты, деплой, сертификаты и немного аккуратной автоматизации.
Хороший материал для тех, кто хочет лучше понимать web-инфраструктуру, а не просто нажимать кнопку Deploy.
https://blog.klemek.fr/articles/2026-06-14/
@Python_Community_ru
Автор показал, как сделать лёгкую платформу для хостинга статических сайтов без фреймворков и тяжёлой инфраструктуры. Только стандартная библиотека Python.
Идея простая:
• http.server отдаёт статические файлы
• небольшой Python-код добавляет логику деплоя
• автоматизация обновляет сайт после изменений
• HTTPS можно прикрутить без отдельного большого стека
Главный кайф не в том, чтобы «убить GitHub Pages», а в том, чтобы понять механику под капотом.
Статический хостинг - это не магия. Это файловая раздача, маршруты, деплой, сертификаты и немного аккуратной автоматизации.
Хороший материал для тех, кто хочет лучше понимать web-инфраструктуру, а не просто нажимать кнопку Deploy.
https://blog.klemek.fr/articles/2026-06-14/
@Python_Community_ru
Anthropic выкатила Claude Sonnet 5 - мощнейший «агентный» Sonnet в линейке.
Главная идея: модель теперь лучше планирует, пользуется инструментами, браузером, терминалом и может дольше вести сложные задачи без постоянного контроля.
По словам Anthropic, Sonnet 5 приблизился к Opus 4.8 по агентным задачам, но стоит дешевле. Особенно упор сделали на кодинг, tool use, reasoning и работу с многошаговыми процессами.
Модель уже доступна во всех планах Claude, включая Free и Pro, а также в Claude Code и API.
Цена для разработчиков до 31 августа 2026:
• $2 за 1 млн input tokens
• $10 за 1 млн output tokens
Потом стандартная цена:
• $3 за input
• $15 за output
Интересный момент: Anthropic отдельно пишет, что Sonnet 5 безопаснее Sonnet 4.6 в агентных сценариях, лучше отказывается от вредных запросов и устойчивее к prompt injection.
По сути, это попытка сделать «рабочую лошадку» для AI-агентов: не самую дорогую, но достаточно сильную, чтобы закрывать кодинг, автоматизацию, браузерные задачи и долгие пайплайны.
https://www.anthropic.com/news/claude-sonnet-5
@Python_Community_ru
Главная идея: модель теперь лучше планирует, пользуется инструментами, браузером, терминалом и может дольше вести сложные задачи без постоянного контроля.
По словам Anthropic, Sonnet 5 приблизился к Opus 4.8 по агентным задачам, но стоит дешевле. Особенно упор сделали на кодинг, tool use, reasoning и работу с многошаговыми процессами.
Модель уже доступна во всех планах Claude, включая Free и Pro, а также в Claude Code и API.
Цена для разработчиков до 31 августа 2026:
• $2 за 1 млн input tokens
• $10 за 1 млн output tokens
Потом стандартная цена:
• $3 за input
• $15 за output
Интересный момент: Anthropic отдельно пишет, что Sonnet 5 безопаснее Sonnet 4.6 в агентных сценариях, лучше отказывается от вредных запросов и устойчивее к prompt injection.
По сути, это попытка сделать «рабочую лошадку» для AI-агентов: не самую дорогую, но достаточно сильную, чтобы закрывать кодинг, автоматизацию, браузерные задачи и долгие пайплайны.
https://www.anthropic.com/news/claude-sonnet-5
@Python_Community_ru
Array API + JIT: как ускорять scientific Python без CUDA C
Quansight разобрали важную проблему: Array API помогает писать код под разные array-бэкенды, но в SciPy и похожих библиотеках много compiled-кода, который сложнее переносить на GPU и multicore CPU.
Авторы предлагают использовать Array API + JIT/AOT-компиляцию как альтернативу ручным специализированным kernels.
На примере SciPy RBF interpolator авторы показывают, что такой подход может дать серьёзный прирост производительности на CUDA без написания CUDA C-кода.
Scientific Python постепенно уходит от модели «пишем отдельную реализацию под каждое железо» к более удобному стеку, где один код может работать быстрее на разных backend’ах.
https://labs.quansight.org/blog/array-api-aot-jit
@Python_Community_ru
Quansight разобрали важную проблему: Array API помогает писать код под разные array-бэкенды, но в SciPy и похожих библиотеках много compiled-кода, который сложнее переносить на GPU и multicore CPU.
Авторы предлагают использовать Array API + JIT/AOT-компиляцию как альтернативу ручным специализированным kernels.
На примере SciPy RBF interpolator авторы показывают, что такой подход может дать серьёзный прирост производительности на CUDA без написания CUDA C-кода.
Scientific Python постепенно уходит от модели «пишем отдельную реализацию под каждое железо» к более удобному стеку, где один код может работать быстрее на разных backend’ах.
https://labs.quansight.org/blog/array-api-aot-jit
@Python_Community_ru
Wagtail как Django admin на стероидах
Хороший разбор для Django-разработчиков: Wagtail можно использовать не только как CMS, но и как более удобную админку для обычных Django-моделей.
Смысл простой: Django admin быстро даёт UI вокруг моделей, но кастомизация часто превращается в боль. Wagtail даёт более современный интерфейс, нормальную работу с полями, группировку через panels, роли, permissions, rich text, media library, versioning и редакторские workflow.
При этом не нужно переписывать проект под CMS-логику. Wagtail ставится как обычный Django-пакет, добавляется в INSTALLED_APPS, подключается в urls.py, а бизнес-логика, views, forms и templates остаются обычными Django.
Самый практичный случай использования : взять существующий admin.py, перенести модели в Wagtail snippets и постепенно заменить старую админку там, где нужен интерфейс, который не стыдно показать клиенту.
Для внутренних тулзов, CRM, backoffice и контентных разделов это может быть намного приятнее, чем бесконечно допиливать стандартный Django admin.
https://timonweb.com/wagtail/wagtail-as-django-admin-on-steroids/
@Python_Community_ru
Хороший разбор для Django-разработчиков: Wagtail можно использовать не только как CMS, но и как более удобную админку для обычных Django-моделей.
Смысл простой: Django admin быстро даёт UI вокруг моделей, но кастомизация часто превращается в боль. Wagtail даёт более современный интерфейс, нормальную работу с полями, группировку через panels, роли, permissions, rich text, media library, versioning и редакторские workflow.
При этом не нужно переписывать проект под CMS-логику. Wagtail ставится как обычный Django-пакет, добавляется в INSTALLED_APPS, подключается в urls.py, а бизнес-логика, views, forms и templates остаются обычными Django.
Самый практичный случай использования : взять существующий admin.py, перенести модели в Wagtail snippets и постепенно заменить старую админку там, где нужен интерфейс, который не стыдно показать клиенту.
Для внутренних тулзов, CRM, backoffice и контентных разделов это может быть намного приятнее, чем бесконечно допиливать стандартный Django admin.
https://timonweb.com/wagtail/wagtail-as-django-admin-on-steroids/
@Python_Community_ru
✔️ DeepSeek OCR локально на RTX 3090
Проект даёт полноценный OCR и умную обработку документов прямо у себя на машине через DeepSeek-OCR.
Что внутри:
загрузка изображений и многостраничных PDF
точное распознавание текста + структурирование
экспорт в Markdown / HTML / DOCX / JSON
извлечение изображений и сохранение формул
удобный интерфейс (React) + API (FastAPI)
готов к запуску в Docker
Подходит, когда нужно превратить сканы в редактируемые и поисковые документы без облака.
GitHub: http://github.com/rdumasia303/deepseek_ocr_app
@Python_Community_ru
Проект даёт полноценный OCR и умную обработку документов прямо у себя на машине через DeepSeek-OCR.
Что внутри:
загрузка изображений и многостраничных PDF
точное распознавание текста + структурирование
экспорт в Markdown / HTML / DOCX / JSON
извлечение изображений и сохранение формул
удобный интерфейс (React) + API (FastAPI)
готов к запуску в Docker
Подходит, когда нужно превратить сканы в редактируемые и поисковые документы без облака.
GitHub: http://github.com/rdumasia303/deepseek_ocr_app
@Python_Community_ru
The Easiest Way to Scrape the Web
Инструмент, который Имитирует браузеры для скрейпинга и парсит HTML в Markdown.
Незаметный web-scraping и удобный HTML-парсинг в Python.
https://github.com/jpjacobpadilla/Stealth-Requests
@Python_Community_ru
Инструмент, который Имитирует браузеры для скрейпинга и парсит HTML в Markdown.
Незаметный web-scraping и удобный HTML-парсинг в Python.
https://github.com/jpjacobpadilla/Stealth-Requests
@Python_Community_ru
Забавная игрушка на ночь: GitHub-профиль теперь можно превратить в карточку в стиле FIFA.
GitFut прогоняет аккаунт по метрикам вроде коммитов, звёзд, репозиториев, подписчиков и активности, а потом собирает карточку с рейтингом от 0 до 99.
Идеально, чтобы внезапно узнать, ты GitHub-легенда или бронзовый запасной с одним pet-проектом.
https://gitfut.com/
@Python_Community_ru
GitFut прогоняет аккаунт по метрикам вроде коммитов, звёзд, репозиториев, подписчиков и активности, а потом собирает карточку с рейтингом от 0 до 99.
Идеально, чтобы внезапно узнать, ты GitHub-легенда или бронзовый запасной с одним pet-проектом.
https://gitfut.com/
@Python_Community_ru
✔️ Data-Juicer: пайплайн для подготовки данных под foundation models
Alibaba и сообщество Data-Juicer развивают open-source систему для обработки датасетов перед обучением, дообучением и RAG.
Data-Juicer помогает чистить, фильтровать, дедуплицировать, синтезировать и анализировать данные. Работает не только с текстом, но и с мультимодальными датасетами: изображениями, аудио и видео. В версии 2.0 заявлено больше 100 операторов для разных модальностей.
Практический сценарий понятный: есть сырой корпус из разных источников, где много дублей, мусора, слабых примеров и перекоса по доменам. Data-Juicer позволяет собрать воспроизводимый data recipe, прогнать его на локальной машине или в распределённом режиме и потом оценить, как изменения в данных влияют на модель.
Проект смотрит на данные как на отдельный слой оптимизации. Позволяет настроить качество, смесь, фильтры и пайплайн обработки. В ранней работе авторы показывали прирост до 7.45% по среднему score на 16 LLM-бенчмарках и 17.5% win rate в GPT-4 pairwise evaluation за счёт data recipes.
https://github.com/datajuicer/data-juicer
@Python_Community_ru
Alibaba и сообщество Data-Juicer развивают open-source систему для обработки датасетов перед обучением, дообучением и RAG.
Data-Juicer помогает чистить, фильтровать, дедуплицировать, синтезировать и анализировать данные. Работает не только с текстом, но и с мультимодальными датасетами: изображениями, аудио и видео. В версии 2.0 заявлено больше 100 операторов для разных модальностей.
Практический сценарий понятный: есть сырой корпус из разных источников, где много дублей, мусора, слабых примеров и перекоса по доменам. Data-Juicer позволяет собрать воспроизводимый data recipe, прогнать его на локальной машине или в распределённом режиме и потом оценить, как изменения в данных влияют на модель.
Проект смотрит на данные как на отдельный слой оптимизации. Позволяет настроить качество, смесь, фильтры и пайплайн обработки. В ранней работе авторы показывали прирост до 7.45% по среднему score на 16 LLM-бенчмарках и 17.5% win rate в GPT-4 pairwise evaluation за счёт data recipes.
https://github.com/datajuicer/data-juicer
@Python_Community_ru
✔️ DeepSeek-V4 теперь можно запускать локально через GGUF от Unsloth.
DeepSeek-V4-Flash в lossless-версии запускается на 168 ГБ RAM.
3-битная версия работает на Mac и сетапах с RAM/VRAM примерно от 110 ГБ.
Unsloth также улучшили chat template, чтобы модель корректнее работала в диалоговом формате.
Запускать можно через Unsloth Studio или llama.cpp.
Гайд: unsloth.ai/docs/models/deepseek-v4
GGUF: huggingface.co/unsloth/DeepSeek-V4-Flash-GGUF
@Python_Community_ru
DeepSeek-V4-Flash в lossless-версии запускается на 168 ГБ RAM.
3-битная версия работает на Mac и сетапах с RAM/VRAM примерно от 110 ГБ.
Unsloth также улучшили chat template, чтобы модель корректнее работала в диалоговом формате.
Запускать можно через Unsloth Studio или llama.cpp.
Гайд: unsloth.ai/docs/models/deepseek-v4
GGUF: huggingface.co/unsloth/DeepSeek-V4-Flash-GGUF
@Python_Community_ru
Хорошая памятка по Python-скриптам, которые не стыдно запускать не только у себя на ноутбуке.
Что советуют:
* зависимости можно указывать прямо в файле через inline metadata и запускать через uv run
* секреты не хардкодить, а брать из env, getpass или системного keyring
* print() оставить для пользователя, logging — для отладки
* env-переменные документировать в --help
* результат отдавать в stdout, ошибки и логи — в stderr
* поддерживать pipe через stdin
* завершаться нормальными exit code
* явно задавать приоритет конфигурации: CLI > env > config > default
Маленький скрипт тоже может быть удобным, безопасным и предсказуемым.
Особенно когда его через месяц запускает уже не автор, а кто-то другой.
https://www.bitecode.dev/p/scripting-good-practices-in-python
@Python_Community_ru
Что советуют:
* зависимости можно указывать прямо в файле через inline metadata и запускать через uv run
* секреты не хардкодить, а брать из env, getpass или системного keyring
* print() оставить для пользователя, logging — для отладки
* env-переменные документировать в --help
* результат отдавать в stdout, ошибки и логи — в stderr
* поддерживать pipe через stdin
* завершаться нормальными exit code
* явно задавать приоритет конфигурации: CLI > env > config > default
Маленький скрипт тоже может быть удобным, безопасным и предсказуемым.
Особенно когда его через месяц запускает уже не автор, а кто-то другой.
https://www.bitecode.dev/p/scripting-good-practices-in-python
@Python_Community_ru
GPT-5.6 Terra выглядит слабым выбором по соотношению интеллект / цена.
Судя по графику, Terra проигрывает почти на всей кривой эффективности.
То есть его трудно оправдать и по стоимости, и по производительности.
Luna и Sol стабильно выглядят сильнее:
* за те же деньги дают больше intelligence
* или дают похожий уровень intelligence дешевле
* на разных reasoning-режимах обходят Terra
Особенно выделяется Luna.
Она даёт конкурентный уровень качества за заметно меньшую цену, поэтому выглядит лучшим вариантом для задач, где важна эффективность.
Вывод простой: если нужен разумный default по цене и качеству, Luna сейчас выглядит сильнее Terra.
https://x.com/Machinelearrn/status/2075969904826605891
@Python_Community_ru
Судя по графику, Terra проигрывает почти на всей кривой эффективности.
То есть его трудно оправдать и по стоимости, и по производительности.
Luna и Sol стабильно выглядят сильнее:
* за те же деньги дают больше intelligence
* или дают похожий уровень intelligence дешевле
* на разных reasoning-режимах обходят Terra
Особенно выделяется Luna.
Она даёт конкурентный уровень качества за заметно меньшую цену, поэтому выглядит лучшим вариантом для задач, где важна эффективность.
Вывод простой: если нужен разумный default по цене и качеству, Luna сейчас выглядит сильнее Terra.
https://x.com/Machinelearrn/status/2075969904826605891
@Python_Community_ru
Агенты прокачивают друг друга
UCSB-AI выложили GEA, фреймворк для open-ended self-improvement агентов через обмен опытом.
Идея простая, но мощная: улучшать не одного агента в вакууме, а целую группу агентов как одну эволюционирующую систему.
Один агент нашёл удачный паттерн, другой переиспользовал его, третий доработал, группа стала сильнее.
Это похоже на переход от «один AI сам себя улучшает» к «популяция агентов накапливает коллективный опыт».
В репозитории есть код для запуска GEA, интеграция с SWE-bench и Polyglot, Docker-окружение, промпты и инструменты для foundation-моделей. Проект распространяется под Apache-2.0.
https://github.com/UCSB-AI/GEA
@Python_Community_ru
UCSB-AI выложили GEA, фреймворк для open-ended self-improvement агентов через обмен опытом.
Идея простая, но мощная: улучшать не одного агента в вакууме, а целую группу агентов как одну эволюционирующую систему.
Один агент нашёл удачный паттерн, другой переиспользовал его, третий доработал, группа стала сильнее.
Это похоже на переход от «один AI сам себя улучшает» к «популяция агентов накапливает коллективный опыт».
В репозитории есть код для запуска GEA, интеграция с SWE-bench и Polyglot, Docker-окружение, промпты и инструменты для foundation-моделей. Проект распространяется под Apache-2.0.
https://github.com/UCSB-AI/GEA
@Python_Community_ru
⚡️ OpenChronicle - локальная память для AI-агентов
Одна из главных проблем AI-агентов: они быстро теряют контекст.
Сегодня вы обсуждали проект, архитектуру, людей, решения и инструменты. Завтра агент снова спрашивает: «А что мы делаем?»
OpenChronicle пытается закрыть эту дыру.
Он запускается на Mac, смотрит на рабочий контекст и превращает его в постоянную Markdown-память:
* проекты
* решения
* инструменты
* людей
* последние действия
* важные рабочие детали
Память хранится локально, её можно открыть и прочитать руками. Под капотом - Markdown на диске и SQLite.
https://github.com/Einsia/OpenChronicle
@Python_Community_ru
Одна из главных проблем AI-агентов: они быстро теряют контекст.
Сегодня вы обсуждали проект, архитектуру, людей, решения и инструменты. Завтра агент снова спрашивает: «А что мы делаем?»
OpenChronicle пытается закрыть эту дыру.
Он запускается на Mac, смотрит на рабочий контекст и превращает его в постоянную Markdown-память:
* проекты
* решения
* инструменты
* людей
* последние действия
* важные рабочие детали
Память хранится локально, её можно открыть и прочитать руками. Под капотом - Markdown на диске и SQLite.
https://github.com/Einsia/OpenChronicle
@Python_Community_ru
🔍 OmniParser (https://github.com/microsoft/OmniParser?tab=readme-ov-file) — это инструмент от Microsoft, предназначенный для разбора и анализа интерфейсов приложений на основе скриншотов
🌟 OmniParser позволяет распознавать и структурировать элементы интерфейса, обеспечивая, чтобы визуальные агенты на основе GPT могли ориентироваться и взаимодействовать с различными GUI-компонентами. OmniParser поддерживает модель для обнаружения интерактивных областей и описания иконок, делая возможным создание агентов, ориентированных на визуальное восприятие
🔐 Лицензия: CC-BY-4.0
🖥 Github (https://github.com/microsoft/OmniParser?tab=readme-ov-file)
@Python_Community_ru
🌟 OmniParser позволяет распознавать и структурировать элементы интерфейса, обеспечивая, чтобы визуальные агенты на основе GPT могли ориентироваться и взаимодействовать с различными GUI-компонентами. OmniParser поддерживает модель для обнаружения интерактивных областей и описания иконок, делая возможным создание агентов, ориентированных на визуальное восприятие
🔐 Лицензия: CC-BY-4.0
🖥 Github (https://github.com/microsoft/OmniParser?tab=readme-ov-file)
@Python_Community_ru