🚀 Обучение LLM-агентов для многоповоротного принятия решений
AgentGym-RL — это фреймворк для тренировки LLM-агентов, способных принимать решения в сложных многоповоротных сценариях с использованием методов усиленного обучения. Он предлагает разнообразные реальные сценарии и поддерживает популярные алгоритмы RL, улучшая производительность моделей до уровня коммерческих решений.
🚀 Основные моменты:
- Модульная система для гибкости и расширяемости.
- Поддержка различных реальных сред, включая веб-навигацию и глубокий поиск.
- Метод ScalingInter-RL для стабильного обучения агентов.
- Интерактивный интерфейс для визуализации взаимодействий.
📌 GitHub: https://github.com/WooooDyy/AgentGym-RL
#python
@Python_Community_ru
AgentGym-RL — это фреймворк для тренировки LLM-агентов, способных принимать решения в сложных многоповоротных сценариях с использованием методов усиленного обучения. Он предлагает разнообразные реальные сценарии и поддерживает популярные алгоритмы RL, улучшая производительность моделей до уровня коммерческих решений.
🚀 Основные моменты:
- Модульная система для гибкости и расширяемости.
- Поддержка различных реальных сред, включая веб-навигацию и глубокий поиск.
- Метод ScalingInter-RL для стабильного обучения агентов.
- Интерактивный интерфейс для визуализации взаимодействий.
📌 GitHub: https://github.com/WooooDyy/AgentGym-RL
#python
@Python_Community_ru
🧠 Инструменты для искусственного интеллекта
Собрание полезных AI-инструментов и ресурсов для разработчиков, исследователей и энтузиастов. Участвуйте в развитии сообщества, добавляя новые сервисы и улучшая коллекцию.
🚀 Основные моменты:
- Широкий выбор AI-инструментов по различным категориям.
- Открытое сообщество для совместной работы и улучшения.
- Возможность вносить свой вклад через Pull Requests.
📌 GitHub:
#python
@Python_Community_ru
https://github.com/Hyraze/collective-ai-tools
Собрание полезных AI-инструментов и ресурсов для разработчиков, исследователей и энтузиастов. Участвуйте в развитии сообщества, добавляя новые сервисы и улучшая коллекцию.
🚀 Основные моменты:
- Широкий выбор AI-инструментов по различным категориям.
- Открытое сообщество для совместной работы и улучшения.
- Возможность вносить свой вклад через Pull Requests.
📌 GitHub:
#python
@Python_Community_ru
https://github.com/Hyraze/collective-ai-tools
GitHub
GitHub - Hyraze/collective-ai-tools: AI tools platform with 800+ curated tools, built-in workspace tools, and job board for developers…
AI tools platform with 800+ curated tools, built-in workspace tools, and job board for developers and researchers. - Hyraze/collective-ai-tools
🛠️ Улучшаем отладку с пользовательскими типами
Этот репозиторий помогает отображать пользовательские типы и контейнеры в отладчике LLDB, делая их более понятными. С помощью кастомных функций и синтетических провайдеров вы сможете легко видеть значения ваших объектов и контейнеров.
🚀Основные моменты:
- Поддержка пользовательских типов и контейнеров в LLDB.
- Использование Python для настройки отображения.
- Примеры для классов и контейнеров, таких как example::date и example::span.
- Удобное взаимодействие с отладчиком через .lldbinit.
📌 GitHub: https://github.com/codeinred/lldb_user_types
#python
@Python_Community_ru
Этот репозиторий помогает отображать пользовательские типы и контейнеры в отладчике LLDB, делая их более понятными. С помощью кастомных функций и синтетических провайдеров вы сможете легко видеть значения ваших объектов и контейнеров.
🚀Основные моменты:
- Поддержка пользовательских типов и контейнеров в LLDB.
- Использование Python для настройки отображения.
- Примеры для классов и контейнеров, таких как example::date и example::span.
- Удобное взаимодействие с отладчиком через .lldbinit.
📌 GitHub: https://github.com/codeinred/lldb_user_types
#python
@Python_Community_ru
1️⃣0️⃣0️⃣0️⃣ БЕСПЛАТНЫХ приложений, которые можно развернуть прямо у себя на сервере. На GitHub нашли настоящую сокровищницу!
50+ категорий: от аналитики и бронирований до автоматизации рутины и чтения книг.
Внутри — сотни инструментов под любые задачи: файлообменники, парсеры, сервисы для мониторинга и даже решения для ресторанов и отелей.
Всё работает локально — данные остаются только у вас, ничего не уходит разработчикам или в сеть.
https://github.com/awesome-selfhosted/awesome-selfhosted
@Python_Community_ru
50+ категорий: от аналитики и бронирований до автоматизации рутины и чтения книг.
Внутри — сотни инструментов под любые задачи: файлообменники, парсеры, сервисы для мониторинга и даже решения для ресторанов и отелей.
Всё работает локально — данные остаются только у вас, ничего не уходит разработчикам или в сеть.
https://github.com/awesome-selfhosted/awesome-selfhosted
@Python_Community_ru
🔥1
🖥 Что нового в Python 3.14 и почему стоит перейти
Python 3.14 вышел 7 октября 2025 года. Это новый стабильный релиз, который содержит как изменения в самом языке, так и улучшения в реализации, стандартной библиотеке, отладке и взаимодействии с многопоточностью.
Ниже - обзор ключевых нововведений, их смысла, применимости и возможных подводных камней.
🟠Основные нововведения (Release highlights)
- Отложенная (ленивая) оценка аннотаций - теперь аннотации не вычисляются сразу, что уменьшает накладные расходы.
- Поддержка нескольких интерпретаторов в рамках одного процесса через новый модуль.
- Новый синтаксис шаблонных строк (t-strings), который даёт больше контроля над статической и интерполированной частью.
- Более информативные сообщения об ошибках (например, подсказки для опечаток в ключевых словах).
- Поддержка формата сжатия Zstandard в стандартной библиотеке.
- Улучшенные возможности для отладки и профилирования, в том числе подключение к живому процессу без остановки.
- Улучшения в asyncio — команды для визуализации и диагностики задач, стеков ожидания и зависимостей.
- Уменьшение пауз сборщика мусора (gc) через инкрементальный сбор.
- Подсветка синтаксиса и автодополнение модулей в интерактивном режиме (REPL) по умолчанию.
🟠 Подробности и примеры
Ленивые аннотации - deferred evaluation of annotations
Раньше аннотации (для типов, документации, подсказок) могли вызывать вычисления прямо при определении функции или класса. Теперь они хранятся в виде «ленивых» структур и вычисляются по надобности. Это снижает накладные расходы на загрузку кода, особенно если аннотации сложные или содержат много forward-ссылок.
Есть модуль annotationlib, который позволяет исследовать аннотации программно и выбирать формат их получения — строки, объекты или отложенные ссылки.
Когда это особенно помогает:
- большие фреймворки, генерация кода, ORM, библиотеки с множеством аннотаций;
- ускорение импорта при старте приложений;
- уменьшение накладных расходов при работе с типами.
Что проверить при миграции:
- код, использующий __annotations__ напрямую, может требовать адаптации;
- убедитесь, что сторонние библиотеки, работающие с аннотациями, поддерживают новый формат.
Несколько интерпретаторов (subinterpreters)
Теперь в Python можно запускать несколько независимых интерпретаторов внутри одного процесса (модуль `concurrent.interpreters`).
Преимущества:
- изоляция между интерпретаторами (отдельная память, отдельный GIL);
- параллелизм на многоядерных системах;
- меньше накладных расходов, чем при использовании multiprocessing.
Ограничения:
- не все C-расширения поддерживают мультиинтерпретацию;
- коммуникация между интерпретаторами требует явных каналов (очереди, сообщения).
Это даёт реальную возможность распараллеливания CPU-задач без запуска отдельных процессов.
Template string literals (t-strings)
Новое синтаксическое средство — префикс t перед строкой, аналогично f'...'.
Результат — объект Template, который хранит текст и вставки по отдельности.
variety = 'Stilton'
template = t'Try some {variety} cheese!'
- Подробности (https://uproger.com/chto-novogo-v-python-3-14-i-pochemu-stoit-ispolzovat/)
- Скачать (https://www.python.org/downloads/release/python-3140/)
- Видеообзор (https://youtu.be/ZOIdlLh8JFA)
@Python_Community_ru
Python 3.14 вышел 7 октября 2025 года. Это новый стабильный релиз, который содержит как изменения в самом языке, так и улучшения в реализации, стандартной библиотеке, отладке и взаимодействии с многопоточностью.
Ниже - обзор ключевых нововведений, их смысла, применимости и возможных подводных камней.
🟠Основные нововведения (Release highlights)
- Отложенная (ленивая) оценка аннотаций - теперь аннотации не вычисляются сразу, что уменьшает накладные расходы.
- Поддержка нескольких интерпретаторов в рамках одного процесса через новый модуль.
- Новый синтаксис шаблонных строк (t-strings), который даёт больше контроля над статической и интерполированной частью.
- Более информативные сообщения об ошибках (например, подсказки для опечаток в ключевых словах).
- Поддержка формата сжатия Zstandard в стандартной библиотеке.
- Улучшенные возможности для отладки и профилирования, в том числе подключение к живому процессу без остановки.
- Улучшения в asyncio — команды для визуализации и диагностики задач, стеков ожидания и зависимостей.
- Уменьшение пауз сборщика мусора (gc) через инкрементальный сбор.
- Подсветка синтаксиса и автодополнение модулей в интерактивном режиме (REPL) по умолчанию.
🟠 Подробности и примеры
Ленивые аннотации - deferred evaluation of annotations
Раньше аннотации (для типов, документации, подсказок) могли вызывать вычисления прямо при определении функции или класса. Теперь они хранятся в виде «ленивых» структур и вычисляются по надобности. Это снижает накладные расходы на загрузку кода, особенно если аннотации сложные или содержат много forward-ссылок.
Есть модуль annotationlib, который позволяет исследовать аннотации программно и выбирать формат их получения — строки, объекты или отложенные ссылки.
Когда это особенно помогает:
- большие фреймворки, генерация кода, ORM, библиотеки с множеством аннотаций;
- ускорение импорта при старте приложений;
- уменьшение накладных расходов при работе с типами.
Что проверить при миграции:
- код, использующий __annotations__ напрямую, может требовать адаптации;
- убедитесь, что сторонние библиотеки, работающие с аннотациями, поддерживают новый формат.
Несколько интерпретаторов (subinterpreters)
Теперь в Python можно запускать несколько независимых интерпретаторов внутри одного процесса (модуль `concurrent.interpreters`).
Преимущества:
- изоляция между интерпретаторами (отдельная память, отдельный GIL);
- параллелизм на многоядерных системах;
- меньше накладных расходов, чем при использовании multiprocessing.
Ограничения:
- не все C-расширения поддерживают мультиинтерпретацию;
- коммуникация между интерпретаторами требует явных каналов (очереди, сообщения).
Это даёт реальную возможность распараллеливания CPU-задач без запуска отдельных процессов.
Template string literals (t-strings)
Новое синтаксическое средство — префикс t перед строкой, аналогично f'...'.
Результат — объект Template, который хранит текст и вставки по отдельности.
variety = 'Stilton'
template = t'Try some {variety} cheese!'
- Подробности (https://uproger.com/chto-novogo-v-python-3-14-i-pochemu-stoit-ispolzovat/)
- Скачать (https://www.python.org/downloads/release/python-3140/)
- Видеообзор (https://youtu.be/ZOIdlLh8JFA)
@Python_Community_ru
UPROGER | Программирование
Что нового в Python 3.14 и почему стоит использовать
Вот подробная и интересная статья про что нового в Python 3.14 — почему стоит обновляться, на что обратить внимание, и какие выгоды вы получите.
Что нового в Python 3.14 и почему стоит перейти
Python 3.14 вышел 7 октября 2025 года. Это новый стабильный…
Что нового в Python 3.14 и почему стоит перейти
Python 3.14 вышел 7 октября 2025 года. Это новый стабильный…
🔥1
🎧 MiMo Audio: Инновации в аудио языковых моделях
MiMo Audio предлагает передовые аудио языковые модели, способные к обучению с минимальным количеством примеров. С использованием более 100 миллионов часов данных, модель демонстрирует выдающиеся результаты в задачах распознавания речи и аудиоанализа, а также в генерации речи. MiMo-Audio-7B-Base устанавливает новые стандарты в открытых моделях.
🚀Основные моменты:
- Поддержка нескольких аудио задач с минимальным обучением.
- Высокая производительность в распознавании речи и аудио понимании.
- Генерация реалистичной речи для различных форматов.
- Открытый доступ к моделям через Hugging Face.
📌 GitHub: https://github.com/XiaomiMiMo/MiMo-Audio
@Python_Community_ru
MiMo Audio предлагает передовые аудио языковые модели, способные к обучению с минимальным количеством примеров. С использованием более 100 миллионов часов данных, модель демонстрирует выдающиеся результаты в задачах распознавания речи и аудиоанализа, а также в генерации речи. MiMo-Audio-7B-Base устанавливает новые стандарты в открытых моделях.
🚀Основные моменты:
- Поддержка нескольких аудио задач с минимальным обучением.
- Высокая производительность в распознавании речи и аудио понимании.
- Генерация реалистичной речи для различных форматов.
- Открытый доступ к моделям через Hugging Face.
📌 GitHub: https://github.com/XiaomiMiMo/MiMo-Audio
@Python_Community_ru
⚡ Наглядное сравнение скорости нового Python 3.14 с предыдущей версией
Теперь Python может использовать все ядра процессора так же эффективно, как C++ или Go - без сложных обходных путей и накладных расходов.
Многопоточность стала быстрее мультипроцессинга - впервые в истории Python.
Главное - новая сборка позволяет работать без GIL (Global Interpreter Lock), что меняет всё.
Как вы наверное знаете, GIL - это глобальная блокировка интерпретатора, которая позволяет в каждый момент времени исполнять только один поток байткода Python, даже если у тебя много ядер.
Раньше поэтому многопоточность в Python фактически не работала.
🔄 Как обходили GIL
До сих пор стандартный способ распараллеливания 0 мультипроцессинг.
Каждый процесс - свой экземпляр интерпретатора со своим GIL.
Минусы такого подхода: каждая копия имеет отдельную память, данные нужно сериализовать при передаче — большие накладные расходы.
🚀 Что меняется в 3.14
В новой версии можно отключить GIL, и потоки теперь работают в общем адресном пространстве.
Общий доступ к памяти + никакой сериализации → значительное ускорение:
многопоточность теперь оказывает на ~33 % быстрее, чем мультипроцессинг.
📈 Эксперименты из репозитория koenvo/python-experiments/free-threading
- Продемонстрировано, что без GIL потоки действительно ускоряют работу задач с интенсивной синхронизацией и доступом к общей памяти.
- Показаны сравнения, где многопоточные версии (с отключённым GIL) часто превосходят мультипроцессные аналоги по времени выполнения.
- Тесты охватывают разные сценарии: CPU-нагрузки, обмен данными между потоками, циклы с синхронизацией.
- Репозиторий служит “proof of concept” — демонстрация, что free-threading действительно работает и приносит выгоду.
💡 Почему это важно
- Теперь реальная многопоточность в Python становится возможной и эффективной.
- Это особенно актуально для библиотек и фреймворков: ожидается, что PyTorch, NumPy и другие скоро получат поддержку free-threading.
- Уменьшаются накладные расходы на межпроцессное взаимодействие, улучшается масштабируемость на многопроцессорных системах.
Вот реальные примеры:
https://github.com/koenvo/python-experiments/tree/main/free-threading
@Python_Community_ru
Теперь Python может использовать все ядра процессора так же эффективно, как C++ или Go - без сложных обходных путей и накладных расходов.
Многопоточность стала быстрее мультипроцессинга - впервые в истории Python.
Главное - новая сборка позволяет работать без GIL (Global Interpreter Lock), что меняет всё.
Как вы наверное знаете, GIL - это глобальная блокировка интерпретатора, которая позволяет в каждый момент времени исполнять только один поток байткода Python, даже если у тебя много ядер.
Раньше поэтому многопоточность в Python фактически не работала.
🔄 Как обходили GIL
До сих пор стандартный способ распараллеливания 0 мультипроцессинг.
Каждый процесс - свой экземпляр интерпретатора со своим GIL.
Минусы такого подхода: каждая копия имеет отдельную память, данные нужно сериализовать при передаче — большие накладные расходы.
🚀 Что меняется в 3.14
В новой версии можно отключить GIL, и потоки теперь работают в общем адресном пространстве.
Общий доступ к памяти + никакой сериализации → значительное ускорение:
многопоточность теперь оказывает на ~33 % быстрее, чем мультипроцессинг.
📈 Эксперименты из репозитория koenvo/python-experiments/free-threading
- Продемонстрировано, что без GIL потоки действительно ускоряют работу задач с интенсивной синхронизацией и доступом к общей памяти.
- Показаны сравнения, где многопоточные версии (с отключённым GIL) часто превосходят мультипроцессные аналоги по времени выполнения.
- Тесты охватывают разные сценарии: CPU-нагрузки, обмен данными между потоками, циклы с синхронизацией.
- Репозиторий служит “proof of concept” — демонстрация, что free-threading действительно работает и приносит выгоду.
💡 Почему это важно
- Теперь реальная многопоточность в Python становится возможной и эффективной.
- Это особенно актуально для библиотек и фреймворков: ожидается, что PyTorch, NumPy и другие скоро получат поддержку free-threading.
- Уменьшаются накладные расходы на межпроцессное взаимодействие, улучшается масштабируемость на многопроцессорных системах.
Вот реальные примеры:
https://github.com/koenvo/python-experiments/tree/main/free-threading
@Python_Community_ru
GitHub
python-experiments/free-threading at main · koenvo/python-experiments
My Python Experiments collection. Contribute to koenvo/python-experiments development by creating an account on GitHub.
🔥5
🌐 DeepMind представила URL Context — теперь можно извлекать данные с любой веб-страницы, PDF или картинки просто по ссылке!
⚡ Что умеет:
- Подтягивает данные с до 20 URL за один запрос
- Никакой настройки — просто вставляешь ссылки в промпт
- Оплата только за токены, без доп. стоимости за инструмент
💡 Возможности:
▸ Вытаскивать цены, имена, ключевые факты из статей
▸ Сравнивать PDF, отчёты или статьи
▸ Генерировать резюме, посты и документы на основе разных источников
▸ Анализировать GitHub-репозитории и техдоки
👉 URL Context превращает LLM в универсальный инструмент для работы с реальными данными в сети.
https://ai.google.dev/gemini-api/docs/url-context?hl=ru
@Python_Community_ru
⚡ Что умеет:
- Подтягивает данные с до 20 URL за один запрос
- Никакой настройки — просто вставляешь ссылки в промпт
- Оплата только за токены, без доп. стоимости за инструмент
💡 Возможности:
▸ Вытаскивать цены, имена, ключевые факты из статей
▸ Сравнивать PDF, отчёты или статьи
▸ Генерировать резюме, посты и документы на основе разных источников
▸ Анализировать GitHub-репозитории и техдоки
👉 URL Context превращает LLM в универсальный инструмент для работы с реальными данными в сети.
https://ai.google.dev/gemini-api/docs/url-context?hl=ru
@Python_Community_ru
💾🎉 copyparty - ваш файловый сервер на любом устройстве
Copyparty позволяет легко превратить любое устройство в файловый сервер с поддержкой возобновляемых загрузок и скачиваний через веб-браузер. Работает на Python и поддерживает различные протоколы, включая HTTP, WebDAV и FTP.
🚀Основные моменты:
- Поддержка множества протоколов для доступа к файлам.
- Удобный интерфейс для загрузки и управления файлами.
- Возможность создания временных ссылок для обмена файлами.
- Поддержка мобильных приложений для Android и iOS.
📌 GitHub: https://github.com/9001/copyparty
#python
@Python_Community_ru
Copyparty позволяет легко превратить любое устройство в файловый сервер с поддержкой возобновляемых загрузок и скачиваний через веб-браузер. Работает на Python и поддерживает различные протоколы, включая HTTP, WebDAV и FTP.
🚀Основные моменты:
- Поддержка множества протоколов для доступа к файлам.
- Удобный интерфейс для загрузки и управления файлами.
- Возможность создания временных ссылок для обмена файлами.
- Поддержка мобильных приложений для Android и iOS.
📌 GitHub: https://github.com/9001/copyparty
#python
@Python_Community_ru
🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
🖥 Если вы вдруг пропустили в Python 3.14 можно отключить GIL!
Это огромное обновление: раньше, даже если вы писали многопоточный код, Python выполнял только один поток за раз, и вы не получали прироста производительности.
Теперь же Python способен реально выполнять потоки параллельно.
И библиотека uv уже полностью поддерживает эту возможность!
Посмотрите сравнение скорости на прикрепленном видео.
@Python_Community_ru
Это огромное обновление: раньше, даже если вы писали многопоточный код, Python выполнял только один поток за раз, и вы не получали прироста производительности.
Теперь же Python способен реально выполнять потоки параллельно.
И библиотека uv уже полностью поддерживает эту возможность!
Посмотрите сравнение скорости на прикрепленном видео.
@Python_Community_ru
🔥2👎1
🎨🚀 HunyuanImage-2.1: Эффективная модель диффузии для генерации изображений
HunyuanImage-2.1 — это мощная модель для создания высококачественных изображений (2048x2048) на основе текстовых описаний. Используя передовые технологии, она значительно улучшает согласование текста и изображения, обеспечивая высокую степень детализации и эстетики.
🚀Основные моменты:
- Генерация изображений высокого разрешения (2K).
- Многоязычная поддержка и улучшенное согласование текста.
- Использование обучения с подкреплением для повышения качества.
- Эффективная архитектура с низкими вычислительными затратами.
- Модуль PromptEnhancer для улучшения производительности.
📌 GitHub: https://github.com/Tencent-Hunyuan/HunyuanImage-2.1
@Python_Community_ru
HunyuanImage-2.1 — это мощная модель для создания высококачественных изображений (2048x2048) на основе текстовых описаний. Используя передовые технологии, она значительно улучшает согласование текста и изображения, обеспечивая высокую степень детализации и эстетики.
🚀Основные моменты:
- Генерация изображений высокого разрешения (2K).
- Многоязычная поддержка и улучшенное согласование текста.
- Использование обучения с подкреплением для повышения качества.
- Эффективная архитектура с низкими вычислительными затратами.
- Модуль PromptEnhancer для улучшения производительности.
📌 GitHub: https://github.com/Tencent-Hunyuan/HunyuanImage-2.1
@Python_Community_ru
🔥2
Media is too big
VIEW IN TELEGRAM
🧠 CraftGPT: AI в Minecraft
CraftGPT — это небольшой языковой модель, предназначенный для работы в Minecraft, обученный на наборе данных TinyChat. Модель может выдавать не совсем корректные или нерелевантные ответы и имеет ограниченное окно контекста в 64 токена. Для оптимальной работы требуется MCHPRS, который использует механизмы редстоуна.
🚀Основные моменты:
- Работает в Minecraft с использованием редстоуна.
- Требует 32 ГБ ОЗУ для загрузки сервера.
- Может занять часы для генерации ответа.
- Рекомендуется тестировать ввод на эмуляторе.
- Ограниченная производительность и качество ответов.
📌 GitHub: https://github.com/sammyuri/craftgpt
#python
@Python_Community_ru
CraftGPT — это небольшой языковой модель, предназначенный для работы в Minecraft, обученный на наборе данных TinyChat. Модель может выдавать не совсем корректные или нерелевантные ответы и имеет ограниченное окно контекста в 64 токена. Для оптимальной работы требуется MCHPRS, который использует механизмы редстоуна.
🚀Основные моменты:
- Работает в Minecraft с использованием редстоуна.
- Требует 32 ГБ ОЗУ для загрузки сервера.
- Может занять часы для генерации ответа.
- Рекомендуется тестировать ввод на эмуляторе.
- Ограниченная производительность и качество ответов.
📌 GitHub: https://github.com/sammyuri/craftgpt
#python
@Python_Community_ru
🎥 Обертка для ComfyUI: WanVideoWrapper
WanVideoWrapper — это инструмент для интеграции видео в ComfyUI, позволяющий легко обрабатывать и визуализировать видеофайлы. Проект предлагает простое решение для работы с видео в рамках интерфейса, расширяя его функциональность.
🚀 Основные моменты:
- Поддержка различных форматов видео
- Легкая интеграция с ComfyUI
- Удобный интерфейс для пользователей
- Возможность настройки параметров обработки
- Активное сообщество и поддержка
📌 GitHub:
#python
@Python_Community_ru
https://github.com/eddyhhlure1Eddy/ode-ComfyUI-WanVideoWrapper
WanVideoWrapper — это инструмент для интеграции видео в ComfyUI, позволяющий легко обрабатывать и визуализировать видеофайлы. Проект предлагает простое решение для работы с видео в рамках интерфейса, расширяя его функциональность.
🚀 Основные моменты:
- Поддержка различных форматов видео
- Легкая интеграция с ComfyUI
- Удобный интерфейс для пользователей
- Возможность настройки параметров обработки
- Активное сообщество и поддержка
📌 GitHub:
#python
@Python_Community_ru
https://github.com/eddyhhlure1Eddy/ode-ComfyUI-WanVideoWrapper
GitHub
GitHub - eddyhhlure1Eddy/ode-ComfyUI-WanVideoWrapper: ode_lowstep
ode_lowstep. Contribute to eddyhhlure1Eddy/ode-ComfyUI-WanVideoWrapper development by creating an account on GitHub.
🔥 Pandas трюк: ускоряем группировки с map вместо merge_groupby
Когда нужно добавить агрегированные значения (например, среднее по группе) обратно в исходный DataFrame, большинство разработчиков делают groupby().transform() или merge().
Но есть менее известный способ — использовать map() после groupby().mean(), который в некоторых случаях работает в 2–3 раза быстрее и требует меньше памяти.
Фокус в том, что groupby().mean() создаёт компактный Series, где индекс — это категория, а значения — результат агрегации.
А map() просто подставляет их обратно в исходный DataFrame без тяжёлого join.
import pandas as pd
import numpy as np
# пример данных
N = 5_000_000
df = pd.DataFrame({
"group": np.random.choice(["A", "B", "C", "D"], N),
"value": np.random.randn(N)
})
# классический подход
df["mean_value_merge"] = df["group"].map(df.groupby("group")["value"].mean())
# сравнение с transform
df["mean_value_transform"] = df.groupby("group")["value"].transform("mean")
# идентичность результата
print(df["mean_value_merge"].equals(df["mean_value_transform"]))
Это особенно полезно на миллионах строк, когда transform начинает “проседать”.
Метод даёт тот же результат, но заметно экономнее по CPU и RAM.
@Python_Community_ru
Когда нужно добавить агрегированные значения (например, среднее по группе) обратно в исходный DataFrame, большинство разработчиков делают groupby().transform() или merge().
Но есть менее известный способ — использовать map() после groupby().mean(), который в некоторых случаях работает в 2–3 раза быстрее и требует меньше памяти.
Фокус в том, что groupby().mean() создаёт компактный Series, где индекс — это категория, а значения — результат агрегации.
А map() просто подставляет их обратно в исходный DataFrame без тяжёлого join.
import pandas as pd
import numpy as np
# пример данных
N = 5_000_000
df = pd.DataFrame({
"group": np.random.choice(["A", "B", "C", "D"], N),
"value": np.random.randn(N)
})
# классический подход
df["mean_value_merge"] = df["group"].map(df.groupby("group")["value"].mean())
# сравнение с transform
df["mean_value_transform"] = df.groupby("group")["value"].transform("mean")
# идентичность результата
print(df["mean_value_merge"].equals(df["mean_value_transform"]))
Это особенно полезно на миллионах строк, когда transform начинает “проседать”.
Метод даёт тот же результат, но заметно экономнее по CPU и RAM.
@Python_Community_ru