Python RU
13.3K subscribers
900 photos
47 videos
38 files
1.15K links
Все для python разработчиков

админ - @notxxx1

@python_job_interview - Python собеседования

@ai_machinelearning_big_data - машинное обучение

@itchannels_telegram - 🔥лучшие ит-каналы

@programming_books_it - it книги

@pythonl

РКН: clck.ru/3Fmy2j
Download Telegram
🧠 Сложная и интересная задача для Python-инженеров:
"Запусти чужой Python-код... но так, чтобы он не сломал твой сервер"

Представь, ты разрабатываешь платформу, где пользователи могут запускать произвольные Python-скрипты:
например, в формате онлайн-компилятора, песочницы для тестов, или генератора графиков.

📌 Условия задачи:
Ты должен написать систему, которая:
• Принимает произвольный Python-код от пользователя
• Выполняет его безопасно и изолированно
• Ограничивает время выполнения до 2 секунд
• Ограничивает память до 128 MB
• Блокирует доступ к файловой системе, сети, subprocess, fork
• Возвращает stdout, stderr и статус выполнения

🛡️ Безопасность — ключ:
• Скрипт может попытаться сделать os.remove('/'), import socket, while True: и т.п.
• Ваша система не должна пострадать. Даже если кто-то пошлёт fork-бомбу или запросит весь RAM.

📦 Технические ограничения:
• Решение должно быть на Python
• Можно использовать Docker, podman, или Firecracker — но обоснуй выбор
• Стандартная библиотека разрешена, но доступ к os, sys.modules, inspect, eval, __import__ — должен быть отключён или переопределён
• Никаких внешних HTTP-запросов, файловых сокетов или pip install

🔧 Что ожидается:

1. Функция запуска:

result = run_code_safely(code="print(2 + 2)")
# result = { "stdout": "4\n", "stderr": "", "exit_code": 0, "status": "ok" }

Изоляция среды:
• Вариант 1: через запуск контейнера с ограничениями (docker run --rm --net=none --memory=128m)
• Вариант 2: через Firejail / chroot / seccomp / AppArmor профили
• Вариант 3: через интерпретатор Python внутри subprocess с ограничениями через resource, signal, ast и multiprocessing.Process

Блокировка опасных импортов и функций:
• Запретить import os, import subprocess, import, eval, exec, open, globals()
• Пример: AST-парсер удаляет запрещённые ноды до запуска

Обработка ошибок и ограничений:
• TimeoutExceededError — если код работает > 2 сек
• MemoryLimitError — если процесс превысил лимит
• SecurityViolation — при попытке запрещённого импорта или доступа

Опционально — FastAPI API:


POST /run
{
"code": "for i in range(10): print(i)"
}

→ Ответ:


{
"stdout": "0\n1\n2\n...\n",
"stderr": "",
"status": "ok",
"time": 0.032
}


🎯 Цель:
Собрать систему, которая запускает потенциально опасный код от незнакомцев — и не падает, не зависает, не открывает доступ к хосту.

🤯 Challenge:
• Как отследить попытку from os import system?
• Что делать с __import__('os').system('ls')?
• Как гарантировать остановку при while True: pass?
• Как контролировать память на уровне Python?

Если решишь — ты разберёшься с:
• AST-парсингом и безопасностью исполнения Python
• Управлением ресурсами (CPU, RAM, время) на уровне ОС
• Изоляцией через контейнеры и sandbox-окружения
• Построением безопасных API и интерпретаторов
🧬 Genesys: Language Modeling by Language Models
Проект от Allen Institute — Genesys (Genetic Discovery System) — это распределённая эволюционная система, в которой сами языковые модели (LLM) создают и улучшают другие языковые модели.

🛠 Что делает Genesys:
• Автоматизирует весь цикл: от генерации идеи до реализации, проверки, обучения и оценки новых моделей
• Использует LLM-агентов в роли исследователей и архитекторов
• Работает как распределённая система, способная параллельно развивать десятки направлений
• Имеет визуальный интерфейс, где можно наблюдать за эволюцией моделей и сравнивать результаты

🌐 Демо-доступ:
Доступен онлайн на сайте genesys.allen.ai (первая сборка может загружаться медленно)

📊 Основные разделы интерфейса:
• Evolution Statistics — статистика и ход эволюции
• Design Viewer — галерея сгенерированных архитектур (можно скачивать)
• Design Leaderboard — лидерборд лучших дизайнов по метрикам

🎥 Есть короткое видео-демо, где показаны функции и логика системы

📄 Исходный код и исследовательская статья опубликованы на GitHub и в открытом доступе

🧠 Genesys — это шаг к будущему, где языковые модели смогут исследовать и разрабатывать сами себя

💻 Попробовать: https://genesys.allen.ai
📝 Код https://github.com/allenai/genesys
✍️ Статья: https://arxiv.org/abs/2506.20249
This media is not supported in your browser
VIEW IN TELEGRAM
Wondera AI ии, который генерирует полноценные треки за минуту и заметно обходит конкурентов по качеству.

Вы можете создавать, редактировать и выпускать музыку бесплатно, а нейронка подскажет, как лучше составить промт для трека.

Пользуемся тут.
Forwarded from Data science Архив бесплатных курсов
🌟 Собрал для вас БЕСПЛАТНЫЕ аналоги популярных нейросетей, которые значительно облегчат вашу работу

Ideogram (MidJourney) — генератор изображений с огромным количеством настроек.
Pikalabs (Runway) — инструмент для создания и редактирования видео с помощью ИИ
Gamma (Power Point) — платформа для создания презентаций с ИИ-поддержкой.
N&N (Zapier) — автоматизация задач с использованием ИИ.
Krita (Photoshop) — бесплатный редактор изображений с функциями ИИ.
Gemini (ChatGPT) — мультимодальная нейросеть от Google для генерации текста, изображений и кода.



freecourses
Please open Telegram to view this post
VIEW IN TELEGRAM