Skip to content
MojarungPublic

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

green

Сервис автопроектирования озеленения улиц для кейса ДПиООС (ЛЦТ 2026). На входе DXF с подосновой Мосгеотреста и сетями (DWG - через ODA File Converter, разд. 5.3 документации). Сервис строит ограничения по нормам (СП 42.13330, 743-ПП, 623-ПП / МГСН 1.02-02, 369-ПП), расставляет деревья и кустарник и возвращает DXF: исходные слои без изменений, план - на отдельных слоях GREEN_*. У каждой посадки и каждого отказа есть объяснение с актом и пунктом нормы: атрибутом в DXF и отдельными файлами (CSV, JSON, Markdown, HTML-отчёт).

Запуск

В Docker (целевая среда - МосТех.ОС или совместимый Linux):

docker compose up --build -d          # интерфейс и API на http://localhost:8000/
curl -s http://localhost:8000/api/v1/health

Swagger - http://localhost:8000/docs, схема - docs/openapi.json. Kubernetes по желанию: kubectl apply -k deploy/k8s.

Без Docker (Python 3.14, uv):

uv sync
uv run green run путь/к/файлу.dxf --profile strict             # DXF или DWG
uv run green run генплан.dxf сети.dxf покрытия.dxf              # комплект склеивается в один чертёж
uv run green run путь/к/файлу.dxf --inventory перечётка.xls     # существующие деревья в квотах
uv run green run путь/к/файлу.dxf --set spacing_m=6             # любой параметр профиля
uv run green verify вход.dxf out/<прогон>/result.dxf            # исходные сущности не изменены
uv run green audit план.dxf --plantings "^0?6_+ДП_.+_план$"     # нормоконтроль чужого плана
(cd frontend && npm ci && npm run build) && uv run green serve  # веб-интерфейс на :8000

Фото по кадру 3D-вида (бонус ТЗ, по желанию) рисует Qwen-Image-2.1 на видеокарте от 6 ГБ. В Docker-образ модели не входят и сами не скачиваются: без них расчёт, DXF, объяснения и 3D-вид работают полностью. Набор на 10,5 ГБ скачивает скрипт, затем сервис запускается с каталогом моделей (разд. 5.9 документации, лицензия модели - только некоммерческая):

uv run python tools/photos/fetch_models.py --dest ~/green-models --platform linux
GREEN_PHOTO_MODELS_DIR=~/green-models uv run green serve

Профили норм - config/profiles/: strict (по умолчанию), barriers (прикорневые барьеры, СП 42, табл. 9.1, прим. 5), no_utilities (съёмка без сетей), review (незнакомый DXF без эвристик классов), shrubs. Все параметры - приложение D документации.

Документация

  • docs/documentation/ и её сборка green-documentation.pdf: назначение и границы (01), архитектура и развёртывание (02), алгоритм, интерпретируемость и BPMN (03), методы и библиотеки (04), сборка, запуск и проверка (05), способы работы (06), API (07), ограничения и известные ошибки (08); приложения - свод правил, итоги по улицам пилота, файлы прогона, параметры (generated/).
  • Презентация в шаблоне ЛЦТ 2026: docs/green-lct2026.pdf, 20 слайдов (сборка - tools/presentation/pitch/). Анимированная схема конвейера - docs/presentation.html, её выгрузка - docs/presentation.pdf.
  • Сценарий демонстрации: docs/demo.md.
  • Требования к посадке по актам заказчика и цитаты норм: docs/requirements/; база видов - docs/species.md.

Пример входа и выхода

examples/: фрагмент улицы Берзарина, result.dxf со слоями GREEN_*, отчёт интерпретаций, CSV посадок, проверка целостности и снимки 3D-вида участка.

Проверки

uv run pytest
uv run ruff check src tests && uv run ruff format --check src tests
uv run ty check src && uv run lint-imports
cd frontend && npm test

Датасет пилота и тексты ТЗ в репозиторий не входят: dataset/ монтируется в контейнер как /dataset (разд. 5.2 документации).

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages