I Built An AI Incident Copilot That Does Not Store Your Logs

Każdy inżynier tak robi.

Coś psuje się na produkcji. Pobierasz logi. Wklejasz je do czatu AI. Prosisz o pomoc. AI udziela dobrej odpowiedzi.

Większość ludzi uważa, że to normalne. Tak nie jest. To ogromne ryzyko bezpieczeństwa.

Logi produkcyjne zawierają wrażliwe dane. Znajdują się w nich identyfikatory klientów, błędy uwierzytelniania, stack trace'y i odpowiedzi API. Czasami zawierają nawet sekrety.

Obecny sposób debugowania polega na wklejaniu prywatnych danych do okna czatu i liczeniu na najlepsze. Chciałem pomocy AI bez ryzyka wycieku danych.

Zbudowałem więc AI Incident Copilota. Trzymałem się jednej zasady: aplikacja musi być użyteczna nawet wtedy, gdy odmawiamy przechowywania Twoich danych.

Aplikacja działa jak AI war room. Wklejasz logi, trace'y lub błędy. Pomaga Ci:

• Podsumować zmiany • Znaleźć punkty awarii • Pogrupować logi generujące szum • Wyjaśnić stack trace'y • Zasugerować kroki mitygacji • Przygotować osie czasu postmortem

Większość programistów buduje aplikacje w ten sposób: Input → Backend → Database → LLM → Database → UI.

To niebezpieczny sposób budowania. Teraz Twoja aplikacja posiada archiwum każdej awarii produkcyjnej. Musisz martwić się o naruszenia bezpieczeństwa, kopie zapasowe i dostęp administratora.

Chciałem prywatnego notatnika, a nie dashboardu SaaS.

Moja zasada projektowa brzmi: Przetwarzaj dane, nie zbieraj ich.

Architektura działa inaczej:

  • Historia czatu zostaje w Twojej przeglądarce.
  • Backend nie zapisuje promptów.
  • Backend nie zapisuje odpowiedzi modelu.
  • Każde zapytanie jest jednorazowe.

Użyłem Icelake AI API, ponieważ pasuje ono do tego modelu prywatności. Serwer wykonuje trzy kroki:

  1. Maskuje wrażliwe wartości.
  2. Wysyła zminimalizowany prompt do API.
  3. Zwraca odpowiedź bez zapisywania zapytania.

Maskowanie pomaga, ale nie jest magiczną tarczą. Nie wyłapie wszystkiego. Prawdziwym sukcesem jest ograniczenie ilości danych, które przechowujesz po zakończeniu zapytania.

Maskowanie obniża ryzyko podczas wywołania. Nieprzechowywanie logów obniża ryzyko na zawsze.

Większość aplikacji AI pyta: Co możemy zebrać? Ta aplikacja pyta: Czego możemy uniknąć zbierania?

To podejście sprawia, że produkt jest lepszy. Użytkownicy czują się bezpiecznie. Są skłonni używać go podczas rzeczywistych incydentów, ponieważ wiedzą, że ich myśli nie są archiwizowane w mojej bazie danych.

Następna fala aplikacji AI nie powinna konkurować jedynie poziomem inteligencji. Powinna konkurować powściągliwością.

Zadaj sobie pytanie: • Czego odmawiasz przechowywać? • Do czego uniemożliwiasz sobie dostęp? • Co znika po zakończeniu sesji?

Narzędzia AI powinny być użyteczne właśnie dlatego, że nie pamiętają wszystkiego.

Źródło: https://dev.to/bart_holden_0d0cf2aaa0424/i-built-an-ai-incident-copilot-that-does-not-store-your-production-logs-3l0p

Opcjonalna społeczność edukacyjna: https://t.me/GyaanSetuAi