Сравнение async и ThreadPoolExecutor в Python
Асинхронная обработка async
В async переключение выполнения на уровне CPU происходит в момент выполнения
Но чтобы можно было вызвать
Например, если вы хотите делать запись в PostgreSQL через async, то придется использовать
То есть для тех операций, которые поддерживают async, можно реализовать асинхронную обработку с помощью async.
Параллельная обработка ThredPoolExcutor
ThredPoolExcutor имеет смысл использовать в тех случаях, когда:
* код не поддерживает async
* или вы хотите распараллелить выполнение, минимально переписывая существующий код.
Тестовый код
Асинхронная обработка async:
Параллельная обработка ThredPoolExcutor:
Вывод: В случаях, когда требуется блокирующая обработка вроде
Когда же нужна неблокирующая обработка, как в случае с
👉 @PythonPortal
Асинхронная обработка async
В async переключение выполнения на уровне CPU происходит в момент выполнения
await.Но чтобы можно было вызвать
await, сам код должен поддерживать async.Например, если вы хотите делать запись в PostgreSQL через async, то придется использовать
asyncpg.То есть для тех операций, которые поддерживают async, можно реализовать асинхронную обработку с помощью async.
Параллельная обработка ThredPoolExcutor
ThredPoolExcutor имеет смысл использовать в тех случаях, когда:
* код не поддерживает async
* или вы хотите распараллелить выполнение, минимально переписывая существующий код.
Тестовый код
Асинхронная обработка async:
import asyncio
import time
from icecream import ic
async def io_task(name):
print(f"{name} start")
await asyncio.sleep(3) # ожидание неблокирующего I/O
print(f"{name} end")
async def main():
start = time.time()
await asyncio.gather(io_task("A"), io_task("B"), io_task("C"))
print(f"elapsed: {time.time() - start:.3f}")
ic()
asyncio.run(main())
ic()
# Результат выполнения
ic| main_async.py:19 in <module> at 22:06:11.408
A start
B start
C start
A end
B end
C end
elapsed: 3.001
ic| main_async.py:21 in <module> at 22:06:14.412
Параллельная обработка ThredPoolExcutor:
import time
from concurrent.futures import ThreadPoolExecutor
from icecream import ic
def io_task(name):
print(f"{name} start")
time.sleep(3) # блокирующий I/O
print(f"{name} end")
ic()
start = time.time()
with ThreadPoolExecutor(max_workers=3) as executor:
executor.submit(io_task, "A")
executor.submit(io_task, "B")
executor.submit(io_task, "C")
print(f"elapsed: {time.time() - start:.3f}")
# Результат выполнения
ic| main_ThreadPoolExcutor.py:13 in <module> at 22:07:03.543
A start
B start
C start
C end
B end
A end
elapsed: 3.003
Вывод: В случаях, когда требуется блокирующая обработка вроде
time.sleep[1], имеет смысл использовать ThredPoolExcutor.Когда же нужна неблокирующая обработка, как в случае с
asyncio.sleep, лучше использовать async.Please open Telegram to view this post
VIEW IN TELEGRAM
🔥17👍8❤3
Qwen3-TTS официально в релизе. Выложили в опенсорс всю линейку: VoiceDesign, CustomVoice и Base, чтобы принести реально качественный TTS в open-комьюнити.
* 5 моделей (0.6B и 1.8B)
* Свободный voice design и клонирование голоса
* Поддержка 10 языков
* SOTA 12Hz токенизатор для сильной компрессии
* Полная поддержка fine-tuning
* SOTA качество
Возможно, самый “взрывной” релиз в опенсорсном TTS на данный момент. Давайте, ломайте, тестите, собирайте что-то крутое. Уже доступно всё: веса, код и статья. Enjoy.
👉 @PythonPortal
* 5 моделей (0.6B и 1.8B)
* Свободный voice design и клонирование голоса
* Поддержка 10 языков
* SOTA 12Hz токенизатор для сильной компрессии
* Полная поддержка fine-tuning
* SOTA качество
Возможно, самый “взрывной” релиз в опенсорсном TTS на данный момент. Давайте, ломайте, тестите, собирайте что-то крутое. Уже доступно всё: веса, код и статья. Enjoy.
Github: https://github.com/QwenLM/Qwen3-TTS
Hugging Face: https://huggingface.co/collections/Qwen/qwen3-tts
ModelScope: https://modelscope.cn/collections/Qwen/Qwen3-TTS
Blog: https://qwen.ai/blog?id=qwen3tts-0115
Paper: https://github.com/QwenLM/Qwen3-TTS/blob/main/assets/Qwen3_TTS.pdf
Hugging Face Demo: https://huggingface.co/spaces/Qwen/Qwen3-TTS
ModelScope Demo: https://modelscope.cn/studios/Qwen/Qwen3-TTS
API: https://alibabacloud.com/help/en/model-studio/qwen-tts-voice-design
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤5🔥2💊2
This media is not supported in your browser
VIEW IN TELEGRAM
NVIDIA убрала самый жирный тормоз в Voice AI
Они выложили в опенсорс PersonaPlex-7B: full-duplex разговорную speech-to-speech модель, которая умеет слушать и говорить одновременно
Вместо того чтобы ждать, пока ты договоришь, она использует dual-stream архитектуру и обрабатывает входящий звук параллельно с генерацией ответа в реальном времени.
100% открытый исходный код и бесплатно.🐸
👉 @PythonPortal
Они выложили в опенсорс PersonaPlex-7B: full-duplex разговорную speech-to-speech модель, которая умеет слушать и говорить одновременно
Вместо того чтобы ждать, пока ты договоришь, она использует dual-stream архитектуру и обрабатывает входящий звук параллельно с генерацией ответа в реальном времени.
100% открытый исходный код и бесплатно.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍35❤6💊6🤯1
Мем: на сайте Думы в пояснительной записке к закону о создании реестра молодёжных организаций нашли utm-метку ChatGPT. 😐
👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣64🔥6😁4❤2
Media is too big
VIEW IN TELEGRAM
Чувак собрал целую AI-команду “дата-сайентистов” на Python и выложил в опенсорс (полностью бесплатно).
Библиотека автоматизирует типичный DS-пайплайн с помощью AI: загрузка данных, чистка/преобразования, EDA, визуализация, feature engineering. Плюс она логирует каждый шаг так, чтобы все собиралось в 100% воспроизводимый pipeline (можно повторить прогон один в один и понять, что именно делалось).
Таймкоды из демо:
00:00 обзор проекта
01:32 workflow + загрузка данных
02:10 wrangling и cleaning
03:33 инсайты из визуализаций и построение графиков
04:08 feature engineering
05:00 лайв воркшоп на 1 час
05:44 сама Python-библиотека “AI Data Science Team”
GitHub: здесь
👉 @PythonPortal
Библиотека автоматизирует типичный DS-пайплайн с помощью AI: загрузка данных, чистка/преобразования, EDA, визуализация, feature engineering. Плюс она логирует каждый шаг так, чтобы все собиралось в 100% воспроизводимый pipeline (можно повторить прогон один в один и понять, что именно делалось).
Таймкоды из демо:
00:00 обзор проекта
01:32 workflow + загрузка данных
02:10 wrangling и cleaning
03:33 инсайты из визуализаций и построение графиков
04:08 feature engineering
05:00 лайв воркшоп на 1 час
05:44 сама Python-библиотека “AI Data Science Team”
GitHub: здесь
Please open Telegram to view this post
VIEW IN TELEGRAM
❤17👍2🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Экономим время: VS Code расширение DEVTOOL+
Внутри целый набор ежедневных утилит: форматирование, encode/decode, конвертеры, генераторы, тестовые хелперы и еще куча мелочей. Все вызывается прямо из редактора, без браузера и лишних вкладок.
👉 @PythonPortal
Внутри целый набор ежедневных утилит: форматирование, encode/decode, конвертеры, генераторы, тестовые хелперы и еще куча мелочей. Все вызывается прямо из редактора, без браузера и лишних вкладок.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥25👍7❤3
Please open Telegram to view this post
VIEW IN TELEGRAM
🌚35😁18❤3
This media is not supported in your browser
VIEW IN TELEGRAM
Опенсорсный робот-манипулятор + трекинг рук
Сделан с индустриальным подходом, но в виде настольной системы на 3D-печати.
PAROL6 в паре с контроллером LEAP Motion отличный пример того, насколько доступной стала телеоперация роботов.
• Движения руки стримятся на робота с частотой 100 Гц по UDP
• Пневматический захват управляется простыми жестами: сжатие/разжатие кулака
• Весь стек робота опенсорсный: от механики до софта управления
Добавь сюда низколатентный трекинг рук и получаешь очень практичную платформу, чтобы учиться манипуляции, телеуправлению и интерфейсам человек-робот.
Такой сетап отлично подходит для экспериментов, teleop, сбора данных и обучения робота “по показу”.
И все это без проприетарного железа и залоченного софта.
Исходный код😈
👉 @PythonPortal
Сделан с индустриальным подходом, но в виде настольной системы на 3D-печати.
PAROL6 в паре с контроллером LEAP Motion отличный пример того, насколько доступной стала телеоперация роботов.
• Движения руки стримятся на робота с частотой 100 Гц по UDP
• Пневматический захват управляется простыми жестами: сжатие/разжатие кулака
• Весь стек робота опенсорсный: от механики до софта управления
Добавь сюда низколатентный трекинг рук и получаешь очень практичную платформу, чтобы учиться манипуляции, телеуправлению и интерфейсам человек-робот.
Такой сетап отлично подходит для экспериментов, teleop, сбора данных и обучения робота “по показу”.
И все это без проприетарного железа и залоченного софта.
Исходный код
Please open Telegram to view this post
VIEW IN TELEGRAM
❤23👍4🔥3
Please open Telegram to view this post
VIEW IN TELEGRAM
❤28🔥8
This media is not supported in your browser
VIEW IN TELEGRAM
У Visual Studio Code есть скрытая фича: она показывает, сколько кода написал ты, а сколько нагенерила ИИ.
Включи и проверь, ты больше дев или больше prompt engineer.🤣
👉 @PythonPortal
Включи и проверь, ты больше дев или больше prompt engineer.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤35👍11
Датасаентисты сейчас нарасхват: данных для анализа стало слишком много.
В этом курсе Татев и Ваэ учат Python для Data Science.
Будете делать проекты и разбирать EDA, A/B-тесты, BI и другое.
Проходим бесплатно
👉 @PythonPortal
В этом курсе Татев и Ваэ учат Python для Data Science.
Будете делать проекты и разбирать EDA, A/B-тесты, BI и другое.
Проходим бесплатно
Please open Telegram to view this post
VIEW IN TELEGRAM
❤13
Python Ready — авторский канал, где Python перестаёт быть только теорией и становится рабочим инструментом. Мини-проекты, боты, советы, разборы задач, гайды и шпаргалки для каждого программиста.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍3🔥1
Все вокруг говорят про Clawbot. Но что это такое?
Опенсорсный AI-ассистент, который:
✓ крутится на твоем компе или сервере
✓ с ним можно общаться через Telegram, WhatsApp, Discord...
✓ имеет реальный доступ к системе
✓ с памятью, и со временем становится лучше по мере общения
✓ совместим с Claude, GPT, Gemini, DeepSeek…
Чтобы поставить, достаточно выполнить:
Почему народ так сходит с ума? Потому что впервые реально ощущается, будто у тебя появился сотрудник на базе ИИ.
Плюс: Open Source + local first + персистентная память = ощущение контроля
Что важно учитывать:
▪️ Вопросы безопасности. Осторожно! убедись, что никто кроме тебя не сможет им пользоваться.
▪️ Порты: если оставишь доступ снаружи без защиты, ты по сути ставишь у себя дома “удаленный sudo”.
▪️ Права доступа. Не всему нужен полный доступ с первого дня. Лучше изолировать в VM или на отдельной машине, если не понимаешь, что делаешь.
▪️ Следи за стоимостью. Может выйти очень дорого. Можно использовать локальные модели (они не такие быстрые и не такие хорошие), я советую попробовать Minimax M2.1, по соотношению цена/качество он очень ок.
▪️ Запусти
Официальный сайт:
https://clawd.bot/
👉 @PythonPortal
Опенсорсный AI-ассистент, который:
✓ крутится на твоем компе или сервере
✓ с ним можно общаться через Telegram, WhatsApp, Discord...
✓ имеет реальный доступ к системе
✓ с памятью, и со временем становится лучше по мере общения
✓ совместим с Claude, GPT, Gemini, DeepSeek…
Чтобы поставить, достаточно выполнить:
curl -fsSL https://clawd.bot/install.sh | bash
Почему народ так сходит с ума? Потому что впервые реально ощущается, будто у тебя появился сотрудник на базе ИИ.
Плюс: Open Source + local first + персистентная память = ощущение контроля
Что важно учитывать:
clawdbot status, чтобы он предупреждал о проблемах безопасности (это не все, но хоть что-то), а потом clawdbot security audiОфициальный сайт:
https://clawd.bot/
Please open Telegram to view this post
VIEW IN TELEGRAM
❤12😁6👍5
Парень собрал офигенную систему подготовки к собесам по LeetCode: вытащил 400+ задач и разложил их по 90 паттернам.
В итоге получилась таблица на 360 задач, где видно не просто что нужно решать, а какой именно паттерн ты качаешь и чем он закрывается.
Знаю, LeetCode для новичков легко превращается в перегруз, особенно когда собесы уже рядом и вообще непонятно, на какие задачи делать упор. Blind 75/95 и похожие списки это нормальная точка входа, но давай честно: решить всего около 100 задач обычно недостаточно, чтобы уверенно закрывать топовые интервью.
Важно: задачи в листе взяты из реальных интервью за последние 6 месяцев (Google, Meta, Amazon, Uber). Этот подход помог закрыть собесы в Salesforce (два раза), Intuit, Microsoft и еще пару “середняков” за эти годы.
Кидаю сюда, вдруг кому-то сэкономит недели.
👉 @PythonPortal
В итоге получилась таблица на 360 задач, где видно не просто что нужно решать, а какой именно паттерн ты качаешь и чем он закрывается.
Знаю, LeetCode для новичков легко превращается в перегруз, особенно когда собесы уже рядом и вообще непонятно, на какие задачи делать упор. Blind 75/95 и похожие списки это нормальная точка входа, но давай честно: решить всего около 100 задач обычно недостаточно, чтобы уверенно закрывать топовые интервью.
Важно: задачи в листе взяты из реальных интервью за последние 6 месяцев (Google, Meta, Amazon, Uber). Этот подход помог закрыть собесы в Salesforce (два раза), Intuit, Microsoft и еще пару “середняков” за эти годы.
Кидаю сюда, вдруг кому-то сэкономит недели.
Please open Telegram to view this post
VIEW IN TELEGRAM
Google Docs
Thita patterns Sheet
❤8🔥7👍5