Рекомендация по техническим условиям (ИИ)

По заявке на подключение программа находит узлы сети рядом и режим в них по расчёту, а помощник ИИ пишет рекомендацию: к какому узлу подключать и при каких условиях. Текст — черновик для инженера.

Где найти
«Инструменты» (значок чемоданчика справа вверху) → Реестры и отчёты → «Технические условия» → кнопка «Точка подключения». То же — палитрой команд: Ctrl+K и начните набирать название.
Права
право «Запуск расчётов»; на сервере должен быть включён помощник ИИ — иначе кнопок и переключателей ИИ нет.
Читаю как

Возможности

  • Подобрать узлы подключения рядом с объектом заявки — с режимом по последнему расчёту, баллом и причинами (без ИИ).
  • Оценить нагрузку объекта по этажности и площади застройки, если её нет в заявке (без ИИ).
  • Получить рекомендацию помощника: какой узел выбрать и почему, запасные варианты, риски.
  • Скопировать строку черновика ТУ: источник, камера, прирост нагрузки с разбивкой на отопление, вентиляцию и ГВС.
  • Показать выбранную точку и всех кандидатов на карте.

Как это работает

Точки подбирает код (database/tu_connection.py). Ищутся узлы сети в радиусе от точки объекта: по умолчанию 300 м, от 20 до 2000 м. Один узел в нескольких фрагментах учитывается один раз — в варианте с самым свежим расчётом. Для каждого узла:

  • располагаемый напор = напор подачи − напор обратки по расчёту;
  • дополнительный расход — по нагрузке и перепаду температур в узле (если температур нет — 60 °C);
  • скорость в участке после подключения — по нынешним скорости и расходу.

Балл — из 100: −1 за каждые 20 м расстояния (до 1000 м); −30, если по фрагменту нет расчёта; −25, если располагаемый напор меньше 15 м; −30, если скорость после подключения выше 3,5 м/с; −20, если участок уже перегружен; −10 за диаметр меньше 100 мм. В список — 8 лучших по баллу, при равенстве — ближние.

Нагрузка по аналогам — медиана удельной нагрузки на 1000 м² по зданиям АЛСЕКО (таблица zdaniya_2) той же этажности ±1, умноженная на площадь.

Рекомендацию пишет модель. «Рекомендация ИИ» заново подбирает точки и отдаёт модели: текст заявки, запрошенную и оценённую нагрузку, пороги и до 8 кандидатов со всеми числами; если кандидатов нет, модель не вызывается. Модель выбирает номер кандидата и пишет объяснение, запасные варианты, риски и черновик полей ТУ. Имена камеры и источника в черновике сервер берёт из выбранного кандидата, а не из текста модели; номер вне списка отбрасывается. Объяснение, варианты и риски — на языке интерфейса, черновик ТУ — по-русски, как в журнале.

Рекомендация ничего не записывает в журнал ТУ: строку черновика вы копируете сами.

Что нужно для работы

  • Расчёт фрагмента, к которому подключаетесь: без него режим неизвестен и балл ниже на 30.
  • «Рекомендация ИИ» и поле «Текст заявки» — право «Запуск расчётов» и помощник ИИ, включённый на сервере. Подбор точек и оценка нагрузки работают без них.
  • Оценка нагрузки — здания АЛСЕКО с нагрузкой, этажностью и площадью (zdaniya_2) в базе города.

Шаги

  1. Откройте «Инструменты» и наберите в поиске «Технические условия» — пункт выделен рамкой.

    Пункт «Технические условия» в панели «Инструменты»

  2. Нажмите пункт — откроется окно.

    Окно «Технические условия»

  3. В журнале технических условий нажмите «Точка подключения». Укажите место: адрес («Найти адрес») или «Центр карты»; нагрузку, Гкал/ч (или «Оценить нагрузку» по этажности и площади); при желании — текст заявки. Нажмите «Подобрать точки» — появятся ближайшие узлы и режим в них.

    Рекомендация по техническим условиям (ИИ): шаг 3

  4. Нажмите «Рекомендация ИИ». Помощник выберет точку и опишет условия подключения и риски; строку черновика ТУ можно скопировать. Проверьте рекомендацию по режиму и примите решение сами.

    Рекомендация по техническим условиям (ИИ): шаг 4

