# iTop AI Assistant: ИИ-помощник для приёма заявок в iTop

**URL:** <http://community.itop-itsm.ru/t/itop-ai-assistant-ii-pomoshhnik-dlya-priyoma-zayavok-v-itop/2155>\
**Category:** Кастомизация\
**Created:** [25.Октябрь.2026 19:49:33 UTC](http://community.itop-itsm.ru/t/itop-ai-assistant-ii-pomoshhnik-dlya-priyoma-zayavok-v-itop/2155 "2026-10-25T19:49:33Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![vladimir](http://community.itop-itsm.ru/user_avatar/community.itop-itsm.ru/vladimir/32/687_2.png) [@vladimir](http://community.itop-itsm.ru/u/vladimir)\
**Post date:** [25.Октябрь.2026 19:49:33 UTC](http://community.itop-itsm.ru/t/itop-ai-assistant-ii-pomoshhnik-dlya-priyoma-zayavok-v-itop/2155/1 "2026-10-25T19:49:33Z")

</div>

# iTop AI Assistant: ИИ-помощник для приёма заявок в iTop

Всем привет!

Давно не писал сюда ничего большого, а повод накопился. Последнее время я делаю проект, о котором хочу наконец рассказать: iTop AI Assistant. Это ИИ-слой поверх iTop, который помогает с первым этапом работы с новой заявкой: понять, что вообще хочет пользователь, и собрать недостающие детали до того, как заявку откроет инженер.

### Зачем это нужно?

Типичная заявка: «Не печатает принтер». Без модели, без текста ошибки, без понимания, что уже пробовали. Инженер пишет в ответ: какой принтер, что на экране, с какого компьютера печатаете, и ждёт ответа. Пользователь не знает, какие сведения нужны инженеру, а инженер без них не может начать работу. На эту переписку уходит время, в том числе время по SLA.

Идея в том, чтобы первый круг уточнений проходил ИИ, а инженер получал заявку, в которой нужные сведения уже есть.

### Что он умеет сейчас

Пока реализован один модуль: приём новых заявок. Когда в iTop появляется заявка, ассистент:

1. если у неё не выбраны услуга и подкатегория, подбирает их по каталогу услуг организации заявителя и записывает в заявку;
2. если информации не хватает, задаёт в общем журнале один уточняющий вопрос и ждёт ответа;
3. когда картина ясна, оставляет во внутреннем журнале короткую сводку для инженера и дальше в заявку не вмешивается.

Самое интересное, на мой взгляд, это откуда он знает, чего именно не хватает. Критерии полноты берутся из описания подкатегории услуги в iTop. Написано в описании подкатегории «Hardware incident», что нужны производитель и модель устройства, ОС и точный текст ошибки, значит ассистент будет спрашивать именно это, а не дежурное «опишите проблему подробнее». Получается, что настройка поведения в основном сводится к нормально заполненному каталогу услуг, а это полезно и само по себе.

Вот как это выглядит для пользователя в портале. Заявка «Не печатает принтер» без подробностей, ассистент спрашивает ровно то, что требует подкатегория, пользователь отвечает:

 ![Переписка с ассистентом в портале](http://community.itop-itsm.ru/uploads/default/original/1X/1fb2b3eea7830ad1ea8e4ef84af6e9f11a57e86c.jpeg)

А вот что после ответа видит инженер во внутреннем журнале:

 ![Сводка для инженера во внутреннем журнале](http://community.itop-itsm.ru/uploads/default/original/1X/db298ddc03d2d0feb066ecca9a9c71622dc104e6.jpeg)

Если заявка с самого начала написана хорошо, вопросов не будет вовсе: ассистент сам подберёт услугу и подкатегорию и сразу оставит сводку. На тестовом стенде такая заявка обрабатывается секунд за десять.

Пара ограничений, которые я считаю принципиальными. Ассистент отступает, как только заявку взял инженер (статус ушёл из «Новый»). Задаёт не больше трёх вопросов на заявку, и это настраивается. А закрывать или переназначать заявки сам не умеет вовсе. Автоматически он делает только то, что безопасно и легко откатить.

### Как это устроено

Ассистент работает рядом с iTop, отдельным сервисом. В сам iTop ничего не устанавливается: никаких расширений, только сервисная учётная запись, пара триггеров и вебхуков, которые мастер настройки ассистента может создать сам. iTop шлёт вебхук о новой заявке или новом комментарии, ассистент читает заявку через REST API, думает и пишет обратно от имени своей учётки. Поэтому все его действия видны в истории заявки и подписаны, как у обычного сотрудника.

iTop остаётся единственным источником правды. Ассистент не хранит у себя копий заявок и переписки, а каждый раз читает всё заново. У себя он держит только служебное состояние: сколько вопросов уже задано и закончил ли он с заявкой.

Внутри работает один ИИ-агент с небольшим набором инструментов: посмотреть каталог, записать классификацию, задать вопрос, передать инженеру. Важный момент: все правила (один вопрос за раз, лимит вопросов, остановка после назначения инженера, категория только из каталога) зашиты в код, а не в промпт. Если модель вдруг решит сделать что-то лишнее, её вызов просто отклонят, и заявка не пострадает. Модели бывают очень изобретательны, так что полагаться только на промпт я не стал.

### Админка

Для настройки есть веб-интерфейс, в том числе на русском. Первая установка идёт через мастер из четырёх шагов: токены, подключение к iTop, вебхуки и подключение к модели. Каждый шаг проверяет соединение, прежде чем пустить дальше.

 ![Мастер настройки](http://community.itop-itsm.ru/uploads/default/original/1X/19363e81d2d5510f38a43c843264f8184146e38e.jpeg)

Отдельно хочу сказать про журнал запусков. Каждая обработка заявки записывается по шагам: какие инструменты вызвал агент, что получил в ответ, что решил, сколько ушло токенов и времени. Если ассистент сделал что-то странное, можно открыть запуск и посмотреть, почему так вышло.

 ![Журнал запусков](http://community.itop-itsm.ru/uploads/default/original/1X/2fbe19ef69de4e75d5631fe5d4b0368700e3b2be.jpeg)

Ещё есть холостой режим, с которого я советую начинать. Ассистент обрабатывает настоящие заявки как в бою, но ничего не пишет в iTop: вопросы и сводки, которые он отправил бы, видны только в журнале запусков. Можно спокойно посмотреть, как он работает на вашей очереди, поправить описания подкатегорий и промпты и только потом включать по-настоящему.

 ![Настройки модуля и холостой режим](http://community.itop-itsm.ru/uploads/default/original/1X/791e3f633c194c767ac72d0d1a8c686c4aa3b5f4.jpeg)

Промпты, кстати, тоже правятся прямо из админки, и исходный вариант всегда можно вернуть.

### Какая нужна модель и сколько это стоит?

Подойдёт любая модель, которая нормально умеет вызывать инструменты (tool calling): OpenAI, Gemini, Ollama или любой OpenAI-совместимый endpoint, включая модель на своём железе. На облако в архитектуре ничего не завязано. При подключении мастер проверяет не только то, что модель отвечает, но и то, что она умеет вызывать инструменты.

Теперь про деньги за токены. Я посмотрел расход на тестовом стенде. Заявка с уже выбранной подкатегорией обходится примерно в 4 тыс. входящих и 1,5 тыс. исходящих токенов за весь диалог: вопрос, ответ, сводка. Заявка без классификации дороже, потому что агенту приходится листать каталог: до 10–12 тыс. входящих и 3–4 тыс. исходящих. Для оценки возьмём с запасом 20 тыс. входящих и 5 тыс. исходящих на заявку, ведь реальный каталог услуг обычно больше демонстрационного.

Цены на конец октября 2026 года через RouterAI (агрегатор с оплатой в рублях):

| Модель | Вход / выход за 1 млн токенов | Одна заявка | 1000 заявок |
| --- | --- | --- | --- |
| DeepSeek V4 Flash | 11 ₽ / 17 ₽ | ~0,3 ₽ | ~300 ₽ |
| Qwen3.8 27B | от 2 ₽ / 52 ₽ до 103 ₽ / 335 ₽, зависит от провайдера | 0,3–3,7 ₽ | 300–3700 ₽ |

Мой тестовый стенд работает как раз на Qwen3.8 27B, все скриншоты выше сделаны на нём. А 27B-модель при желании можно поднять и на своей видеокарте, тогда заявки вообще никуда наружу не уходят.

### Что дальше?

В планах консоль для инженера прямо в интерфейсе iTop, поиск закономерностей по заявкам и помощь с базой знаний. Но сейчас мне важнее не добавлять новое, а обкатать то, что уже есть, на живых заявках.

Ссылки:

- GitHub: [GitHub - knowitop/itop-ai-assistant: AI-powered middleware for Combodo iTop that reduces ticket back-and-forth and helps engineers start working faster. · GitHub](https://github.com/knowitop/itop-ai-assistant)
- Документация (на английском): [https://itop-ai-assistant.readthedocs.io/](https://itop-ai-assistant.readthedocs.io/)

Буду рад вопросам и критике в комментариях.
