This media is not supported in your browser
VIEW IN TELEGRAM
Microsoft внезапно выпустили (https://microsoft.github.io/TRELLIS.2/) нового короля генерации 3D-моделе — Trellis 2 😮
Первая версия уже была стильной, а теперь они изменили архитектуру на O-Voxel, добавили больше параметров (4b) и разрешение 1536³. А еще Trellis 2 стала быстрее и лучше генерировать текстуры, что тоже приятно.
Есть демо на Hugging Face (https://huggingface.co/spaces/microsoft/TRELLIS.2) и код на GitHub (https://github.com/microsoft/TRELLIS.2).
@python_be1
Первая версия уже была стильной, а теперь они изменили архитектуру на O-Voxel, добавили больше параметров (4b) и разрешение 1536³. А еще Trellis 2 стала быстрее и лучше генерировать текстуры, что тоже приятно.
Есть демо на Hugging Face (https://huggingface.co/spaces/microsoft/TRELLIS.2) и код на GitHub (https://github.com/microsoft/TRELLIS.2).
@python_be1
This media is not supported in your browser
VIEW IN TELEGRAM
Linux совет дня 💡
Создай “пустой” файл на 10GB, который почти не занимает места на диске:
```
truncate -s 10G sparsefile.img
```
Команда просто выставляет метаданные размера — файл выглядит как 10 GB, но реальные блоки не записываются.
⚡ Создаётся мгновенно
⚡ Не нагружает систему
⚡ Реальное пространство начнёт выделяться только когда ты запишешь непустые данные внутрь файла
Использовать такие sparse-файлы полезно в ряде задач:
1) Быстрое создание образов дисков
Например, для виртуальных машин, контейнеров, тестов — без траты реального места.
2) Экономия диска
Образ может “выглядеть” как 10–100 GB, но занимает фактически лишь пару мегабайт, пока его не использовали.
3) Тестирование приложений
Можно проверить работу с большими файлами, не расходуя реальное хранилище.
4) Линукс-файловые системы и бэкапы
Многие FS и backup tools поддерживают sparse-файлы и сохраняют их эффективно.
5) Эксперименты с дисковыми квотами, логами, block storage и переносом файлов.
@python_be1
Создай “пустой” файл на 10GB, который почти не занимает места на диске:
```
truncate -s 10G sparsefile.img
```
Команда просто выставляет метаданные размера — файл выглядит как 10 GB, но реальные блоки не записываются.
⚡ Создаётся мгновенно
⚡ Не нагружает систему
⚡ Реальное пространство начнёт выделяться только когда ты запишешь непустые данные внутрь файла
Использовать такие sparse-файлы полезно в ряде задач:
1) Быстрое создание образов дисков
Например, для виртуальных машин, контейнеров, тестов — без траты реального места.
2) Экономия диска
Образ может “выглядеть” как 10–100 GB, но занимает фактически лишь пару мегабайт, пока его не использовали.
3) Тестирование приложений
Можно проверить работу с большими файлами, не расходуя реальное хранилище.
4) Линукс-файловые системы и бэкапы
Многие FS и backup tools поддерживают sparse-файлы и сохраняют их эффективно.
5) Эксперименты с дисковыми квотами, логами, block storage и переносом файлов.
@python_be1
This media is not supported in your browser
VIEW IN TELEGRAM
Вытаскиваем любой звук из видео за пару кликов: вышла нейронка SAM Audio — и она умеет вырезать отдельные аудиодорожки.
Можно отделить вокал от гитары в песне, заглушить шум на заднем фоне, скачать только пение птицы без ветра. Достаточно нажать на объект в кадре и забрать его звук.
Если конкретного объекта нет, есть еще две опции: написать текстовый промт или выделить таймкоды, где слышен нужный звук.
Идеально для создателей видео и музыки. Тестируем тут (https://ai.meta.com/samaudio/).
@python_be1
Можно отделить вокал от гитары в песне, заглушить шум на заднем фоне, скачать только пение птицы без ветра. Достаточно нажать на объект в кадре и забрать его звук.
Если конкретного объекта нет, есть еще две опции: написать текстовый промт или выделить таймкоды, где слышен нужный звук.
Идеально для создателей видео и музыки. Тестируем тут (https://ai.meta.com/samaudio/).
@python_be1
Апскейлим любую картинку прямо в браузере — вышла модель Finegrain (https://huggingface.co/spaces/finegrain/finegrain-image-enhancer).
Вы не поверите, насколько легко это работает: просто закидываем изображение и жмём «Enhance Image» 😱
Только учитывайте, что это нейроапскейлер и мелкие детали могут измениться.
@python_be1
Вы не поверите, насколько легко это работает: просто закидываем изображение и жмём «Enhance Image» 😱
Только учитывайте, что это нейроапскейлер и мелкие детали могут измениться.
@python_be1
This media is not supported in your browser
VIEW IN TELEGRAM
Google выложила свой официальный репозиторий MCP
Внутри практические примеры и гайды по разработке и деплою MCP-серверов, плюс реальные интеграции. Показано, как сервисы вроде Google Maps, Analytics, Gmail, Docs и другие можно прокидывать ИИ-агентам через MCP
Ссылка на GitHub (https://github.com/google/mcp) ✌️
@python_be1
Внутри практические примеры и гайды по разработке и деплою MCP-серверов, плюс реальные интеграции. Показано, как сервисы вроде Google Maps, Analytics, Gmail, Docs и другие можно прокидывать ИИ-агентам через MCP
Ссылка на GitHub (https://github.com/google/mcp) ✌️
@python_be1
This media is not supported in your browser
VIEW IN TELEGRAM
Асинхронная обработка HTTP-запросов в Python с asyncio и aiohttp
В этом видео мы погрузимся в мир асинхронного программирования на Python, изучая, как улучшить производительность ваших приложений с помощью библиотеки asyncio и aiohttp. Узнайте, как выполнять несколько HTTP-запросов одновременно, чтобы эффективно получать данные с разных API. Это знание полезно для разработчиков, стремящихся оптимизировать свои приложения и сделать их более отзывчивыми.
Мы также разберем простой код, который демонстрирует, как можно использовать асинхронные функции для выполнения запросов. Вы увидите, как благодаря асинхронному подходу ваше приложение может обрабатывать данные быстрее и эффективнее, что особенно важно для веб-разработчиков. Подписывайтесь на канал, чтобы не пропустить новые фишки и советы по программированию каждый день!
@python_be1
В этом видео мы погрузимся в мир асинхронного программирования на Python, изучая, как улучшить производительность ваших приложений с помощью библиотеки asyncio и aiohttp. Узнайте, как выполнять несколько HTTP-запросов одновременно, чтобы эффективно получать данные с разных API. Это знание полезно для разработчиков, стремящихся оптимизировать свои приложения и сделать их более отзывчивыми.
Мы также разберем простой код, который демонстрирует, как можно использовать асинхронные функции для выполнения запросов. Вы увидите, как благодаря асинхронному подходу ваше приложение может обрабатывать данные быстрее и эффективнее, что особенно важно для веб-разработчиков. Подписывайтесь на канал, чтобы не пропустить новые фишки и советы по программированию каждый день!
@python_be1
🖥 Как уменьшить Docker-образ в 10+ раз - понятный и практичный разбор.
Размер Docker-образа - это не косметика.
Он напрямую влияет на:
- скорость CI/CD
- время деплоя
- cold start контейнеров
- расходы на storage и трафик
В примере ниже образ удалось сократить с 588 MB до 47.7 MB - почти на 92%.
Вот какие приёмы реально дают эффект.
1) Выбор базового образа - самое важное решение
Полный python:3.9 тянет за собой:
- лишние системные утилиты
- документацию
- dev-пакеты
Переход на python:3.9-alpine:
- в разы меньше размер
- быстрее скачивание
- меньше attack surface
Это первый и самый крупный выигрыш.
2) Оптимизация слоёв Docker
Каждый RUN, COPY, ADD - это новый слой.
Много мелких инструкций = раздув образа.
Правило:
- объединяй связанные команды
- удаляй временные файлы в том же RUN
Меньше слоёв - меньше вес - быстрее сборка.
3) .dockerignore - бесплатная оптимизация, которую часто забывают
Без .dockerignore в build context улетает всё:
- .venv
- .cache
- .git
- временные файлы
Это:
- увеличивает размер контекста
- замедляет сборку
- иногда ломает кеширование
.dockerignore должен быть всегда. Без исключений.
4) Multi-stage build - must-have для продакшена
Одна из самых мощных техник.
Идея простая:
- stage 1 - сборка, компиляция, зависимости
- stage 2 - только то, что нужно для запуска
В финальном образе:
- нет build-инструментов
- нет лишних библиотек
- только runtime
Результат:
- меньше размер
- меньше уязвимостей
- быстрее старт
Итоговый эффект:
- 588 MB -> 47.7 MB
- −91.89% размера
- быстрее CI
- быстрее деплой
- дешевле инфраструктура
Главный вывод:
маленькие оптимизации накапливаются.
Каждый сэкономленный мегабайт:
- ускоряет каждый pull
- ускоряет каждый deploy
- масштабируется вместе с вашей системой
Оптимизация Docker - это не микрооптимизация.
Это инженерная гигиена.
@python_be1
Размер Docker-образа - это не косметика.
Он напрямую влияет на:
- скорость CI/CD
- время деплоя
- cold start контейнеров
- расходы на storage и трафик
В примере ниже образ удалось сократить с 588 MB до 47.7 MB - почти на 92%.
Вот какие приёмы реально дают эффект.
1) Выбор базового образа - самое важное решение
Полный python:3.9 тянет за собой:
- лишние системные утилиты
- документацию
- dev-пакеты
Переход на python:3.9-alpine:
- в разы меньше размер
- быстрее скачивание
- меньше attack surface
Это первый и самый крупный выигрыш.
2) Оптимизация слоёв Docker
Каждый RUN, COPY, ADD - это новый слой.
Много мелких инструкций = раздув образа.
Правило:
- объединяй связанные команды
- удаляй временные файлы в том же RUN
Меньше слоёв - меньше вес - быстрее сборка.
3) .dockerignore - бесплатная оптимизация, которую часто забывают
Без .dockerignore в build context улетает всё:
- .venv
- .cache
- .git
- временные файлы
Это:
- увеличивает размер контекста
- замедляет сборку
- иногда ломает кеширование
.dockerignore должен быть всегда. Без исключений.
4) Multi-stage build - must-have для продакшена
Одна из самых мощных техник.
Идея простая:
- stage 1 - сборка, компиляция, зависимости
- stage 2 - только то, что нужно для запуска
В финальном образе:
- нет build-инструментов
- нет лишних библиотек
- только runtime
Результат:
- меньше размер
- меньше уязвимостей
- быстрее старт
Итоговый эффект:
- 588 MB -> 47.7 MB
- −91.89% размера
- быстрее CI
- быстрее деплой
- дешевле инфраструктура
Главный вывод:
маленькие оптимизации накапливаются.
Каждый сэкономленный мегабайт:
- ускоряет каждый pull
- ускоряет каждый deploy
- масштабируется вместе с вашей системой
Оптимизация Docker - это не микрооптимизация.
Это инженерная гигиена.
@python_be1
This media is not supported in your browser
VIEW IN TELEGRAM
Эффективная фильтрация данных в Python с Pandas: Применяем .query() и .loc()!
В этом видео мы погружаемся в мир эффективной фильтрации данных с помощью библиотеки Pandas в Python! Узнайте, как использовать методы `.query()` и `.loc()` для быстрого и удобного доступа к необходимой информации из больших наборов данных. Мы покажем вам, как сделать код более читаемым и оптимизированным, что особенно важно для аналитиков и разработчиков.
Мы разберем простой пример с фильтрацией данных, используя DataFrame, чтобы вы могли быстро применить полученные знания на практике. Эти навыки помогут вам обрабатывать данные более эффективно и сократят время, затрачиваемое на анализ. Не забудьте подписаться на канал, чтобы не пропустить новые полезные фишки каждый день!
@python_be1
В этом видео мы погружаемся в мир эффективной фильтрации данных с помощью библиотеки Pandas в Python! Узнайте, как использовать методы `.query()` и `.loc()` для быстрого и удобного доступа к необходимой информации из больших наборов данных. Мы покажем вам, как сделать код более читаемым и оптимизированным, что особенно важно для аналитиков и разработчиков.
Мы разберем простой пример с фильтрацией данных, используя DataFrame, чтобы вы могли быстро применить полученные знания на практике. Эти навыки помогут вам обрабатывать данные более эффективно и сократят время, затрачиваемое на анализ. Не забудьте подписаться на канал, чтобы не пропустить новые полезные фишки каждый день!
@python_be1
📌 Подробная шпаргалка по командам Docker
Удобный и практичный референс для повседневной работы с Docker: образы, контейнеры, сети, тома и Docker Compose.
🐋 Общие команды Docker
- `docker —version` — версия Docker
- `docker info` — информация о системе Docker
- `docker help` — список доступных команд
- `docker <command> —help` — помощь по конкретной команде
📦 Работа с образами
- `docker pull <image>` — скачать образ из реестра
- `docker images` — список локальных образов
- `docker build -t name:tag .` — собрать образ из Dockerfile
- `docker tag <image> <repo>:<tag>` — назначить тег образу
- `docker rmi <image>` — удалить образ
- `docker image prune` — удалить неиспользуемые образы
- `docker image prune -a` — удалить все неиспользуемые, включая невисячие
🚀 Контейнеры: запуск и управление
- `docker run <image>` — запустить контейнер
- `docker run -d <image>` — запуск в фоне
- `docker run -it <image> bash` — интерактивный режим
- `docker ps` — активные контейнеры
- `docker ps -a` — все контейнеры
- `docker stop <container>` — остановить контейнер
- `docker start <container>` — запустить остановленный
- `docker restart <container>` — перезапуск
- `docker rm <container>` — удалить контейнер
- `docker rm -f <container>` — принудительно удалить
- `docker logs <container>` — логи контейнера
- `docker exec -it <container> bash` — войти внутрь контейнера
- `docker inspect <container>` — подробная информация (JSON)
🧹 Очистка и обслуживание
- `docker container prune` — удалить все остановленные контейнеры
- `docker image prune` — удалить неиспользуемые образы
- `docker volume prune` — удалить неиспользуемые тома
- `docker network prune` — удалить неиспользуемые сети
- `docker system prune` — очистить всё неиспользуемое
- `docker system prune -a` — максимально агрессивная очистка
- `docker system df` — использование диска Docker’ом
📊 Мониторинг и отладка
- `docker stats` — использование CPU и памяти контейнерами
- `docker top <container>` — процессы внутри контейнера
- `docker diff <container>` — изменения файловой системы контейнера
🌐 Сети Docker
- `docker network ls` — список сетей
- `docker network inspect <network>` — информация о сети
- `docker network create <name>` — создать сеть
- `docker network rm <name>` — удалить сеть
💾 Docker Volumes
- `docker volume ls` — список томов
- `docker volume inspect <volume>` — информация о томе
- `docker volume create <name>` — создать том
- `docker volume rm <name>` — удалить том
⚙️ Docker Compose
- `docker compose up` — запустить сервисы
- `docker compose up -d` — запуск в фоне
- `docker compose down` — остановить и удалить всё
- `docker compose build` — пересобрать образы
- `docker compose pull` — скачать образы
- `docker compose logs` — логи всех сервисов
- `docker compose ps` — статус сервисов
- `docker compose restart` — перезапуск
🧠 Полезные советы
- Используй `--rm`, чтобы контейнер удалялся после выполнения
- Проверяй размер Docker-данных через `docker system df`
- Для отладки всегда полезен `docker inspect`
- Регулярно чисти систему, чтобы Docker не съел весь диск
Эта шпаргалка закрывает 90% повседневных задач при работе с Docker - от локальной разработки до продакшена.
@python_be1
Удобный и практичный референс для повседневной работы с Docker: образы, контейнеры, сети, тома и Docker Compose.
🐋 Общие команды Docker
- `docker —version` — версия Docker
- `docker info` — информация о системе Docker
- `docker help` — список доступных команд
- `docker <command> —help` — помощь по конкретной команде
📦 Работа с образами
- `docker pull <image>` — скачать образ из реестра
- `docker images` — список локальных образов
- `docker build -t name:tag .` — собрать образ из Dockerfile
- `docker tag <image> <repo>:<tag>` — назначить тег образу
- `docker rmi <image>` — удалить образ
- `docker image prune` — удалить неиспользуемые образы
- `docker image prune -a` — удалить все неиспользуемые, включая невисячие
🚀 Контейнеры: запуск и управление
- `docker run <image>` — запустить контейнер
- `docker run -d <image>` — запуск в фоне
- `docker run -it <image> bash` — интерактивный режим
- `docker ps` — активные контейнеры
- `docker ps -a` — все контейнеры
- `docker stop <container>` — остановить контейнер
- `docker start <container>` — запустить остановленный
- `docker restart <container>` — перезапуск
- `docker rm <container>` — удалить контейнер
- `docker rm -f <container>` — принудительно удалить
- `docker logs <container>` — логи контейнера
- `docker exec -it <container> bash` — войти внутрь контейнера
- `docker inspect <container>` — подробная информация (JSON)
🧹 Очистка и обслуживание
- `docker container prune` — удалить все остановленные контейнеры
- `docker image prune` — удалить неиспользуемые образы
- `docker volume prune` — удалить неиспользуемые тома
- `docker network prune` — удалить неиспользуемые сети
- `docker system prune` — очистить всё неиспользуемое
- `docker system prune -a` — максимально агрессивная очистка
- `docker system df` — использование диска Docker’ом
📊 Мониторинг и отладка
- `docker stats` — использование CPU и памяти контейнерами
- `docker top <container>` — процессы внутри контейнера
- `docker diff <container>` — изменения файловой системы контейнера
🌐 Сети Docker
- `docker network ls` — список сетей
- `docker network inspect <network>` — информация о сети
- `docker network create <name>` — создать сеть
- `docker network rm <name>` — удалить сеть
💾 Docker Volumes
- `docker volume ls` — список томов
- `docker volume inspect <volume>` — информация о томе
- `docker volume create <name>` — создать том
- `docker volume rm <name>` — удалить том
⚙️ Docker Compose
- `docker compose up` — запустить сервисы
- `docker compose up -d` — запуск в фоне
- `docker compose down` — остановить и удалить всё
- `docker compose build` — пересобрать образы
- `docker compose pull` — скачать образы
- `docker compose logs` — логи всех сервисов
- `docker compose ps` — статус сервисов
- `docker compose restart` — перезапуск
🧠 Полезные советы
- Используй `--rm`, чтобы контейнер удалялся после выполнения
- Проверяй размер Docker-данных через `docker system df`
- Для отладки всегда полезен `docker inspect`
- Регулярно чисти систему, чтобы Docker не съел весь диск
Эта шпаргалка закрывает 90% повседневных задач при работе с Docker - от локальной разработки до продакшена.
@python_be1
This media is not supported in your browser
VIEW IN TELEGRAM
Оптимизация Python кода: Использование декораторов для кэширования вычислений
В этом видео мы рассмотрим, как декораторы в Python могут существенно улучшить производительность вашего кода с помощью кэширования результатов. Мы познакомим вас с библиотекой `functools` и продемонстрируем, как легко использовать декоратор `lru_cache` для эффективного хранения результатов тяжёлых вычислений.
На примере функции вычисления чисел Фибоначчи вы узнаете, как кэширование может сократить время выполнения и облегчить работу с рекурсивными функциями. Если вы хотите научиться писать более оптимизированный и производительный код на Python, это видео — идеальное начало! Подписывайтесь на наш канал, чтобы не пропустить новые фишки и советы по программированию!
@python_be1
В этом видео мы рассмотрим, как декораторы в Python могут существенно улучшить производительность вашего кода с помощью кэширования результатов. Мы познакомим вас с библиотекой `functools` и продемонстрируем, как легко использовать декоратор `lru_cache` для эффективного хранения результатов тяжёлых вычислений.
На примере функции вычисления чисел Фибоначчи вы узнаете, как кэширование может сократить время выполнения и облегчить работу с рекурсивными функциями. Если вы хотите научиться писать более оптимизированный и производительный код на Python, это видео — идеальное начало! Подписывайтесь на наш канал, чтобы не пропустить новые фишки и советы по программированию!
@python_be1
Делаем резюме по красоте: принесли RenderCV — опенсорс-инструмент, который помогает собрать аккуратный PDF.
Просто описываете всю информацию в YAML, а инструмент собирает PDF с нормальной типографикой и стабильной версткой. Все легко и быстро можно править под разные вакансии и при этом не бояться, что макет поплывёт. Плюс есть гибкая настройка дизайна.
Эйчары точно оценят (https://github.com/rendercv/rendercv) 👍
@python_be1
Просто описываете всю информацию в YAML, а инструмент собирает PDF с нормальной типографикой и стабильной версткой. Все легко и быстро можно править под разные вакансии и при этом не бояться, что макет поплывёт. Плюс есть гибкая настройка дизайна.
Эйчары точно оценят (https://github.com/rendercv/rendercv) 👍
@python_be1
This media is not supported in your browser
VIEW IN TELEGRAM
Контекстные менеджеры в Python: Удобная работа с временными файлами с tempfile
В этом видео мы изучим, как контекстные менеджеры в Python помогают эффективно управлять ресурсами, такими как временные файлы. Вы узнаете, как использовать модуль `tempfile` для создания временных файлов, которые автоматически удаляются после завершения работы. Это идеальное решение для хранения временных данных без лишних хлопот и необходимости ручного удаления!
В данном примере кода мы создаем временный файл, записываем в него данные и затем читаем их. Используйте контекстные менеджеры, чтобы гарантировать, что ресурсы освобождаются, когда они больше не нужны. Не забудьте подписаться на канал, чтобы быть в курсе новых фишек по Python каждый день!
@python_be1
В этом видео мы изучим, как контекстные менеджеры в Python помогают эффективно управлять ресурсами, такими как временные файлы. Вы узнаете, как использовать модуль `tempfile` для создания временных файлов, которые автоматически удаляются после завершения работы. Это идеальное решение для хранения временных данных без лишних хлопот и необходимости ручного удаления!
В данном примере кода мы создаем временный файл, записываем в него данные и затем читаем их. Используйте контекстные менеджеры, чтобы гарантировать, что ресурсы освобождаются, когда они больше не нужны. Не забудьте подписаться на канал, чтобы быть в курсе новых фишек по Python каждый день!
@python_be1
This media is not supported in your browser
VIEW IN TELEGRAM
Использование Enums в Python: Повышаем Читаемость Кода и Упрощаем Поддержку
В этом видео мы рассмотрим, как использовать Enums в Python для создания более читаемого и поддерживаемого кода. Замените обычные строки и числа на перечисления, чтобы сделать ваш код понятнее. Мы подробно объясним, как создать Enum для статусов задачи и как его применять в функции обновления статуса.
Вы узнаете, как определить перечисления с помощью класса Enum и какие преимущества они дают при работе с состояниями в вашем проекте. Не забудьте подписаться на канал, чтобы не пропустить другие полезные советы по Python и программированию!
@python_be1
В этом видео мы рассмотрим, как использовать Enums в Python для создания более читаемого и поддерживаемого кода. Замените обычные строки и числа на перечисления, чтобы сделать ваш код понятнее. Мы подробно объясним, как создать Enum для статусов задачи и как его применять в функции обновления статуса.
Вы узнаете, как определить перечисления с помощью класса Enum и какие преимущества они дают при работе с состояниями в вашем проекте. Не забудьте подписаться на канал, чтобы не пропустить другие полезные советы по Python и программированию!
@python_be1
This media is not supported in your browser
VIEW IN TELEGRAM
Упрощаем код на Python с помощью `dataclasses`: Пошаговый урок
В этом видео мы погрузимся в мир Python и изучим, как использовать `dataclasses` для упрощения создания классов. Вы узнаете, как быстро и эффективно работать с простыми структурами данных, что значительно ускорит процесс разработки ваших приложений.
Мы рассмотрим практический пример, где создадим класс `Student`, который будет хранить информацию о студентах, включая имя, возраст и список предметов. Вы увидите, как `dataclasses` позволяют минимизировать код и избежать повторяющихся шаблонов. Подписывайтесь на наш канал, чтобы не пропустить еще больше полезных фишек по Python каждый день!
@python_be1
В этом видео мы погрузимся в мир Python и изучим, как использовать `dataclasses` для упрощения создания классов. Вы узнаете, как быстро и эффективно работать с простыми структурами данных, что значительно ускорит процесс разработки ваших приложений.
Мы рассмотрим практический пример, где создадим класс `Student`, который будет хранить информацию о студентах, включая имя, возраст и список предметов. Вы увидите, как `dataclasses` позволяют минимизировать код и избежать повторяющихся шаблонов. Подписывайтесь на наш канал, чтобы не пропустить еще больше полезных фишек по Python каждый день!
@python_be1
Новая работа MIT: LLM, который видит и меняет состояние Python
В MIT предложили подход, при котором языковая модель работает не только с текстом, а напрямую с живым состоянием Python-кода - переменными, объектами в памяти и текущей точкой выполнения.
Подход называется NIGHTJAR.
Главный результат
В экспериментах NIGHTJAR сократил объем кода в среднем на 39.6% без потери корректности.
В чем была проблема
Обычная LLM:
- читает текст
- генерирует текст
- не видит реальные данные программы
Поэтому типичный пайплайн выглядит так:
- данные сериализуются в текст
- отправляются модели
- ответ парсится
- программа вручную обновляется
Много glue-кода, много мест для ошибок.
Что меняет совместное состояние
Shared state полностью меняет модель взаимодействия:
- LLM может читать и писать переменные
- изменять объекты прямо в памяти
- останавливать и пропускать циклы
- работать с текущим состоянием выполнения
Модель не «рассуждает о коде», она с ним взаимодействует.
Как это реализовано
LLM не получает прямой доступ к памяти.
Она отправляет небольшие команды:
- прочитать переменную
- записать значение
- обновить объект
- выйти из цикла
Python-обработчик выполняет эти команды.
Такой контракт авторы называют natural function interface.
Результаты
На бенчмарке SPSBench с 25 программами:
- корректность осталась на уровне ручной интеграции или выше
- код стал заметно короче
- но время выполнения иногда росло до 4.3 раза
Причина проста - каждое обращение к состоянию может требовать отдельного вызова модели.
Почему это важно
- меньше шаблонного glue-кода
- проще писать сложную логику с участием LLM
- шаг к более тесной интеграции AI и runtime
- фундамент для новых агентных и интерактивных систем
Это не про ускорение.
Это про изменение архитектуры взаимодействия между программой и моделью.
📌 Статья: arxiv.org/abs/2512.14805
#AI #LLM #Python
@python_be1
В MIT предложили подход, при котором языковая модель работает не только с текстом, а напрямую с живым состоянием Python-кода - переменными, объектами в памяти и текущей точкой выполнения.
Подход называется NIGHTJAR.
Главный результат
В экспериментах NIGHTJAR сократил объем кода в среднем на 39.6% без потери корректности.
В чем была проблема
Обычная LLM:
- читает текст
- генерирует текст
- не видит реальные данные программы
Поэтому типичный пайплайн выглядит так:
- данные сериализуются в текст
- отправляются модели
- ответ парсится
- программа вручную обновляется
Много glue-кода, много мест для ошибок.
Что меняет совместное состояние
Shared state полностью меняет модель взаимодействия:
- LLM может читать и писать переменные
- изменять объекты прямо в памяти
- останавливать и пропускать циклы
- работать с текущим состоянием выполнения
Модель не «рассуждает о коде», она с ним взаимодействует.
Как это реализовано
LLM не получает прямой доступ к памяти.
Она отправляет небольшие команды:
- прочитать переменную
- записать значение
- обновить объект
- выйти из цикла
Python-обработчик выполняет эти команды.
Такой контракт авторы называют natural function interface.
Результаты
На бенчмарке SPSBench с 25 программами:
- корректность осталась на уровне ручной интеграции или выше
- код стал заметно короче
- но время выполнения иногда росло до 4.3 раза
Причина проста - каждое обращение к состоянию может требовать отдельного вызова модели.
Почему это важно
- меньше шаблонного glue-кода
- проще писать сложную логику с участием LLM
- шаг к более тесной интеграции AI и runtime
- фундамент для новых агентных и интерактивных систем
Это не про ускорение.
Это про изменение архитектуры взаимодействия между программой и моделью.
📌 Статья: arxiv.org/abs/2512.14805
#AI #LLM #Python
@python_be1
Hugging Face выкатили (https://huggingface.co/learn) новогодний подарок для всех нейродвинутых — 12 (!) бесплатных курсов по самым топовым направлениям ИИ 😮😮😮
Ребята собрали в одном месте базу, за которую <s>инфоцыгане</s> другие попросили бы сотни тысяч.
Тут всё: от создания своих агентов до обучения роботов:
— AI Agents: (https://huggingface.co/learn/agents-course/unit0/introduction) база по самой горячей теме года — учимся делать автономных агентов.
— LLM Course: (https://huggingface.co/learn/llm-course/chapter1/1) как работают «мозги» современных чат-ботов и библиотек типа Transformers.
— Smol-course: (https://huggingface.co/learn/smol-course/unit0/1)если мало времени, это самый быстрый способ разобраться в тонкой настройке (fine-tuning) моделей.
—MCP Course: (https://huggingface.co/learn/mcp-course/unit0/introduction)свежак, созданный вместе с Anthropic — учимся подключать ИИ к любым данным.
—Deep RL: (https://huggingface.co/learn/deep-rl-course/unit0/introduction) всё про обучение с подкреплением (то, на чем гоняют роботы и OpenAI o1).
— ML для игр: (https://huggingface.co/learn/ml-games-course/unit0/introduction) как встроить нейронки прямо в геймдев.
— Robotics: (https://huggingface.co/learn/robotics-course/unit0/1)путь от классических железяк до роботов на нейронках.
— Deep RL: (https://huggingface.co/learn/deep-rl-course/unit0/introduction)всё про глубокое обучение с подкреплением (привет, OpenAI o1).
— Computer Vision: (https://huggingface.co/learn/computer-vision-course/unit0/welcome/welcome) учим ИИ видеть и понимать изображения.
— Audio Course: (https://huggingface.co/learn/audio-course/chapter0/introduction)работа со звуком и голосом через Transformers.
— Diffusion Course: (https://huggingface.co/learn/diffusion-course/unit0/1)полный гайд по генерации картинок и работе с библиотекой Diffusers.
— Open-Source AI Cookbook (https://huggingface.co/learn/cookbook/index): отдельная имба — сборник готовых рецептов и кода для решения любых ИИ-задач.
Забираем всю годноту — здесь (https://huggingface.co/learn). 😊
@python_be1
Ребята собрали в одном месте базу, за которую <s>инфоцыгане</s> другие попросили бы сотни тысяч.
Тут всё: от создания своих агентов до обучения роботов:
— AI Agents: (https://huggingface.co/learn/agents-course/unit0/introduction) база по самой горячей теме года — учимся делать автономных агентов.
— LLM Course: (https://huggingface.co/learn/llm-course/chapter1/1) как работают «мозги» современных чат-ботов и библиотек типа Transformers.
— Smol-course: (https://huggingface.co/learn/smol-course/unit0/1)если мало времени, это самый быстрый способ разобраться в тонкой настройке (fine-tuning) моделей.
—MCP Course: (https://huggingface.co/learn/mcp-course/unit0/introduction)свежак, созданный вместе с Anthropic — учимся подключать ИИ к любым данным.
—Deep RL: (https://huggingface.co/learn/deep-rl-course/unit0/introduction) всё про обучение с подкреплением (то, на чем гоняют роботы и OpenAI o1).
— ML для игр: (https://huggingface.co/learn/ml-games-course/unit0/introduction) как встроить нейронки прямо в геймдев.
— Robotics: (https://huggingface.co/learn/robotics-course/unit0/1)путь от классических железяк до роботов на нейронках.
— Deep RL: (https://huggingface.co/learn/deep-rl-course/unit0/introduction)всё про глубокое обучение с подкреплением (привет, OpenAI o1).
— Computer Vision: (https://huggingface.co/learn/computer-vision-course/unit0/welcome/welcome) учим ИИ видеть и понимать изображения.
— Audio Course: (https://huggingface.co/learn/audio-course/chapter0/introduction)работа со звуком и голосом через Transformers.
— Diffusion Course: (https://huggingface.co/learn/diffusion-course/unit0/1)полный гайд по генерации картинок и работе с библиотекой Diffusers.
— Open-Source AI Cookbook (https://huggingface.co/learn/cookbook/index): отдельная имба — сборник готовых рецептов и кода для решения любых ИИ-задач.
Забираем всю годноту — здесь (https://huggingface.co/learn). 😊
@python_be1
⚙️ Context-async-sqlalchemy: простой способ подружить ASGI и async SQLAlchemy
Эта библиотека упрощает интеграцию асинхронного SQLAlchemy в любые ASGI-приложения.
Что она делает:
• управляет жизненным циклом engine и сессий
• даёт удобные утилиты для работы с БД
• ускоряет разработку — без лишней магии и ограничений
Идея простая: меньше шаблонного кода, больше внимания логике приложения.
https://github.com/krylosov-aa/context-async-sqlalchemy
@python_be1
Эта библиотека упрощает интеграцию асинхронного SQLAlchemy в любые ASGI-приложения.
Что она делает:
• управляет жизненным циклом engine и сессий
• даёт удобные утилиты для работы с БД
• ускоряет разработку — без лишней магии и ограничений
Идея простая: меньше шаблонного кода, больше внимания логике приложения.
https://github.com/krylosov-aa/context-async-sqlalchemy
@python_be1