
Dev
Як дати ШІ-агенту базу клієнтів і не сказати йому, хто ваші клієнти
Dev.toUnited States · NORTH AMERICA
Кожен бізнес, який пробує ШІ-агентів, упирається в ту саму стіну. Найкорисніші питання стосуються ваших власних даних. Хто з клієнтів винен більше місяця? Хто чекає на відповідь? На що найчастіше скар...
Кожен бізнес, який пробує ШІ-агентів, упирається в ту саму стіну.
Найкорисніші питання стосуються ваших власних даних. Хто з клієнтів винен більше місяця? Хто чекає на відповідь? На що найчастіше скаржаться? Щоб відповісти, агенту потрібні база клієнтів, рахунки, пошта.
А саме це не можна віддати хмарній моделі: імена, e-mail, телефони, номери рахунків — особисті дані людей, які на це не погоджувались. Тож або не питаєте, або вставляєте дані й сподіваєтесь на краще.
Я роблю Aura — десктоп-застосунок, який дає ШІ-інструментам пам'ять і дані, що лишаються на вашому комп'ютері. Мені потрібен був третій варіант, і я його перевірив.
Як я перевіряв: правила й межу «пройшов / не пройшов» кожного тесту записував до запуску, а провали так і показую як провали. Де існував публічний тестовий набір, брав його.
Ідея: агент бачить мітки, ви бачите імена
Перш ніж агент торкнеться таблиці, Aura робить локальну копію, де кожне ім'я, e-mail, телефон і номер рахунку замінено сталою міткою:
| Що є у вас | Що бачить агент |
|---|---|
| Олена Петренко, [email protected], винна 12 000 | name_1, email_1, винна 12 000 |
| «Дзвонив пану Ковальському, просить рахунок на [email protected]» | «Дзвонив name_2, просить рахунок на email_2» |
Та сама людина завжди отримує ту саму мітку, тож агент і далі рахує, групує, поєднує таблиці й простежує клієнта між рядками. Коли ви просите сам список («дай мені боржників»), результат записується у файл на вашому комп'ютері вже зі справжніми іменами. Агент дізнається лише назву файлу.
Очевидне питання: чи не гірше працює ШІ, коли не бачить імен?
Чи гірше працює ШІ? Майже ні
Я взяв BIRD — публічний тест, де ШІ пише SQL-запити до справжніх баз даних: 179 питань, 4 бази, запити пише gemini-3.8-flash від Google.
| Агент бачить | Правильних відповідей | Імен, e-mail і номерів, що потрапили в хмару |
|---|---|---|
| Справжні дані | 68.2% | 849 |
| Мітки замість імен (Aura) | 67.6% | 0 |
| Лише структуру таблиць, без рядків | 65.9% | 0 |
| Малу локальну модель, нічого не надсилаючи | 35.2% | 0 |
Різниця з повним доступом — 0.6 пункту, у межах похибки. З іншою моделлю те саме (Qwen: 67.0% з мітками проти 64.8% зі справжніми даними). А очевидна альтернатива «усе локально» значно гірша: мала модель на вашому комп'ютері дала вдвічі менше правильних відповідей.
Найважче — текст
Таблиці — легкий випадок: колонка «Ім'я» — це ім'я. Але справжні бізнес-дані — переважно текст: нотатки, коментарі, тексти листів. Ім'я може стояти будь-де, будь-якою мовою, у будь-якому відмінку.
Стандартна відповідь — маленька ШІ-модель, що знаходить особисті дані в тексті. Мені потрібна була така, що працює на звичайному офісному ПК, тож нічого на гігабайти. Я перевірив чотири найлегші багатомовні моделі на публічних тестах 21 мовою (судові рішення, юридичні тексти ЄС, синтетичні фінансові документи).
Жодна не впоралась сама. Найкраща знаходила 69–78% людей. Приблизно кожне четверте ім'я пішло б у хмару.
Спрацювало те, що шлюз уже знає: кому належить текст. У листа є відправник і отримувачі. Нотатка стоїть у рядку конкретного клієнта. Їхні імена, адреси й номери відомі, тож їх можна надійно знайти в тексті в будь-якій формі («Ковальського» для Ковальського, «Mr Benham» для Stephen Andrew Benham), без словників для будь-якої мови. Моделі лишається ловити лише сторонніх людей, згаданих мимохідь.
| Текст | Сховано людей |
|---|---|
| Фінансові документи, 7 мов | 95% |
| Судові рішення | близько 95% людей з іменем у тексті (82% усіх згадок; решта — голі ініціали на кшталт «A.», які суд уже анонімізував) |
| Юридичні тексти ЄС 21 мовою, де більшості людей немає в жодному записі | 55% |
Потім я перевірив усе на 85 справжніх листах зі своєї скриньки. Aura сховала кожного відправника й отримувача і ще понад 750 імен, адрес, номерів і посилань у текстах листів. Потім вона перевірила сама себе: шукала в копії для агента кожне з 254 значень, які сховала. Жодного повного імені, адреси чи номера не лишилось. Лишилось три окремі слова (місто, ім'я без прізвища).
Ця перевірка тепер іде після кожного завантаження. Вона вбудована в застосунок, тож вірити мені на слово не треба.
Чого це не робить
Хочу бути точним, бо обіцянки про приватність легко перебільшити.
- Це псевдонімізація, а не анонімність. Агент бачить зміст: теми, суми, дати, назви компаній. Якщо людину видає сам зміст («директор нашого найбільшого клієнта»), мітки цього не сховають.
- У вільному тексті покриття залежить від того, що у вас є. Найвище — коли згадані люди є у ваших даних, нижче — для сторонніх. Окремі слова, як-от ім'я без прізвища чи місто, можуть лишитися.
- Імена в іншій абетці не зв'язуються. Запис кирилицею не збіжеться з підписом латиницею; спіймати таке може лише модель (за бажанням).
Спробувати
Aura для Windows безкоштовна: aurasdk.dev/desktop. У вкладці «Дані» дві зони:
- «Завантажити» — агент бачить файл як є. Для документів, за які ви не переживаєте.
- «Безпечне завантаження» — імена, контакти й номери замінюються мітками, зокрема всередині листів і нотаток, а копія перевіряється.
Підтримуються Excel, CSV, SQLite і пошта (.eml, .mbox з Gmail, Thunderbird чи Apple Mail). Одна кнопка підключає Claude Code, Claude Desktop, Cursor та інших агентів. Модель за бажанням (близько 380 МБ, завантажується лише якщо ввімкнути) ховає й людей, яких немає у ваших даних. Усе працює на вашому комп'ютері.
Це рання версія. Якщо ви працюєте з даними клієнтів і хотіли б ШІ на них, мені дуже цікаво, чи розв'язує це вашу проблему і чого бракує.
