Мультиарендність — це справжня проблема платформ для агентів

Більшість демо-версій агентів працюють тому, що вони розраховані лише на одного користувача.

Один користувач означає одне сховище пам'яті, один набір інструментів і один «щасливий шлях» (happy path). Тут немає чого розділяти.

Коли ви перетворюєте демо на платформу, найскладнішим є не промпти. Найскладнішим є ізоляція.

Чи може кожен запит до бази даних, ключ кешу, потік, виклик інструменту та пошук у пам'яті підтвердити, якому саме арендарю (tenant) він належить? Якщо хоча б один із них не може цього зробити, ви ризикуєте отримати витік даних.

Багато команд зосереджуються на виборі моделі або якості пам'яті. Вони забувають запитати, чи відокремлені дані та витрати одного арендаря від іншого.

Ізоляція — це не завдання, яке додають наприкінці. Це сама архітектура вашої платформи.

Щоб побудувати справжню платформу для агентів, зверніть увагу на такі механізми:

  • Типізований контекст запиту, що передається в граф.
  • Обмежений доступ (scoped access) на кожній межі.
  • Тести, які виявляють витоки даних між арендарями до того, як вони стануть інцидентами.

Агент для одного користувача може виглядати вражаюче, ігноруючи при цьому безпеку. Він може викликати інструмент пошуку без фільтра арендаря або зберігати історію під простим ID. Це працює для демо, але не працює для платформи.

У платформі агент має зберігати межу на кожному етапі. Якщо агент втратить цю межу, він може надати ідеальну відповідь не тій людині. Це провал.

Кожна операція, що стосується даних, інструментів або пам'яті, повинна мати обмеження за арендарем (scoped by tenant) ще до того, як модель почне діяти. Це стандартна безпека бекенду, застосована до середовища виконання (runtime) агента.

Практичні кроки для вашої архітектури:

  • Використовуйте єдиний об'єкт RequestContext замість розрізнених параметрів.
  • Зробіть так, щоб кожна межа або приймала контекст, або видавала помилку.
  • Фільтруйте каталоги інструментів до того, як модель отримає до них доступ.
  • Використовуйте векторну фільтрацію як обов'язкову частину авторизації.
  • Переконайтеся, що трасування та логи використовують непрозорі (opaque) теги арендарів замість конфіденційних даних.

Не просіть модель пам'ятати арендаря за вас. Модель може міркувати над даними, але вона ніколи не повинна вирішувати, кому ці дані належать.

Зробіть шлях із обмеженням доступу найпростішим шляхом. Якщо ви побудуєте платформу навколо моделі для одного користувача, вам доведеться повністю переписувати її в той день, коли до вас приєднається перша реальна організація.

Почніть із трасування одного потоку агента. Простежте контекст арендаря від HTTP-запиту до фінального виклику інструменту. Позначте кожне місце, де цей контекст копіюється або втрачається. Саме в цій схемі криється ваш реальний ризик.

Source: https://dev.to/luffy_14/multi-tenancy-is-the-real-agent-platform-problem-1dh2

Optional learning community: https://t.me/GyaanSetuAi