1. Базовые и обязательные- python (3.10–3.11, одинаковая версия везде)
- pip
- setuptools, wheel
2. Работа с данными и форматами- pandas — основная работа с табличными данными
- numpy — базовые массивы
- scipy — статистика, расстояния
- pyarrow — чтение/запись parquet (важно!)
- fastparquet — альтернативный движок parquet
- polars (опционально, но быстро) — если кто-то захочет ускориться
- tqdm — прогресс-бары
- openpyxl — если вдруг нужно будет читать/писать xlsx
- python-dotenv — если захотите класть конфиги в .env
- joblib — кэширование и сериализация
3. NLP / поиск / RAG-компоненты- transformers — работа с моделями/токенайзерами Hugging Face
- sentence-transformers — генерация эмбеддингов для поиска/сходства
- faiss-cpu — векторный поиск (если GPU не нужен именно для поиска)
- faiss-gpu — векторный поиск c GPU
- rank-bm25 — быстрый BM25 по корпусу
- nltk — токенизация, стемминг, стоп-слова
- spacy (с базовой английской моделью, если разрешите) — парсинг и нормализация
- rapidfuzz — быстрые текстовые сравнения
- datasets (от Hugging Face) — удобная работа с датасетами
- huggingface-hub — чтобы брать локально кэшированные модели (у вас можно держать их уже скачанными)
- accelerate — чтобы участники могли легко гнать модель на GPU/CPU
- sentencepiece — требуется многим токенайзерам
- sacremoses — для старых моделей
4. Компьютерное зрение / работа с изображениями- opencv-python — чтение/преобразование изображений
- Pillow (PIL) — базовые операции
- scikit-image — доп. обработка изображений
- albumentations — аугментации
- timm — много готовых визуальных архитектур (если кому-то надо дообучить/доиспользовать)
- torchvision — стандартные датасеты/трансформации
- pyyaml — потому что многие CV-конфиги любят yaml
5. ML / DL стек- PyTorch: torch (с поддержкой CUDA)
- torchvision
- scikit-learn — классика: масштабирование, метрики, модели, train/test split
- xgboost — на случай, если кто-то захочет табличку решить бустингом
- lightgbm — аналогично
- catboost — иногда участникам проще табличное сделать именно им
- optuna или scikit-optimize — если кто-то захочет автотюнить
- mlflow (опционально) — трекинг экспериментов
- bitsandbytes — необходимая оптимизация
- peft (опционально) — оптимизация для дообучения модели
- xformers (опционально) — оптимизация (ускорение инференса/обучения)
6. Метрики и утилиты для соревнований(чтобы не искать руками)
- scikit-learn уже включает много метрик (MAE, MSE, cosine_similarity и т.п.)
- torchmetrics — если участники будут считать метрики на GPU
- pytorch-lightning (опционально) — чтобы быстро собрать тренинг-луп
- matplotlib — графики
- seaborn — EDA
- plotly (опционально) — интерактив, но можно не ставить всем
- phik — анализ корреляций (EDA)
7. Инженерные утилиты- psutil — мониторинг ресурсов
- uvicorn / fastapi (опционально) — если кто-то хочет локально обернуть модель в сервис (на своей машине это разрешено)
- jinja2 — для генерации html/текстов
- rich — красивый вывод логов
- loguru — удобный логгер
- pytest — чтобы участники могли тесты гонять локально
8. Системные/внешние зависимости (для образа)Это то, что ставится не через pip, а в сам образ/на машину:
- git (только чтение, без пуша)
- ffmpeg (если запись/преобразование видео вдруг понадобится)
- libgl1 / libglib2.0-0 (чтобы opencv не ругался на Ubuntu)
- unzip, wget (для распаковки локальных архивов, если вы их кладёте в Shared)
9. Для командного тура- sumolib - Вспомогательная библиотека Python для чтения и модификации файлов SUMO (сетей, маршрутов, логов). Обычно устанавливается вместе с SUMO, но лучше явно включить.
- traci - Основной API для взаимодействия с SUMO из Python: управление трафиком, светофорами, сбор статистики.
- eclipse-sumo - Обёртка для установки SUMO через pip, включает бинарные утилиты и TraCI. Если устанавливается из архива — указать локальный путь в образе.
- xmltodict - Преобразование XML ↔ dict (SUMO использует XML для маршрутов, сетей и сигналов).
- plotly (опционально) - Для визуализации траекторий и временных рядов при защите проекта.
- subprocess (встроенный модуль) - Не требует установки, нужен для запуска SUMO через скрипты.
9. Работа с Retrieval-Augmented Generation (RAG) и локальными моделямиДля обеспечения возможности построения и тестирования локальных RAG-сценариев в базовое окружение установлены необходимые библиотеки для работы с эмбеддингами, векторным поиском и локальными языковыми моделями.
- langchain и langchain-core — для конструирования локальных RAG-цепочек, пайплайнов и интеграции с локальными эмбеддингами и моделями;
- faiss-cpu — для локального хранения и поиска по векторам эмбеддингов без обращения к сети;
- sentence-transformers — для генерации эмбеддингов текстов;
- huggingface-hub — для работы с локально загруженными моделями из Hugging Face (в режиме только чтения);
- transformers — базовая библиотека для инференса локальных моделей;
- accelerate — для оптимизации вычислений при запуске моделей на CPU и GPU.
Все перечисленные библиотеки установлены офлайн и функционируют полностью локально.
Подключение внешних LLM-провайдеров (OpenAI, Google, Anthropic, Mistral и др.), использование API-ключей и любая передача данных во внешние сети строго запрещены.
10. Что запрещено к установкеНе допускается установка или использование пакетов, обращающихся к внешним генеративным сервисам или облачным вычислительным платформам, в том числе:
- openai, google-generativeai, anthropic, groq, mistralai и другие аналогичные клиенты публичных API;
- клиенты облачных сред (colab, runpod, replicate, vercel, paperspace и т.п.);
- любые пакеты или скрипты, создающие исходящие сетевые соединения для инференса или загрузки моделей.