# Из ноутбука в пакет ## Цель Перенести один прошлый проект в модули `data/train/evaluate/inference`. ## Теория перед выполнением - [Production-проект: структура, контракты и тесты](../notes/01_production_project_contracts_testing.md) - [Глоссарий модуля](../notes/glossary.md) ## Что сделать 1. Выбрать законченный ноутбук и зафиксировать его входы, выходы и текущую метрику. 2. Вынести загрузку данных, обучение, оценку и инференс в пакет без зависимости от порядка ячеек. 3. Добавить конфиг и CLI-команды для обучения и предсказания. 4. Зафиксировать общий preprocessing и data/model contracts. 5. Добавить unit-, contract- и небольшой integration-тест. 6. Проверить воспроизводимый запуск и заполнить [отчёт](../../../common/REPORT_TEMPLATE.md). ## Результат CLI-команды, конфиг, unit/integration tests и README. Решение разместите рядом в `solution/`. Не коммитьте большие данные, веса или секреты. ## Критерии приёмки - Обучение запускается одной командой; код не зависит от порядка ячеек. - Код читаем, разбит на функции и запускается по инструкции. - Выводы подтверждаются измерениями и не выходят за пределы эксперимента. ## Вопросы для самопроверки - Можно ли удалить ноутбук и повторить обучение одной командой? - Где разделены конфигурация, код и артефакты? - Один ли preprocessing используется при обучении и инференсе? - Какой тест первым обнаружит изменение входной схемы?