Zaawansowany Asystent AI zintegrowany z systemem
Wprowadzenie
W ramach mojej pracy nad projektem Statlook Web, wdrożyłem od podstaw zaawansowanego Asystenta AI, który został zintegrowany z głównymi funkcjami aplikacji. Celem projektu było zwiększenie produktywności użytkowników poprzez automatyzację zadań i dostarczanie inteligentnych odpowiedzi w oparciu o kontekst ich aktualnej pracy. Stworzyłem również dedykowany moduł ustawień, który pozwala na elastyczną konfigurację i personalizację działania asystenta.
Kluczowe funkcjonalności
-
Kontekstowy Asystent AI: Głównym elementem projektu jest interaktywny asystent dostępny w całej aplikacji.
- Świadomość kontekstu: Asystent rozumie, w której części aplikacji znajduje się użytkownik. Analizuje dane, takie jak otwarte widoki, zaznaczone elementy czy aktywne filtry, aby udzielać precyzyjnych i trafnych odpowiedzi. W tym celu zaimplementowałem AiAssistantContextFactoryService, który dynamicznie buduje kontekst przekazywany do modelu językowego.
- Interaktywny czat: Użytkownicy mogą prowadzić rozmowę z asystentem w intuicyjnym interfejsie czatu, zadając pytania w języku naturalnym.
- Predefiniowane akcje: W celu ułatwienia najczęstszych zadań, stworzyłem mechanizm predefiniowanych akcji (AiAssistantPredefinedButtonModeService), które użytkownik może wywołać jednym kliknięciem, bez potrzeby wpisywania zapytań.
-
Moduł Ustawień AI: Aby dać administratorom i użytkownikom pełną kontrolę nad asystentem, stworzyłem rozbudowany panel konfiguracyjny, w którym znajdują się:
- Zarządzanie promptami: Możliwość definiowania i modyfikowania własnych szablonów zapytań (promptów), które mogą być później wykorzystywane przez asystenta. Umożliwia to dostosowanie jego działania do specyficznych potrzeb organizacji.
- Konfiguracja Asystenta: Panel do zarządzania ustawieniami połączenia z API (np. klucze API) oraz wyboru modelu językowego.
Szczegóły techniczne
Całość została zaimplementowana w oparciu o nowoczesne standardy Angulara, z wykorzystaniem komponentów typu standalone oraz serwisów do zarządzania logiką. Komunikacja z API odbywa się poprzez dedykowany serwis AiAssistantApiService, co zapewnia separację logiki i łatwość w utrzymaniu kodu. Szczególny nacisk położyłem na modularność i reużywalność komponentów, co widać w strukturze core_components.
Stack technologiczny:
- Frontend: Angular (standalone components), TypeScript
- Komunikacja: Serwis AiAssistantApiService
- Architektura: Modularność, reużywalność (core_components), silna separacja logiki
Moja rola / Proces
- Byłem odpowiedzialny za cały cykl życia projektu – od analizy wymagań, przez projekt architektury, implementację (zarówno front-end, jak i logikę serwisową), aż po wdrożenie.
- Pracowałem samodzielnie nad stworzeniem Asystenta AI oraz panelu Ustawień AI, dbając o wysoką jakość kodu i zgodność z najlepszymi praktykami.
Podsumowanie
Wprowadzenie Asystenta AI znacząco podniosło wartość użytkową aplikacji, oferując użytkownikom potężne narzędzie do automatyzacji i wsparcia w codziennych zadaniach. Projekt ten jest przykładem moich umiejętności w zakresie tworzenia złożonych, interaktywnych funkcji z wykorzystaniem nowoczesnych technologii i AI.