Narzędzia agentowe dla agentów AI 3CX

Wprowadzenie

Narzędzia agentowe umożliwiają agentom interakcję z centralą PBX i osobami dzwoniącymi, wykonując funkcje takie jak przełączanie połączeń i pobieranie informacji. W tym dokumencie wymieniamy narzędzia dostępne dla każdego typu agenta wraz z ich funkcjami.

Podstawy użytkowania i formatowania

Prompty agenta AI 3CX wykorzystują składnię Mustache. Ta sekcja zawiera omówienie tej składni. Zrozumienie tych zasad zapewnia dokładną integrację narzędzi agentowych z promptami agenta AI 3CX.

  • Zmienne są wywoływane przy użyciu składni Mustache poprzez umieszczenie identyfikatora w nawiasach klamrowych.
  • {{...}} lub {{{...}}}  -> (bez #, ^ lub /) wyświetla surową zawartość zmiennej bezpośrednio w tym miejscu (bez konwersji znaków specjalnych HTML).
  • Możemy zamknąć sekcję promptu w bloku; treść zostanie wygenerowana w końcowym tekście promptu tylko wtedy, gdy zmienna przejdzie test.
  • Mamy opcję wykonania testu pozytywnego:
  • {{#...}} -> blok otwiera się tylko wtedy, gdy zmienna ma zawartość lub ma wartość TRUE.
  • {{/…}} -> zamknięcie bloku.
  • lub testu negatywnego:
  • {{^...}} -> blok otwiera się tylko wtedy, gdy zmienna jest pusta lub ma wartość FALSE.
  • {{/…}} -> zamknięcie bloku.
  • Narzędzia agentowe mogą być „wywoływane” po nazwie, ale agent AI uruchamia je wtedy, gdy uzna, że są potrzebne.

Poniżej znajdują się dwa przykłady, z których oba wykorzystują miejsca docelowe przekierowania „Route By Topic” (Kieruj według tematu), które definiujesz w zakładce „Call Routing” (Routing połączeń) agenta AI 3CX.

W naszych przykładach użyjemy:

  • zmiennej addressbook_topics – ta zmienna zawiera wszystkie skonfigurowane wpisy „Route by Topic”; jest ona wypełniana tematami przy każdym (re)starcie agenta; pełni funkcję zmiennej systemowej.
  • narzędzia get_addressbook – narzędzie agentowe, które pobiera skonfigurowane wpisy tematów na żądanie.
  • narzędzia resolve_handoff_destination – narzędzie agentowe, które rozpoznaje prośby sformułowane w języku naturalnym i dopasowuje je do miejsc docelowych (numerów wewnętrznych).

Przykład 1

Narzędzia agentowe mogą być wymienione w głównym prompcie wraz ze wskazówkami dla agenta AI dotyczącymi ich użycia, co pozwala mu swobodnie decydować, kiedy je wywołać.

If the caller asks for a department or makes a question about a problem first use get_addressbook to check if there are topics related to the question, and use resolve_handoff_destination right away, do not answer informatively first.

W powyższym przykładzie, ten dodatek do promptu poinformuje model AI, jakie narzędzia są dostępne, a następnie pozwoli mu zdecydować, czy powinny zostać wywołane. Powyższy tekst zawsze będzie istniał w końcowym, przetworzonym prompcie, niezależnie od tego, czy ustawiono jakiekolwiek tematy.

Przykład 2

Możesz również użyć składni Mustache, aby dodać podstawową logikę do konstrukcji promptu, pomijając elementy, gdy nie są potrzebne; może to skutkować bardziej zwartym lub przejrzystym promptem końcowym.

{{#addressbook_topics}}

If the caller asks for a department or makes a question about a problem check if there are topics related to the question in the following list:

{{addressbook_topics}}

and use resolve_handoff_destination right away, do not answer informatively first.

{{/addressbook_topics}}

 

{{^addressbook_topics}}

Use resolve_handoff_destination right away, do not answer informatively first.

{{/addressbook_topics}}

W tym przykładzie:

  • Najpierw sprawdzasz, czy addressbook_topics są ustawione/istnieją, a jeśli tak,
  • wyświetlasz listę tych tematów w prompcie, aby agent AI mógł
  • użyć narzędzia resolve_handoff_destination do znalezienia najlepszego miejsca docelowego dla połączenia, biorąc pod uwagę listę tematów (oraz swoją wiedzę o Twoich działach i numerach wewnętrznych użytkowników/systemowych).
  • Następnie, jeśli addressbook_topics nie są ustawione,
  • nie „zanieczyszczasz” promptu dodatkowym tekstem i pustą listą, zamiast tego prosisz go o
  • użycie narzędzia resolve_handoff_destination do znalezienia najlepszego miejsca docelowego dla połączenia na podstawie jego wiedzy o Twoich działach i numerach wewnętrznych użytkowników/systemowych.

W centrali PBX, gdzie skonfigurowano jeden temat: „For any electrical issues: 106”, powyższa definicja promptu wygenerowałaby następujący końcowy tekst dla agenta AI:

If the caller asks for a department or makes a question about a problem check if there are topics related to the question in the following list:

- For any elecrical issues

and use resolve_handoff_destination right away, do not answer informatively first.

Należy zauważyć, że agenci AI posiadają już wiedzę o tych narzędziach i ich możliwościach. W standardowym połączeniu przy użyciu domyślnych promptów, agent może z nich korzystać bez wyraźnych instrukcji. Jeśli jednak chcesz wpłynąć na zachowanie agenta lub wymusić ścisłą sekwencję wykonywania działań, możesz poinstruować go do bezpośredniego wywoływania narzędzi wewnątrz promptu, jak pokazano powyżej.

Narzędzia agentowe na czacie

Prompt agenta AI jest wspólny dla każdego agenta, niezależnie od kanału komunikacji – głosowego lub tekstowego/czatu. Poniższe opisy narzędzi koncentrują się na kanale głosowym i w większości przypadków będą działać identycznie również na czacie.

Niektóre narzędzia wykonujące routing połączeń głosowych, takie jak przekierowanie na pocztę głosową, oczywiście nie będą działać w komunikacji tekstowej, a inne będą wykonywać swoje akcje nieco inaczej, ale w ramach poniższej specyfikacji.

Narzędzia agentowe według typu agenta

Nazwa narzędzia

Funkcja

Dostępność narzędzi wg roli

Recepcjonista

Osobisty asystent

Obsługa klienta (U10)

classify_request_before_handoff

Pozwala na odróżnienie scenariuszy przerywania, powiadamiania i blokowania w przepływach pracy osobistego asystenta. Gdy dzwoniący nie jest szefem asystenta, przechowuje klasyfikację połączenia, aby agent mógł zdecydować, jak postąpić.

Nie

Tak

Nie

drop_call

Pozwala asystentowi zakończyć rozmowę.

Tak

Tak

Tak

find_contact_by_extension

Pobiera informacje o konkretnym numerze wewnętrznym.

Tak

Tak

Tak

get_addressbook

Ładuje listę „Route by Topic”, pozwalając agentowi AI na używanie jej elementów w rozmowie, jak również na wybieranie miejsc docelowych.

Tak

Tak

Tak

get_current_datetime

Zwraca bieżącą datę i godzinę zarówno w czasie UTC, jak i lokalnym czasie systemowym.

Tak

Tak

Tak

perform_chat

Rozpoczyna proces kończenia połączenia poprzez powiadomienie odpowiedniego miejsca docelowego wiadomością na czacie.

Tak

Tak

Tak

perform_email

Rozpoczyna proces kończenia połączenia poprzez powiadomienie odpowiedniego miejsca docelowego wiadomością e-mail.

Tak

Tak

Tak

perform_transfer

Rozpoczyna proces kończenia połączenia poprzez przełączenie rozmowy do odpowiedniego miejsca docelowego.

Tak

Tak

Tak

perform_voicemail

Rozpoczyna proces kończenia połączenia poprzez przełączenie rozmowy na pocztę głosową odpowiedniego miejsca docelowego.

Tak

Tak

Tak

resolve_handoff_destination

Rozstrzyga prośbę dzwoniącego o przekazanie połączenia, korzystając z wyszukiwania tekstowego wśród wszystkich dozwolonych punktów końcowych (endpoints) przełączania.

Tak

Nie

Tak

set_detected_language

Pozwala asystentowi zapamiętać wykryty język dzwoniącego i używać go w kolejnych interakcjach.

Tak

Tak

Tak

spam_detected

Rejestruje, że bieżące połączenie zostało zidentyfikowane jako spam.

Tak

Tak

Tak

take_handoff_decision

Rejestruje zamierzony typ przekazania (handoff) i numer wewnętrzny.

Tak

Tak

Tak

take_hostility_action

Rejestruje, że dzwoniący zachowuje się w sposób wrogi lub obelżywy.

Tak

Tak

Tak

take_not_collaborative_action

Rejestruje, że dzwoniący nie chce współpracować z asystentem.

Tak

Tak

Tak

vector_store_search

Pozwala asystentowi pobierać informacje ze skonfigurowanych magazynów wektorowych (vector stores) i indeksowanych dokumentów.

Tak

Tak

Tak

Narzędzia agentowe – dane wejściowe i wyniki (input/output)

Nazwa narzędzia

Input

Output

Wymagania

classify_request_before_handoff

Dostępne klasyfikacje:

  • notify (Domyślne)
  • interrupt
  • block

Potwierdzenie zapisania klasyfikacji.

drop_call

Brak

Wynik zwrócony przez podsystem kończenia połączeń.

find_contact_by_extension

Numer wewnętrzny, np. 100.

Tabela katalogu poprzedzona statusem rozstrzygnięcia.

Resolution: exact_contact

ext|name|department|available|can_receive_email

100|John Smith|Sales|true|true

get_addressbook

Brak

Lista zawierająca wszystkie skonfigurowane tematy.

  • Topic 1
  • Topic 2 ...

get_current_datetime

Brak

Ciąg znaków zawierający:

  • Bieżący znacznik czasu UTC
  • Bieżący lokalny znacznik czasu
  • Nazwę lokalnej strefy czasowej

perform_chat

Brak (Używa istniejących informacji o kontekście połączenia poprzez drugorzędne, nieujawnione narzędzia).

Potwierdzenie zarejestrowania decyzji o czacie.

PA postępuje zgodnie z zasadami powiadamiania (notify), inni domyślnie wybierają „available”.

perform_email

Brak (Używa istniejących informacji o kontekście połączenia poprzez drugorzędne, nieujawnione narzędzia).

Potwierdzenie zarejestrowania decyzji o wiadomości e-mail.

Miejsce docelowe musi być uprawnione do odbierania wiadomości e-mail. PA postępuje zgodnie z zasadami „notify”, inni domyślnie wybierają „available”.

perform_transfer

Brak (Używa istniejących informacji o kontekście połączenia poprzez drugorzędne, nieujawnione narzędzia).

Potwierdzenie zarejestrowania decyzji o przełączeniu.

PA postępuje zgodnie z zasadami „notify”, inni domyślnie wybierają „available”.

perform_voicemail

Brak (Używa istniejących informacji o kontekście połączenia poprzez drugorzędne, nieujawnione narzędzia).

Potwierdzenie zarejestrowania decyzji o poczcie głosowej.

PA postępuje zgodnie z zasadami „notify”, inni domyślnie wybierają „available”.

resolve_handoff_destination

destination – tekstowe określenie miejsca docelowego podane przez dzwoniącego.

Może zwrócić: exact_contact, multiple_contacts, no_contact.

Wymaga:

allowed_search=True

Resolution: exact_contact

ext|name|department|available|can_receive_email

801|Sales Team|Sales|true|false

set_detected_language

language – nazwa wykrytego języka.

Potwierdzenie zapisania języka.

Wymaga:

switch_language=True

spam_detected

reason – wyjaśnienie, dlaczego połączenie zostało sklasyfikowane jako spam.

Potwierdzenie zarejestrowania sygnału o spamie.

take_handoff_decision

kind – transfer, poczta głosowa, czat, e-mail.

destination – numer wewnętrzny.

Potwierdzenie zarejestrowania decyzji o przekazaniu (handoff).

take_hostility_action

reason – wyjaśnienie wykrytego wrogiego zachowania.

Potwierdzenie zarejestrowania sygnału o wrogości.

take_not_collaborative_action

reason – wyjaśnienie wykrytego zachowania.

Potwierdzenie zarejestrowania sygnału o braku współpracy.

vector_store_search

vs_id – identyfikator magazynu wektorowego (vector store).

query – zapytanie.

top_k – maksymalna liczba wyników do zwrócenia.

Istotne wyniki pobrane z określonego magazynu wektorowego.

Wymaga jednego lub więcej skonfigurowanych magazynów wektorowych (vector stores).

Zobacz również


Ostatnia aktualizacja
Ten dokument został ostatnio zaktualizowany 5 sierpnia 2026 r.
https://www.3cx.pl/docs/agentic-ai-tools/