Problem
Do ludzkiego supportu trafiała bardzo duża liczba zgłoszeń, a znaczna część z nich dotyczyła wciąż tych samych pytań. Zespół wsparcia był przeciążony sprawami, które dało się obsłużyć automatycznie.
Moja rola
Byłem częścią zespołu, który zaprojektował i wdrożył czat. Odpowiadałem za cały frontend i integrację czatu z n8n w React, za architekturę rozwiązania po stronie frontu i backendu oraz za usprawnianie bazy wiedzy, z której korzysta czat.
Co zbudowałem
- Interfejs czatu w React zintegrowany z przepływami n8n, dostępny we wszystkich aplikacjach Landingi.
- Architektura po stronie frontu i backendu: zapisywanie historii rozmów oraz możliwość rozpoczęcia nowego czatu bez kontekstu poprzedniej rozmowy.
- Baza wiedzy czatu oparta na dokumentacji, centrum pomocy, artykułach i historii zgłoszeń, rozwijana tak, żeby odpowiedzi były coraz trafniejsze.
- Przekazanie rozmowy do człowieka, gdy użytkownik o to poprosi albo gdy czat rozpozna, że jest zdenerwowany.
Wyzwania
01 · Odpowiedzi oparte na wiedzy, nie na zgadywaniu
Jakość odpowiedzi zależała przede wszystkim od bazy wiedzy. Tam, gdzie czat się mylił albo odpowiadał zbyt ogólnie, porządkowaliśmy i uzupełnialiśmy jej treści.
02 · Kontekst rozmowy
Historia musi zostać zachowana, ale stary kontekst nie może psuć odpowiedzi na nowy problem. Stąd zapisywanie historii po stronie backendu i osobna możliwość rozpoczęcia czystej rozmowy.
03 · Moment przekazania do człowieka
Czat nie może zatrzymywać kogoś, kto potrzebuje pomocy człowieka. Rozmowa trafia do supportu, gdy użytkownik o to poprosi albo gdy jego wiadomości wskazują na frustrację.
Efekt
- Mniej zgłoszeń trafiających do ludzkiego supportu.
- Szybsze odpowiedzi na powtarzające się pytania.
- Wsparcie dostępne 24 godziny na dobę, także poza godzinami pracy zespołu.
- Czat dostępny we wszystkich aplikacjach Landingi i używany przez wielu użytkowników.


