Add media-skill practice report draft

This commit is contained in:
AMEfremova 2026-05-18 23:40:21 +03:00
commit d9c135f12e

184
media-skill/draft_report.md Normal file
View file

@ -0,0 +1,184 @@
# Черновик журнала практики
## Данные обучающегося
ФИО: `<указать ФИО>`
Учебная группа: `<указать группу>`
Направление подготовки: `<указать направление>`
Вид практики: ознакомительная
Сроки практики: 09.02.2026 - 07.06.2026
Место прохождения практики: `<указать место из приказа>`
Индивидуальное задание: разработка и сопровождение проекта `media-skill`, предназначенного для генерации и обработки медиа-контента с использованием инструментов искусственного интеллекта.
## 1. План выполнения индивидуального задания
| № | Место проведения | Тема / этап | Период выполнения |
|---|---|---|---|
| 1 | `<указать место из приказа>` | Инструктаж по технике безопасности, знакомство с целями практики и структурой проекта | 09.02.2026 |
| 2 | `<указать место из приказа>` | Изучение репозитория `media-skill`, анализ структуры модулей и сценариев запуска | 10.02.2026 - 23.02.2026 |
| 3 | `<указать место из приказа>` | Анализ функциональности проекта: генерация изображений, мемов, видео, озвучки, удаление фона, анализ изображений | 24.02.2026 - 16.03.2026 |
| 4 | `<указать место из приказа>` | Работа с Git-репозиторием: проверка веток, синхронизация с удалённым репозиторием, разрешение конфликтов | 17.03.2026 - 06.04.2026 |
| 5 | `<указать место из приказа>` | Приведение проекта к аккуратному состоянию: очистка временных файлов, настройка `.gitignore`, удаление неактуальных веток | 07.04.2026 - 27.04.2026 |
| 6 | `<указать место из приказа>` | Изучение subagent-интеграции, файлов `SKILL.md`, `SUBAGENT.md`, `ACP.md` и сценариев локального запуска | 28.04.2026 - 18.05.2026 |
| 7 | `<указать место из приказа>` | Подготовка материалов отчёта, описание выполненных работ и полученных результатов | 19.05.2026 - 06.06.2026 |
| 8 | `<указать место из приказа>` | Оформление отчёта. Подведение итогов | 07.06.2026 |
## 2. Отзыв руководителя практики
Обучающийся группы `<указать группу>` `<указать ФИО>` проходил практику в `<указать место из приказа>`.
В ходе практики обучающийся изучил структуру проекта `media-skill`, предназначенного для генерации и обработки медиа-контента. Были рассмотрены основные части проекта: сценарии генерации изображений и видео, модуль создания мемов, инструменты для работы с озвучкой, модуль удаления фона, анализ изображений, а также файлы, отвечающие за интеграцию проекта как локального subagent-инструмента.
Практикант выполнил работы по анализу состояния Git-репозитория, синхронизации локальной версии с удалённым репозиторием, разрешению конфликта при обновлении ветки `master`, очистке временных и сгенерированных файлов, настройке правил `.gitignore`, удалению неактуальных локальных и удалённых веток. По итогам работы основная ветка проекта была приведена к чистому и синхронизированному состоянию.
За время прохождения практики обучающийся показал навыки работы с системами контроля версий, умение анализировать структуру существующего программного проекта, аккуратно разрешать конфликты, поддерживать порядок в репозитории и документировать выполненные действия.
Материалы, изложенные в отчёте обучающегося, полностью соответствуют индивидуальному заданию, рекомендуемая оценка «отлично».
## 3. Отчёт обучающегося по практике
### 3.1. Цель и задачи практики
Целью практики являлось знакомство с реальным программным проектом, изучение его структуры, инструментов разработки и сопровождения, а также выполнение практических задач по приведению репозитория к рабочему и аккуратному состоянию.
В рамках практики были поставлены следующие задачи:
- изучить назначение проекта `media-skill`;
- проанализировать структуру репозитория и основные модули;
- разобраться с принципами запуска проекта и интеграции в виде локального subagent-инструмента;
- проверить состояние веток и удалённого репозитория;
- выполнить синхронизацию локальной и удалённой версий;
- устранить временные и сгенерированные файлы, мешающие работе с репозиторием;
- настроить правила игнорирования служебных файлов;
- удалить неактуальные ветки после проверки их состояния;
- подготовить материалы для отчёта.
### 3.2. Общая характеристика проекта
Проект `media-skill` представляет собой набор инструментов для генерации и обработки медиа-контента. Он объединяет несколько направлений работы с изображениями, видео и аудио. В проекте присутствуют модули для генерации изображений, создания мемов, подготовки коротких видео, работы с озвучкой, удаления фона с изображений, анализа фото и обработки клипов.
В корне проекта расположены основные управляющие файлы:
- `entry.py` - основной входной сценарий для запуска пользовательских запросов;
- `SKILL.md` - описание возможностей проекта как навыка;
- `SUBAGENT.md` - инструкция для использования проекта в режиме локального субагента;
- `ACP.md` и `acp_server.py` - материалы и код, связанные с Agent Communication Protocol;
- `.gitignore` - правила исключения локальных и сгенерированных файлов из Git.
Также проект содержит отдельные директории по направлениям:
- `image-generation` - генерация и редактирование изображений;
- `meme-gen` - создание мемов;
- `story-gen` - генерация сценариев и трендовых идей;
- `video-generation` - генерация видео;
- `voice` - озвучка и работа с аудио;
- `ffmpeg-editing` - обработка видео через FFmpeg;
- `remove-background` - удаление фона;
- `face-analyzer` - анализ изображений;
- `clip-extractor` - извлечение клипов из видео.
### 3.3. Анализ состояния репозитория
На первом этапе было проверено локальное состояние репозитория. Проект находился в каталоге `C:\Users\HONOR\media-skill`. Удалённый репозиторий был настроен на адрес:
```text
https://git.lambda.coredump.ru/media-skill/media-skill.git
```
Изначально локальная рабочая ветка отличалась от удалённой. Также в рабочем дереве находились временные файлы, появившиеся после запуска сборщика трендов: лог `trend_collector.log`, временные файлы в каталоге `story-gen/scripts/trends`, а также изменённый файл `trends_cache.json`.
Перед синхронизацией были проверены:
- текущая ветка;
- локальные ветки;
- удалённые ветки;
- последние коммиты;
- незакоммиченные изменения;
- содержимое временных файлов.
### 3.4. Очистка временных файлов
После анализа было установлено, что часть изменений относится не к исходному коду проекта, а к результатам локального запуска скриптов. Такие файлы не должны попадать в основной репозиторий, так как они усложняют проверку изменений и создают лишний шум в истории Git.
Были удалены сгенерированные файлы трендов, временный лог `trend_collector.log`, директории `__pycache__`, а также временный swap-файл Git-редактора. Изменение файла `trends_cache.json` было возвращено к состоянию из репозитория.
Это позволило получить чистое рабочее дерево и подготовить проект к безопасной синхронизации с удалённым репозиторием.
### 3.5. Настройка `.gitignore`
В процессе работы был улучшен файл `.gitignore`. В него было добавлено правило:
```gitignore
*.log
```
Это правило исключает локальные лог-файлы из отслеживания Git. Также была исправлена некорректная строка:
```gitignore
tests/`
```
Она была заменена на корректное правило:
```gitignore
tests/
```
В результате файл `.gitignore` стал аккуратнее, а риск случайного добавления временных файлов в репозиторий уменьшился.
### 3.6. Синхронизация с удалённым репозиторием
После восстановления доступа к удалённому репозиторию была выполнена синхронизация с сервером. Удалённая ветка `master` содержала новые коммиты, поэтому локальная ветка была приведена к актуальному состоянию через `fetch` и `rebase`.
Во время rebase возник конфликт в файле `SUBAGENT.md`. Конфликт произошёл из-за того, что локальная ветка и серверная ветка содержали разные версии инструкции для subagent-режима. После анализа было принято решение оставить более актуальную серверную версию, так как она уже отражала новую структуру локального subagent-запуска. Старый конфликтующий коммит был пропущен, а чистящие коммиты были применены поверх свежей версии `master`.
После этого изменения были отправлены в удалённый репозиторий.
### 3.7. Работа с ветками
В ходе работы были проверены локальные и удалённые ветки. Локальные ветки, которые уже были слиты в `master`, были удалены. После синхронизации также были удалены неактуальные удалённые ветки:
- `feature/deepagents-media-agent`;
- `feature/tts-generator`;
- `wip/story-gen`;
- `feat/subagent-support`.
После удаления веток на сервере осталась актуальная основная ветка `master`, указывающая на последний коммит:
```text
8acf419 chore: tidy gitignore patterns
```
Финальное состояние репозитория:
```text
master...origin/master
working tree clean
```
### 3.8. Полученные результаты
По итогам практической работы были достигнуты следующие результаты:
- найден локальный каталог проекта `media-skill`;
- подтверждена связь с удалённым репозиторием;
- проверено состояние локальных и удалённых веток;
- очищены временные и сгенерированные файлы;
- настроены правила игнорирования логов и тестовых артефактов;
- разрешён конфликт при синхронизации с удалённой веткой;
- локальный `master` синхронизирован с `origin/master`;
- удалены неактуальные ветки;
- репозиторий приведён к чистому и удобному для дальнейшей работы состоянию.
### 3.9. Вывод
В ходе практики были получены и закреплены навыки работы с реальным Git-репозиторием, анализа структуры программного проекта, сопровождения существующего кода и аккуратного разрешения конфликтов. Также была изучена организация проекта, связанного с генерацией и обработкой медиа-контента, и рассмотрены особенности подготовки такого проекта к запуску в режиме локального subagent-инструмента.
Выполненная работа позволила привести репозиторий `media-skill` к стабильному состоянию, упростить дальнейшую разработку и подготовить основу для оформления итогового отчёта по практике.