Примеры

Точка у камеры тк6-5-24 (копия Алматы, фрагмент 74, нагрузка 0,5 Гкал/ч, радиус 300 м) — 8 кандидатов, первые:

Узел Расстояние Ø, мм Hрасп, м Скорость, м/с Доп. расход, т/ч Источник Балл
тк6-5-24 2,2 м 500 65,51 0,377 → 0,388 8,04 АТЭЦ2 99,9
мтк6-5-25 11,2 м 500 65,48 0,377 → 0,388 8,03 АТЭЦ2 99,4
мтк6-5-27 31,3 м 300 65,14 1,03 → 1,06 8,04 АТЭЦ2 98,4
тк6-5-24 (другой фрагмент) 2,4 м 150 — — 8,33 — 69,9

Числа — из ответа сервера; в окне расстояние и балл округлены до целых («2 м», «100»). Последняя строка — тот же узел во фрагменте без расчёта: 100 − 2,4 / 20 − 30 = 69,9.

Нагрузка по аналогам. 9 этажей, 800 м² — 0,4927 Гкал/ч: медиана 0,616 Гкал/ч на 1000 м² по 1286 зданиям 8–10 этажей.

Если не получается

  • «В радиусе поиска нет узлов сети — увеличьте радиус или уточните точку» — увеличьте радиус (до 2000 м) или проверьте, что место рядом с сетью.
  • Кнопки «Рекомендация ИИ» нет — ИИ выключен на сервере или нет права «Запуск расчётов»; подбор точек работает и без ИИ.
  • «В радиусе поиска нет узлов сети — увеличьте радиус или уточните точку». «Рекомендация ИИ» без кандидатов модель не вызывает и отвечает «В радиусе … м нет узлов для подключения — увеличьте радиус или проверьте место».
  • «Помощник ИИ не ответил: Ошибка на сервере: …» — модель недоступна; подбор точек и таблица остаются.
  • «Подбор точек не выполнен: …», «Оценка нагрузки не выполнена: …» — ошибка сервера при подборе без ИИ.
  • «Адрес не найден (Nominatim в пределах города)» — уточните адрес или возьмите «Центр карты».

Для администратора

  • Флаги: AI_ENABLED, ANTHROPIC_API_KEY, AI_MODEL. Средний уровень рассуждения. Запись «AI» в журнале действий — tool=tu_recommend, с числом кандидатов и нагрузкой.
  • Текст заявки уходит в модель как есть: не вставляйте в него ФИО и телефоны заявителя.

Для разработчика

  • API: POST /api/v1/ai/tu/recommend (lon, lat, request_text до 4000, load_gcal_h, floors, area_m2, radius_m 20–2000) → candidates, load_estimate, recommendation (chosen_index, explanation, alternatives, draft, risks), chosen. Без ИИ — GET /api/v1/technical-conditions/connection-candidates, GET /api/v1/technical-conditions/load-estimate.
  • Сервер: routers/ai.py, ai/tu_recommend.py (build_user_input, _sanitize, MAX_CANDIDATES = 8), database/tu_connection.py (assess, connection_candidates, estimate_load), промпт ai/prompts/tu_recommend.md.
  • Веб: components/ai/TuConnectionDialog.vue, services/tuConnectionService.ts; кнопка «Точка подключения» — components/TechnicalConditionJournalDialog.vue.
  • Тесты: API — tests/test_tu_connection.py; e2e — e2e/functions/ai.spec.ts.
Хотите увидеть эту функцию на своих данных?Покажем ТГИД на демонстрации и ответим на вопросы инженеров.
Запросить демо