> ## Documentation Index
> Fetch the complete documentation index at: https://omniflow-vpn.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Управление AI и оценка качества

> Как включать функции по одной, ограничивать их расходы, хранить только то, что вы решили хранить, и узнавать, когда ответы становятся хуже

[Приватность AI](https://omniflow-vpn.mintlify.site/ru/operations/ai-privacy.md) описывает, что покидает установку и
что это останавливает. Эта страница описывает решения вокруг: какие функции
включены, кому можно ими пользоваться, что остаётся после и как вы узнаёте о
падении качества.

## Функции включаются по одной

Функций девять — сводки обращений, предложенные ответы, переписывание, перевод,
классификация, черновики маркетинговых текстов, анализ злоупотреблений,
административный копилот и инструменты MCP — и каждая включается отдельно, со
своим провайдером, моделью, бюджетом и сроком хранения.

Функция выключена, пока вы не включите её *и* не выберете провайдера и модель.
Функция, которая включена, но настроена неверно, показывается как «включена, но
непригодна к использованию», а не ведёт себя молча как выключенная:
переключатель, который выглядит включённым и работает как выключенный, — худший
вариант из обоих.

За каждой функцией стоит ручной процесс, существовавший до неё. Выключение AI
оставляет их ровно такими, какими они были; поверхности сообщают
«недоступно», а не падают.

## Что провайдер делает с вашими данными

Каждый провайдер несёт ваши ответы на основании собственных условий: сохраняет
ли он запросы, может ли обучаться на них, в каком регионе обрабатывает и любое
уведомление о хранении, которое вы вставите. Omniflow не может это проверить и
не делает вид, что может, — эти сведения фиксируются, чтобы панель могла
предупредить вас **до** включения функции, а не после того, как данные ушли.

Предупреждения выводятся рядом с переключателем самой функции. Предупреждение в
отдельной панели — это то, что читают уже после принятия решения.

## Реестр потоков данных

Каждый путь, которым данные могут попасть из записи Omniflow к внешнему
провайдеру AI, проходит через одну и ту же контрольную точку, подробно
описанную в [Приватность AI](https://omniflow-vpn.mintlify.site/ru/operations/ai-privacy.md). Эта таблица — та же
история в виде реестра, а не повествования: один источник — одна строка,
чтобы на вопрос о потоке данных можно было ответить, посмотрев в таблицу, а не
прочитав всю страницу.

| Источник | Проходит через | Назначение | Что покидает установку | Где хранится |
| - | - | - | - | - |
| Переписка обращения (сводка, предложенный ответ) | Шлюз редактирования | Настроенный провайдер функции | Текст обращения без секретов, токенов, ссылок на подписку, платёжных данных и лишних персональных данных | Промпты по умолчанию не хранятся; выводы — согласно сроку хранения самой функции |
| Текст для переписывания / перевода | Шлюз редактирования | Настроенный провайдер функции | Переписываемый текст, отредактированный так же | Так же, как выше |
| Черновик кампании / маркетингового текста | Шлюз редактирования | Настроенный провайдер функции | Текст черновика и определение сегмента словами, но никогда сырой список клиентов | Так же, как выше |
| Сигналы анализа злоупотреблений / мошенничества | Шлюз редактирования | Настроенный провайдер функции | Минимизированные, безопасные с точки зрения прав доступа структурированные сигналы — по умолчанию не сырое содержимое обращения | Так же, как выше; вывод — это рекомендация, никогда не автоматическое действие |
| Вопрос административному копилоту и результаты инструментов | Шлюз редактирования | Настроенный провайдер функции | Вопрос плюс результаты авторизованных, проверенных по схеме вызовов инструментов | Так же, как выше |
| Аргументы и результаты инструментов MCP (Omniflow как клиент) | Проверка по JSON Schema, затем изоляция/сканирование инъекций в промпт | Подключённый сервер MCP, затем обратно в модель как размеченные данные | Только то, что позволяет собственное право доступа RBAC вызывающего оператора | Записывается в журнал активности MCP — [Подключения MCP](https://omniflow-vpn.mintlify.site/ru/operations/mcp.md#что-записывается) |
| Вызовы инструментов MCP (Omniflow как сервер) | Проверка RBAC по собственному праву доступа вызывающего оператора | Любой подключённый клиент | Только то, что этот оператор уже мог получить в панели | Тот же журнал активности |

Каждая строка проходит через шлюз редактирования или проверку RBAC прежде, чем
что-либо покинет установку — не существует пути от источника данных к
провайдеру, минующего оба.

## Проверка прав доступа

Вызов инструмента MCP авторизуется так же, как клик в панели: по собственному
праву доступа RBAC вызывающего оператора, а не по полномочиям служебной
идентичности — см.
[Каждый инструмент отображается на право доступа, которое у вас уже есть](https://omniflow-vpn.mintlify.site/ru/operations/mcp.md#каждый-инструмент-отображается-на-право-доступа-которое-у-вас-уже-есть).
Именно это свойство делает периодическую проверку прав доступа содержательной,
а не формальностью:

* Каждое сопоставление сервера/инструмента с правом доступа видно и
  редактируется в **Настройки → AI и MCP** — не существует сопоставления,
  существующего только в конфигурации, недоступной для просмотра проверяющим.
* Изменяющему инструменту требуется одновременно `AllowMutations` на сервере и
  сам инструмент, явно указанный в списке разрешённых; включение подключения
  само по себе не даёт права на запись.
* Каждое изменение сопоставления само является аудируемым действием настройки,
  поэтому проверку можно начинать с «что изменилось с последней проверки», а
  не переаудировать весь реестр каждый раз.
* Собственный сервер MCP Omniflow следует тому же правилу в обратном
  направлении: подключённый клиент не может увидеть, а тем более вызвать,
  инструмент, которым аутентифицированный оператор уже не мог бы
  воспользоваться в панели.

## Лимиты использования

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

Когда применимы несколько, вам сообщают о **самом узком**, потому что средство
устранения различается: «вы израсходовали свою квоту» и «установка израсходовала
свою квоту» требуют от одного и того же человека разных действий.

> [!WARNING]
>
> Нечитаемый счётчик отклоняет вызов. Траты в счёт лимита, который никто не
> может измерить, — это то, как установка узнаёт о своём потолке из счёта.

У установки без настроенных лимитов потолка нет — это распространённый и
законный случай.

## Расходы и производительность

Отчёт об использовании показывает запросы, токены, среднюю задержку и p95, сбои
и оценочную стоимость с группировкой по функции, провайдеру и модели.

Ни промптов, ни содержимого выводов в нём нет, потому что они не сохраняются: в
таблице, из которой он читает, для них нет колонок. Таблица метрик, которая
*способна* хранить тело обращения, рано или поздно его хранит.

Стоимость указана как оценочная. Omniflow не видит счёта, а колонка с именем
`cost_minor` без слова «оценочная» рядом соблазняет кого-нибудь сверять по ней.

## Хранение и юридическая блокировка удаления

Срок хранения задаётся для каждой функции, потому что материал разный:
маркетинговый черновик — это ваш собственный текст, а сводка обращения — чья-то
жалоба. Промпты по умолчанию не хранятся; выводы хранятся в течение заданного
вами срока.

Юридическая блокировка приостанавливает удаление по одному субъекту. Она
работает только в одну сторону: она может продлить хранение того, что уже
хранится, и никогда не может привести к хранению того, что ваша политика
запретила хранить. Блокировка — это указание не удалять, а не указание собирать.

## Экспорт аудита помечает решения, принятые под влиянием AI

Когда оператор действует на основании того, что произвела модель, это
записывается с указанием субъекта, функции, провайдера и модели, версии политики
и оператора — а также того, принял ли он результат, **отредактировал** его или
отклонил.

«Отредактировал» отделено от «принял», потому что переписать половину черновика
— это другое решение, чем нажать «отправить» без изменений. Существенные решения
— неблагоприятные и финансовые — помечаются, поэтому экспорт можно сузить до
тех, о которых вообще кто-нибудь спросит.

Экспорт закрыт правом доступа на экспорт аудита, а не правом на настройки: это
артефакт аудита.

## Оценка качества и пороги регрессии

Omniflow поставляется с наборами оценки для предложенных ответов, маркетинговых
текстов, анализа злоупотреблений и перевода. Они существуют, чтобы ответить на
вопрос, на который нельзя ответить чтением кода: **стало ли поведение хуже?**
Изменение промпта, смена модели или смена провайдера — каждое из этих событий
способно ухудшить ответ, не сломав ни одного теста.

Безопасными для поставки эти наборы делают два свойства.

**Каждый случай доказуемо синтетический.** Текст каждого случая при загрузке
пропускается через продакшен-редактор, и случай, содержащий хоть что-то, что тот
вырезал бы, отклоняется. Набор оценки — ровно такой файл, в котором рано или
поздно оседает настоящее обращение, вставленное кем-то при отладке, а обещание в
README этого не переживает.

**Каждое ожидание — это свойство, а не эталонная строка.** «Ссылается на
источник, который ему дали», «укладывается в лимит Telegram», «не обещает
возврат» — такие ожидания переживают модель, формулирующую иначе. Фикстура с
ожидаемым выводом падает на первом же перефразировании и удаляется в течение
месяца.

### Пороги

| Измерение | Нижняя граница | Почему |
| - | - | - |
| Обоснованность | 1.0 | Ответ, построенный на пустом месте, — не компромисс по качеству |
| Корректность цитат | 1.0 | Выдуманная цитата означает выдуманное утверждение |
| Небезопасные советы | 1.0 | Дойти до клиента один раз — уже на один раз больше |
| Ограничения | 1.0 | Сломанная переменная или сообщение сверх длины ломают отправку |
| Отказ | 1.0 | У функции, отвечающей на то, в чём должна отказать, нет порога, который стоило бы задавать |
| Правильность | 0.9 | Формулировки различаются |
| Тон | 0.8 | Порог, который никто не может выдержать, скорее понизят, чем достигнут |

Измерение, которое набор не проверяет, даёт **ни регрессии, ни уверенности**.
Оно отмечается как непроверенное, потому что смешение «мы проверили, и всё было
в порядке» с «мы никогда не проверяли» — это то, как заслон перестаёт быть
заслоном.

> [!NOTE]
>
> Сегодня прогоны оценки запускаются вручную. Автоматический запуск тратил бы
> ваш бюджет у настроенного вами провайдера, никого не спросив.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.