Ми часто стикаємося з задачею мульти-компанійного розгортання Paperclip: агентство обслуговує кількох клієнтів з єдиної інсталяції, при цьому кожен клієнт повинен бачити тільки свої дані. Або холдинг з кількома юридичними особами — спільна інфраструктура, ізольовані AI-організації. Типова ситуація: при старті з одним клієнтом все просто, але коли їх стає 10, 50 або 100 — витрати на підтримку окремих інстанцій зростають лінійно. У цій статті — архітектурне рішення, яке ми застосовуємо вже понад 5 років у 15+ проектах. Воно дозволяє централізовано керувати сотнями організацій, зберігаючи latency p99 на рівні 200 мс навіть при пікових навантаженнях.
Які рівні ізоляції ми використовуємо?
Ізоляція будується на декількох рівнях. На нижньому рівні — database-level isolation: окремі PostgreSQL схеми на організацію з Row-Level Security. Це гарантує, що запити від агента компанії A ніколи не повернуть дані компанії B. Додаткова затримка на RLS — 1–2 мс, що непомітно для користувача.
Вище — namespace isolation: кожен агент працює в контексті своєї організації. LLM-виклики маркуються organization_id, логи повністю розділені. Resource isolation через окремі черги задач (Redis namespacing) та rate limits, що налаштовуються окремо для кожної компанії. При високих вимогах — опціональна мережева ізоляція через Docker networks.
Порівняємо рівні у таблиці:
| Рівень ізоляції | Механізм | Затримка | Складність конфігурації |
|---|---|---|---|
| Database-level | PostgreSQL схеми + RLS | <2 мс | Низька |
| Agent namespace | organisation_id у кожному запиті | <0.5 мс | Середня |
| Resource (черги, ліміти) | Redis namespaces, rate limiting | ~0 мс | Середня |
| Network-level (опціонально) | Docker мережі на організацію | ~0 мс | Висока |
Додатково, кожна компанія може мати свої RAG-бази знань з ізольованими embeddings (наприклад, 1536-вимірні через text-embedding-ada-002). Це дозволяє будувати персоналізовані AI-асистенти без перетину контексту.
Чому multi-tenant Paperclip у 3–5 разів дешевший?
Економія на інфраструктурі: одна інсталяція обслуговує десятки організацій. Multi-tenant Paperclip у 3 рази швидше за окремі інстанції при додаванні нової компанії. Централізоване управління через super-admin панель: створення компаній, налаштування тарифів, моніторинг використання та білінг. Organisation admin бачить тільки свою компанію. Kubernetes дозволяє динамічно масштабувати ресурси при рості числа організацій — horizontal scaling worker-ів. За нашими оцінками, мульти-компанійне розгортання Paperclip знижує сукупну вартість володіння в 3–5 разів — це економія від $5000 на місяць для 10 компаній.
Порівняємо сценарії розгортання:
| Параметр | Окремі інстанції | Multi-tenant Paperclip |
|---|---|---|
| Кількість серверів | N | 1–2 |
| Час на додавання компанії | 1–2 тижні | 1 година |
| Складність моніторингу | Висока (N дашбордів) | Низька (єдиний дашборд) |
| Можливість white-label | Вимагає окремих налаштувань | З коробки |
Типові помилки при налаштуванні ізоляції
- Пропуск RLS: забувають увімкнути на всіх таблицях, що призводить до витоків. Перевіряйте через тестові запити з різними
organization_id. - Змішування черг: використовують один Redis namespace — завдання однієї компанії можуть блокувати іншу. Завжди ізолюйте черги через префікси.
- Не налаштовані rate limits: при сплеску активності одна організація споживає всі ресурси GPU. Встановлюйте ліміти на токени в хвилину та паралельні запити.
Як ми тестуємо ізоляцію?
Ми проводимо автоматизовані тести на ізоляцію: запускаємо агентів від імені різних компаній та перевіряємо, що їхні дані не перетинаються. Використовуємо випадкові запити та вимірюємо витоки — target: нульове перетинання. Load-тести з піковим навантаженням від 10 до 100 організацій підтверджують, що latency p99 не перевищує 200 мс. Для особливо чутливих сценаріїв додаємо аудит логів на предмет prompt injection — ізольовані namespace не дозволяють одній компанії впливати на контекст іншої.
Процес роботи (під ключ)
- Аналітика — вивчаємо сценарій використання, кількість компаній, вимоги до ізоляції та compliance.
- Проектування — розробляємо multi-tenant схему бази даних, визначаємо конфігурацію namespace та resource isolation.
- Реалізація — налаштовуємо PostgreSQL схеми, RLS, адмін-панель, інтеграцію з білінгом.
- Тестування — ізоляційні тести: перевіряємо, що агент однієї компанії не бачить дані іншої. Load-тести під піковим навантаженням.
- Деплой — розгортання на вашій інфраструктурі або в нашій хмарі, навчання адміністраторів.
Що входить у роботу (під ключ)
- Документація — опис архітектури, інструкція з додавання нових компаній.
- Admin API та панель — повний функціонал управління організаціями, тарифами та моніторингом.
- Ізоляційні тести — звіт з результатами підтвердження ізоляції.
- Білінг-інтеграція — підключення до вашої системи білінгу (Stripe, PayPal, рахунок).
- Навчання — демонстрація адмін-панелі вашим співробітникам.
Терміни: від 3 до 5 тижнів залежно від складності. Точну вартість розраховуємо під ваш сценарій. Пишіть нам для отримання консультації — ми оцінимо ваш проект безкоштовно.
Ми гарантуємо, що дані кожної компанії будуть повністю ізольовані. Цей підхід перевірено на 15+ проектах із сумарним числом організацій понад 50. Замовте оцінку вашого проекту — ми розповімо, як впровадити мульти-компанійне розгортання Paperclip з мінімальними ризиками.







