Powrót do strony głównej

Architektura AI-asystenta dla spotkań: transkrypcja, LLM, integracja

Artykuł opisuje architekturę AI-asystenta do automatyzacji wideokonferencji roboczych. Omówiono kluczowe komponenty: transkrypcja audio za pomocą WhisperX, podłączenie bota przez Playwright, identyfikacja mówców przez analizę wideo, generowanie strukturyzowanych protokołów z wykorzystaniem modeli językowych (LLM) oraz dodatkowe funkcje takie jak RAG i wake word detection.

Jak stworzyć AI-asystenta do automatyzacji spotkań roboczych: kompletny przewodnik
Advertisement 728x90

Architektura asystenta AI do wideokonferencji: od transkrypcji do protokołów

Rozwój asystenta AI do automatyzacji spotkań roboczych wymaga kompleksowego podejścia, łączącego kilka komponentów technologicznych. System musi umieć podłączać się do wideokonferencji, transkrybować mowę, identyfikować mówców i generować ustrukturyzowane protokoły. Taki narzędzie jest szczególnie efektywne dla regularnych spotkań, gdzie pomaga zachować kontekst i automatyzować rutynowe zadania, takie jak tworzenie zadań w Jira na podstawie dyskusji.

Wybór i konfiguracja transkrybatora

Jakość transkrypcji — fundament całego serwisu. Do przetwarzania nagranego audio zaleca się użycie transkrypcji offline za pomocą WhisperX. Ten model zapewnia dobrą jakość dla języka polskiego i obsługuje niestandardowe słowniki, co jest kluczowe dla rozpoznawania terminologii biznesowej.

Kluczowe kroki przy wyborze modelu:

Google AdInline article slot
  • Ocena na podstawie opinii społeczności (WhisperX — częsty wybór).
  • Porównanie z komercyjnymi API (Deepgram, Google Speech Kit) na testowej próbce nagrań.
  • Ręczna weryfikacja transkrypcji do obliczenia metryk WER/CER i analizy typowych błędów.

Do integracji tworzone jest asynchroniczne API, akceptujące plik audio i flagę diarize. Wynik zwracany jest przez task_id.

Przykład danych wyjściowych transkrybatora z diarizacją:

speaker_1 00:00-00:13 witajcie, zebrałem was na godzinne spotkanie, żebyście mi pomogli znaleźć przycisk, który jest wyraźnie opisany w dokumentacji
speaker_2 00:13-00:18 jak ty się uparłeś, na litość boską, otwórz dokumentację

Podłączenie do systemów wideokomunikacji

Do automatycznego dołączania do konferencji potrzebny jest konektor, rozpoznający platformę (Google Meet, Zoom, Teams) na podstawie linku. Implementacja oparta na Playwright pozwala uruchamiać izolowane kontenery z botami, które nagrywają audio i wideo.

Google AdInline article slot

Szczegóły techniczne implementacji:

  • Użycie trybu handle w Playwright do izolacji sesji.
  • Nagrywanie dźwięku i wideo w minimalnej rozdzielczości (np. 800×600) do późniejszego przetwarzania.
  • Uwzględnianie limitów antyfloodowych platform przy masowych połączeniach.

Zarządzanie przez interfejsy i kalendarz

Serwis powinien wspierać kilka punktów wejścia do planowania nagrywania spotkań:

  • Bot Telegram do szybkiego dodawania linków.
  • Panel internetowy z ustawieniami.
  • Automatyczna integracja z kalendarzem roboczym przez parsowanie wiadomości (SMTP/IMAP) z załącznikami ICS lub zaproszeniami tekstowymi.

Harmonogram wysyła linki z kalendarza do API konektora w odpowiednim czasie, zapewniając automatyczne podłączenie bota do zaplanowanych wydarzeń.

Google AdInline article slot

Identyfikacja uczestników spotkania

Po uzyskaniu transkrypcji z diarizacją pojawia się zadanie dopasowania mówców do ich imion. Główna metoda — analiza klatek wideo, gdzie platformy wideo często wyświetlają imię aktywnego uczestnika.

Algorytm identyfikacji:

  • Z wideo, według znaczników czasu mowy mówcy, wyciągane są losowe klatki.
  • Obszar z imieniem wysyłany jest do API OCR (np. Surya OCR).
  • Najczęściej pojawiające się imię na klatkach przypisywane jest mówcy.

Ograniczenie: uczestnicy w pokojach konferencyjnych (gdzie wyświetlane jest jedno imię dla grupy) identyfikowani są jako "mówca z pokoju konferencyjnego". Alternatywne podejście — użycie osadzeń głosowych, ale wymaga przechowywania danych biometrycznych i wiąże się z trudnościami prawnymi.

Generowanie protokołów za pomocą LLM

Transkrybowany tekst przekazywany jest do modelu językowego (np. wdrożonego przez vLLM) do ustrukturyzowania. Prompt konfigurowany jest na structured output, aby model zwracał JSON z kluczowymi punktami dyskusji, decyzjami i zadaniami.

Co jest ważne

  • Jakość transkrypcji bezpośrednio wpływa na działanie wszystkich kolejnych modułów, zwłaszcza LLM.
  • Integracja z kalendarzem pozwala w pełni zautomatyzować proces nagrywania regularnych spotkań.
  • Identyfikacja mówców przez OCR wideo — praktyczna metoda, ale ma ograniczenia dla uczestników grupowych.
  • Architektura oparta na mikrousługach (oddzielne API do transkrypcji, OCR, LLM) zapewnia skalowalność i niezawodność.
  • Bezpieczeństwo danych — krytyczne przy pracy z osadzeniami głosowymi lub integracji RAG z dostępem do historii spotkań.

Uzyskany JSON jest następnie przekształcany w czytelny protokół (HTML, Markdown) lub używany do automatycznego tworzenia zadań w systemach takich jak Jira przez function calling. To zamienia nagranie spotkania w actionable podsumowania.

Dodatkowe możliwości: RAG i Wake Word Detection

Do rozszerzenia funkcjonalności można dodać dwa moduły:

  • Retrieval-Augmented Generation (RAG): pozwala asystentowi odpowiadać na pytania dotyczące historii poprzednich spotkań bez podawania konkretnej daty. Wymaga jasnego systemu uprawnień do dostępu do danych.
  • Wake Word Detection: model w czasie rzeczywistym do aktywacji asystenta komendą głosową podczas spotkania. Pozwala wydawać polecenia ("zapisz na listę zadań") lub zadawać pytania w trakcie dyskusji, z możliwością odczytania odpowiedzi przez TTS w ogólnym czacie.

Podsumowanie

Budowanie asystenta AI do wideokonferencji — to zadanie inżynierskie, łączące przetwarzanie audio, wizję komputerową, LLM i integrację z zewnętrznymi API. Proponowana architektura jest modułowa i pozwala zaczynać od podstawowej transkrypcji, stopniowo dodając identyfikację mówców, generowanie protokołów i funkcje interaktywne. Sukces zależy od precyzyjnej konfiguracji każdego komponentu i uwzględnienia wymagań dotyczących wydajności i bezpieczeństwa danych.

— Editorial Team

Advertisement 728x90

Czytaj dalej