---
Przejrzystość w dopasowaniach tagami: jak to osiągnęliśmy
Niedawno w naszym czacie Slack wybuchła dyskusja wśród członków zespołu na temat tego, jak użytkownicy rozumieją dopasowania tagami. Jeden z programistów przedstawił skargę od klienta, który nie mógł zrozumieć, dlaczego jego CV nie pasowało do oferty pracy, mimo że miał podobne umiejętności. To skłoniło nas do refleksji: jak możemy sprawić, by użytkownicy lepiej rozumieli, dlaczego algorytm podjął takie, a nie inne decyzje?
Dlaczego to ważne
Problem dopasowań tagami dotyczy wszystkich: od użytkowników szukających pracy, po firmy, które chcą znaleźć odpowiednich kandydatów. Niezrozumienie działania algorytmów może prowadzić do niezadowolenia użytkowników i w konsekwencji do spadku zaufania do naszej platformy. W warunkach silnej konkurencji na rynku rekrutacyjnym może to stać się decydującym czynnikiem w wyborze między nami a innymi rozwiązaniami. Jeśli użytkownicy nie będą w stanie zrozumieć, jak działa system, mogą po prostu odejść do konkurencji.
Konkretne problemy
W jednym z przypadków użytkownik złożył aplikację na stanowisko, ale nie otrzymał pozytywnej odpowiedzi. Zwrócił się do nas z pytaniem, dlaczego jego CV nie pasowało do wymagań. Dowiedzieliśmy się, że dopasowanie tagami opierało się na algorytmach, które nie wyjaśniały, jak dokładnie zostały wybrane tagi. To doprowadziło do niezadowolenia i ostatecznie do pogorszenia doświadczenia użytkownika.
Pierwsze kroki
Na początku postanowiliśmy wprowadzić prosty system informacji zwrotnej, który informowałby użytkowników, jakie dokładnie tagi zostały użyte do dopasowania. Jednak to rozwiązanie okazało się zbyt powierzchowne. Otrzymaliśmy wiele komentarzy, że użytkownicy nie rozumieją, czym są tagi i jak działają. Dlatego wróciliśmy do deski kreślarskiej, aby znaleźć głębsze rozwiązanie.
Techniczne podejście
Postanowiliśmy wprowadzić bardziej zaawansowany system, który nie tylko pokazywałby tagi, ale także wyjaśniał, jak algorytm doszedł do swoich wniosków. Stworzyliśmy model, który analizował dopasowania i generował wyjaśnienia w naturalnym języku. Przykład kodu, który wykorzystaliśmy do tego zadania:
# Przykład kodu do generowania wyjaśnień
class ExplanationGenerator:
def generate(self, matching_tags):
return f