Funkcje niestandardowe
Funkcje niestandardowe pozwalają Twojemu botowi AI łączyć się z innymi systemami podczas rozmów na żywo. Zamiast mówić „Sprawdzę to i wrócę z odpowiedzią”, bot może sprawdzić status zamówienia, zweryfikować stan magazynowy lub utworzyć rekord w Twoim systemie CRM (system zarządzania relacjami z klientami – oprogramowanie używane do śledzenia potencjalnych klientów i klientów, takie jak HubSpot lub Salesforce) – wszystko w czasie rzeczywistym, podczas gdy klient czeka.
Funkcje niestandardowe a webhooki
Jest to najczęstszy punkt nieporozumień, więc warto go wyjaśnić, zanim zaczniesz cokolwiek budować.
| Webhooki | Funkcje niestandardowe | |
|---|---|---|
| Kierunek | Jednokierunkowy (wyślij i zapomnij) | Dwukierunkowy (wywołaj i czekaj) |
| Co robi bot | Wysyła powiadomienie, gdy coś się wydarzy, a następnie kontynuuje działanie. | Wywołuje funkcję, wstrzymuje się, czeka na odpowiedź i wykorzystuje otrzymane dane, aby kontynuować rozmowę. |
| Widoczność dla rozmowy | Wynik operacji jest niewidoczny dla bota — bot nigdy nie dowiaduje się, co się stało. | Odpowiedź jest przekazywana bezpośrednio do AI, dzięki czemu bot może ją zacytować, przeanalizować i odpowiedzieć na jej podstawie klientowi. |
| Najlepsze do | Rejestrowania zdarzeń, synchronizacji danych z CRM, wyzwalania zewnętrznych automatyzacji (Zapier, Make, n8n). | Wszystkiego, gdzie bot potrzebuje odpowiedzi, zanim będzie mógł odpowiedzieć — wyszukiwania na żywo, cen w czasie rzeczywistym, generowania treści w locie. |
Kiedy co wybrać: Jeśli musisz tylko poinformować inny system, że coś się wydarzyło, użyj webhooka – jednokierunkowej zautomatyzowanej wiadomości wysyłanej do innego systemu (zobacz Ustawienia → Integracje → Webhooki). Jeśli bot musi dowiedzieć się czegoś z innego systemu przed kontynuowaniem rozmowy, użyj funkcji niestandardowej.
Przykłady tego, co umożliwiają funkcje niestandardowe
Ponieważ odpowiedź wraca do rozmowy, funkcje niestandardowe otwierają możliwości, których webhooki po prostu nie mają:
- Sprawdzanie stanów magazynowych w Shopify lub WooCommerce na żywo — Zanim bot poda cenę klientowi, sprawdza stan magazynowy w czasie rzeczywistym i odpowiada „Tak, mamy 12 sztuk w rozmiarze M” zamiast „sprawdzę to i wrócę z odpowiedzią”.
- Dynamiczne ceny z Arkuszy Google — Twój zespół sprzedaży aktualizuje ceny w arkuszu; bot odczytuje najnowszy wiersz w trakcie rozmowy i podaje aktualną cenę bez konieczności ingerencji w konfigurację AI.
- Agent oddzwaniający Voice-AI — Gdy bot zakwalifikuje potencjalnego klienta, uruchamia agenta głosowego (na przykład dzwoniącego opartego na ElevenLabs), aby oddzwonił do klienta w ciągu kilku minut, i potwierdza klientowi: „świetnie, proszę spodziewać się telefonu w ciągu najbliższych 5 minut”.
- Niestandardowa wycena w PDF, generowana i wysyłana e-mailem w trakcie czatu — Bot zbiera wymagania, wywołuje Twój generator wycen, otrzymuje adres URL do pliku PDF i mówi klientowi: „Właśnie wysłałem wycenę na Twój adres e-mail — sprawdź skrzynkę odbiorczą”.
Co mogą robić funkcje niestandardowe?
Pomyśl o funkcjach niestandardowych jako o nadaniu botowi supermocy wykraczających poza zwykłe czatowanie. Oto przykłady z życia wzięte:
- Śledzenie zamówień - Klient pyta „Gdzie jest moje zamówienie?”, a bot sprawdza Twój system e-commerce i odpowiada, podając status przesyłki oraz link do śledzenia
- Sprawdzanie stanów magazynowych - „Czy macie to w rozmiarze 10?” Bot sprawdza Twój system magazynowy i udziela odpowiedzi w czasie rzeczywistym
- Aktualizacje CRM - Gdy bot zakwalifikuje potencjalnego klienta, automatycznie tworzy lub aktualizuje rekord w HubSpot, Salesforce lub dowolnym innym systemie CRM
- Generowanie wycen - Bot zbiera wymagania klienta i generuje spersonalizowaną wycenę z Twojego systemu cenników
- Rezerwacje - Bot tworzy spotkanie w Twoim zewnętrznym systemie rezerwacji
- Weryfikacja rabatów - „Czy ten kod kuponu jest ważny?” Bot sprawdza i potwierdza
- Wyszukiwanie konta - Powracający klient jest automatycznie rozpoznawany, a szczegóły jego konta są pobierane
Klient nigdy nie widzi tego, co dzieje się za kulisami. Po prostu doświadcza kontaktu z botem, który potrafi odpowiedzieć na jego pytania, korzystając z rzeczywistych, aktualnych informacji.
Jak działają funkcje niestandardowe (wersja uproszczona)
Oto co dzieje się, gdy funkcja niestandardowa jest wyzwalana podczas rozmowy:
- Klient pyta o coś, co wymaga danych w czasie rzeczywistym (np. „Gdzie jest moje zamówienie?”)
- Bot rozpoznaje, że aby odpowiedzieć, musi użyć funkcji niestandardowej
- Bot zbiera wszelkie brakujące informacje od klienta (np. „Jaki jest numer Twojego zamówienia?”)
- Platforma wysyła żądanie do Twojego systemu (Twojej strony internetowej, CRM lub innego narzędzia) z odpowiednimi szczegółami
- Twój system odpowiada danymi (np. statusem zamówienia, numerem śledzenia, datą dostawy)
- Bot odczytuje odpowiedź i tworzy naturalną odpowiedź: „Twoje zamówienie ORD-4582 zostało wysłane i powinno dotrzeć do piątku!”
Ile kosztuje wywołanie funkcji niestandardowej
Każde wywołanie funkcji niestandardowej jest rozliczane zgodnie z poziomem jakości AI Twojego Agenta:
| Poziom jakości AI | Kredyty za wywołanie funkcji niestandardowej | Z podłączonym własnym kluczem Anthropic (BYOK) |
|---|---|---|
| Pro | 1 kredyt | 0 kredytów — działa na Twoim kluczu |
| Economy (przestarzałe) | 0,5 kredytu | 0 kredytów — działa na Twoim kluczu |
| Max | 0,25 kredytu | nadal 0,25 kredytu, naliczane nawet przy podłączonym własnym kluczu, ponieważ Max działa na naszym modelu |
| Mini | 0,15 kredytu | nadal 0,15 kredytu, naliczane nawet przy podłączonym własnym kluczu, ponieważ Mini działa na naszym modelu |
Konfigurowanie funkcji niestandardowej (krok po kroku)
- W głównym pasku bocznym, w sekcji AI Studio, kliknij Custom Functions.
- Kliknij zielony przycisk + Add Function (lub New function) w prawym górnym rogu.
Lista funkcji niestandardowych wyświetla tabelę z następującymi kolumnami:
| Kolumna | Co pokazuje |
|---|---|
| Name | Nazwa funkcji (np. check_order_status) |
| Description | Krótkie podsumowanie działania funkcji (skrócone do 50 znaków w tabeli) |
| Method | Użyta metoda HTTP, pokazana jako kolorowy znacznik: GET (niebieski), POST (zielony), PUT (pomarańczowy), DELETE (czerwony) |
| Created | Data utworzenia funkcji |
Dzięki temu łatwo jest przejrzeć swoje funkcje i szybko znaleźć tę, której potrzebujesz.
Krok 1: Nadaj nazwę i opis
| Pole | Co wpisać | Przykład |
|---|---|---|
| Name | Krótka nazwa używająca liter, cyfr i podkreśleń | check_order_status |
| Description | Wyjaśnij, co robi ta funkcja (AI czyta to, aby zdecydować, kiedy jej użyć) | „Wyszukuje aktualny status zamówienia klienta za pomocą numeru zamówienia” |
| Purpose (AI Action) | Powiedz AI dokładnie, kiedy i jak użyć tej funkcji | „Użyj tego, gdy klient pyta o status zamówienia, wysyłkę lub dostawę. Najpierw poproś o numer zamówienia.” |
Wskazówka: Bądź bardzo precyzyjny w opisie i celu. Im jaśniej określisz, kiedy funkcja powinna być użyta, tym bardziej niezawodnie bot będzie z niej korzystał we właściwym momencie.
Krok 2: Skonfiguruj połączenie
Musisz wskazać aplikacji, gdzie wysłać żądanie:
| Pole | Co wpisać | Przykład |
|---|---|---|
| URL | Adres internetowy punktu końcowego Twojego systemu (konkretny adres w Twoim systemie, który odbiera żądanie i odsyła dane) | https://api.yourstore.com/v1/orders/status |
| Metoda | Typ wysyłanego żądania | Zobacz opcje poniżej |
Którą metodę wybrać:
| Metoda | Kiedy używać |
|---|---|
| GET | Wyszukiwanie informacji (status zamówienia, stan magazynowy, szczegóły konta) |
| POST | Tworzenie nowych rekordów (zgłoszenia do pomocy technicznej, leady, rezerwacje) lub złożone wyszukiwania |
| PUT | Całkowita aktualizacja istniejącego rekordu |
| PATCH | Aktualizacja części istniejącego rekordu |
| DELETE | Usuwanie rekordu |
Jeśli nie masz pewności, której użyć, skonsultuj się z programistą lub sprawdź dokumentację systemu, z którym się łączysz. GET (do wyszukiwania) i POST (do tworzenia rekordów) są najczęściej używane.
Krok 3: Dodaj nagłówki uwierzytelniania
Większość systemów wymaga uwierzytelnienia, aby zaakceptować żądania. Dodaj wszelkie wymagane nagłówki:
| Nagłówek | Przykładowa wartość |
|---|---|
Authorization |
Bearer your-api-key-here |
Content-Type |
application/json |
Wskazówka dotycząca bezpieczeństwa: Używaj dedykowanego klucza API z ograniczonymi uprawnieniami. Nie używaj danych logowania na poziomie administratora.
Gdzie znaleźć klucze API: Sprawdź ustawienia lub sekcję dla programistów w systemie, z którym się łączysz (np. CRM, platforma e-commerce lub narzędzie do rezerwacji).
Krok 4: Zdefiniuj dane wejściowe (co wysyła bot)
Parametry wejściowe to informacje, które bot zbiera podczas rozmowy i wysyła do Twojego systemu.
Dla każdego parametru określasz:
| Właściwość | Co oznacza |
|---|---|
| Nazwa | Nazwa parametru (musi być zgodna z tym, czego oczekuje Twój system) |
| Typ | Rodzaj danych (tekst, liczba, prawda/fałsz itp.) |
| Opis | Poinformuj sztuczną inteligencję, czym są te informacje i gdzie znaleźć je w rozmowie |
| Wymagane | Jeśli ustawiono na Tak, bot poprosi klienta o te informacje przed kontynuowaniem |
Dostępne typy parametrów:
| Typ | Co to oznacza |
|---|---|
| string | Tekst (nazwy, numery zamówień, adresy) |
| number | Wartość liczbowa (ilość, cena) |
| boolean | Prawda lub fałsz (wartości tak/nie) |
| array | Lista elementów. Wysyłana jako rzeczywista lista JSON — w Uruchom test możesz wpisać ją jako [8624], ["a", "b"] lub po prostu oddzielić przecinkami (8624, 8625), a zostanie ona przekonwertowana za Ciebie. Jeśli Twoje API jest rygorystyczne co do zawartości listy — np. tylko liczby — ustaw opcjonalny Typ elementu obok typu, a każda wartość na liście zostanie do niego przekonwertowana. |
| query_param | Tekst wysyłany jako parametr URL zamiast w treści żądania. Użyj tego, gdy Twoje API oczekuje danych w adresie URL (np. ?order_id=123). |
Każdy parametr posiada również opcjonalne pole Ścieżka treści żądania (Request body path). Zazwyczaj parametr jest wysyłany jako pole najwyższego poziomu w treści żądania (lub jako wartość ciągu zapytania dla typu query_param). Jeśli Twój punkt końcowy oczekuje zagnieżdżenia — np. {"order": {"id": "ORD-123"}} — ustaw ścieżkę na order.id, a platforma automatycznie zagnieździ tam wartość.
Przykład: Dla wyszukiwania statusu zamówienia możesz zdefiniować:
- order_number (string, wymagane): „Numer zamówienia klienta. Zazwyczaj zaczyna się od ORD- i następuje po nim ciąg cyfr. Zapytaj klienta o ten numer, jeśli go nie podał.”
- email (string, opcjonalne): „Adres e-mail klienta do dodatkowej weryfikacji. Potrzebny tylko wtedy, gdy sam numer zamówienia nie pozwala na znalezienie dopasowania.”
Co Twój system otrzymuje automatycznie
Oprócz zdefiniowanych przez Ciebie parametrów wejściowych, platforma automatycznie dołącza dane systemowe do każdego żądania. Twój punkt końcowy otrzymuje je w polu system:
| Pole systemowe | Co zawiera |
|---|---|
system.contactId |
Identyfikator platformy kontaktu w konwersacji |
system.campaignId |
Identyfikator kampanii, do której należy konwersacja |
system.userId |
Twój identyfikator użytkownika |
system.channel |
Kanał komunikacji (np. "whatsapp", "instagram") |
system.contact |
Pełny rekord kontaktu (imię, telefon, e-mail, tagi itp.) |
system.campaign |
Konfiguracja kampanii |
system.test |
true jeśli jest to test próbny, false dla konwersacji na żywo |
Jest to przydatne, jeśli Twój system musi zidentyfikować kontakt, sprawdzić, która kampania wywołała funkcję, lub zachowywać się inaczej podczas testów.
Nie potrzebujesz danych systemowych? Włącz przełącznik Pomiń dane systemowe (Skip System Data) w kreatorze funkcji. Bot wyśle wtedy tylko zdefiniowane przez Ciebie parametry wejściowe — bez danych kontaktu czy kampanii. Użyj tego, jeśli Twój punkt końcowy odrzuca nieoczekiwane pola lub po prostu chcesz uzyskać mniejszy ładunek danych (payload).
Krok 5: Przetestuj, a następnie pozwól botowi odczytać odpowiedź
Zazwyczaj nie musisz w ogóle mapować pól odpowiedzi. Gdy Twój punkt końcowy odpowie, bot odczyta całą odpowiedź JSON i użyje Opisu oraz Celu (Działanie AI) Twojej funkcji — wraz z opisem każdego parametru — aby ustalić, co jest istotne i przedstawić to w naturalny sposób. Jasny opis samej funkcji („Pobiera aktualny status zamówienia klienta, w tym informacje o wysyłce i śledzeniu”) wykonuje tutaj więcej pracy niż mapowanie pole po polu.
Jeśli Twój punkt końcowy zwraca dużą odpowiedź, a chcesz, aby bot widział tylko kilka konkretnych wartości, otwórz sekcję Mapowanie odpowiedzi (domyślnie zwiniętą, tuż nad przyciskiem Test). Każdy wiersz wybiera jedno pole najwyższego poziomu z odpowiedzi: Pole odpowiedzi to nazwa pola w odpowiedzi JSON Twojego API, a Pole wyjściowe to nazwa, pod którą bot je otrzymuje. Po wypełnieniu co najmniej jednego wiersza bot otrzyma tylko zmapowane wartości zamiast pełnej treści odpowiedzi. Pozostaw sekcję pustą, aby zachować domyślne zachowanie pełnej odpowiedzi.
Zanim zapiszesz, użyj sekcji Test na dole kreatora, aby wysłać żądanie dokładnie tak, jak zostało skonfigurowane, i zobaczyć rzeczywistą odpowiedź bez opuszczania aplikacji:
Odpowiedź, którą tutaj widzisz, to surowa odpowiedź punktu końcowego. Jeśli powyżej skonfigurowano Mapowanie odpowiedzi, bot w rzeczywistym czacie otrzyma tylko te zmapowane pola — test zawsze pokazuje pełną, surową odpowiedź, aby można było zobaczyć, co jest dostępne do zmapowania. Jeśli coś wygląda nie tak (nieoczekiwane nazwy pól, dodatkowe zagnieżdżenie), popraw to w swoim punkcie końcowym lub dostosuj mapowanie.
Przypisywanie funkcji do agenta
Po utworzeniu funkcji niestandardowej musisz wskazać każdemu agentowi, z jakich funkcji może korzystać:
- Otwórz Agenta w sekcji AI Studio → Agenci AI.
- Przejdź do karty Możliwości AI. (W przypadku kampanii, która nadal posiada własne ustawienia AI bezpośrednio, a nie za pośrednictwem oddzielnego agenta, ta sama lista pojawia się w kroku Możliwości AI danej kampanii).
- Zobaczysz listę wszystkich utworzonych funkcji niestandardowych. Włącz każdą funkcję, której bot tego agenta ma móc używać.
- Kliknij Zapisz zmiany na dole. Wybory zostaną zastosowane dopiero po zapisaniu.
Dla bota danego agenta dostępne są tylko przypisane funkcje. Zapobiega to przypadkowemu użyciu przez bota funkcji, które nie są istotne.
Testowanie funkcji niestandardowych
Przed uruchomieniem przetestuj wszystko dokładnie:
- Uruchom wbudowany test - Użyj sekcji Test wewnątrz kreatora funkcji (patrz wyżej), aby szybko sprawdzić działanie bez opuszczania aplikacji — wpisz realistyczne wartości i kliknij Uruchom test.
- Przetestuj bezpośrednio punkt końcowy swojego systemu - W przypadku pełnej listy kontrolnej poniżej, dedykowane narzędzie takie jak Postman (lub Twój programista) pozwala na głębszą analizę niż pojedynczy test.
- Przetestuj w trybie wypróbowania (Try Out) - Zasymuluj rozmowę, w której klient pyta o coś, co powinno wywołać funkcję.
- Sprawdź odpowiedź - Upewnij się, że bot poprawnie odczytuje i prezentuje dane.
- Przetestuj scenariusze błędów - Co się stanie, jeśli klient poda nieprawidłowy numer zamówienia? Co jeśli Twój system jest tymczasowo niedostępny?
Gdy test zwraca błąd 401 lub 403
Błąd 401 lub 403 oznacza, że Twój punkt końcowy otrzymał żądanie, ale je odrzucił. Wskazówką jest to, że w Twoich logach nic się nie pojawia — większość narzędzi odrzuca nieautoryzowane wywołanie, zanim jeszcze rozpocznie przepływ pracy, więc po Twojej stronie nic nie widać i wygląda to tak, jakby żądanie nigdy nie dotarło.
Prawie zawsze jest to niedopasowanie uwierzytelniania: Twój punkt końcowy wymaga jednego rodzaju poświadczeń, a funkcja wysyła inne. Sprawdź, czy nagłówek dodany w Kroku 3 jest dokładnie tym, którego oczekuje Twój system.
Najczęstszą wersją tego problemu jest webhook chroniony za pomocą Basic Auth (n8n, Make i większość narzędzi hostowanych samodzielnie oferuje to jako pole wyboru w samym webhooku), podczas gdy funkcja wysyła niestandardowy nagłówek z kluczem tajnym, taki jak X-My-Secret. Basic Auth akceptuje tylko nagłówek Authorization, więc niestandardowy nagłówek jest ignorowany, a wywołanie odrzucane. Masz dwie opcje:
- Wyłącz Basic Auth w webhooku i sprawdź swój niestandardowy nagłówek bezpośrednio wewnątrz przepływu pracy.
- Pozostaw włączone Basic Auth i dodaj do funkcji nagłówek
Authorization, którego wartością jest słowoBasic, a po nim Twój zakodowany w base64username:password.
Oba rozwiązania działają — po prostu upewnij się, że obie strony są ze sobą zgodne.
Gdy test zwraca błąd 404
Adres URL punktu końcowego jest nieprawidłowy lub przepływ pracy nie został opublikowany. W przypadku n8n każdy webhook ma oddzielny adres URL Test oraz Production, a ten testowy nasłuchuje tylko wtedy, gdy masz otwarty edytor. Skopiuj adres URL wersji produkcyjnej (Production) i upewnij się, że przepływ pracy jest aktywny.
Wyświetlanie błędów w Try Out i Chats
Gdy sztuczna inteligencja wywołuje funkcję niestandardową podczas rozmowy, a wywołanie kończy się niepowodzeniem — błędne dane uwierzytelniające, niedostępny punkt końcowy, przekroczenie limitu czasu — rozmowa teraz to pokazuje: w wątku pojawia się czerwony znacznik „(nazwa funkcji) failed”, zarówno w karcie Try Out agenta, jak i w rzeczywistych rozmowach w Chats. Kliknij znacznik, aby rozwinąć szczegóły: kod stanu zwrócony przez Twój punkt końcowy oraz treść odpowiedzi, co zazwyczaj wystarcza, aby dokładnie określić, co należy naprawić (komunikat 401 z informacją „unauthorized” oznacza problem z nagłówkiem uwierzytelniania, a przekroczenie limitu czasu oznacza, że Twój punkt końcowy odpowiadał dłużej niż 30 sekund).
Pomyślne wywołania również wyświetlają znacznik — kliknij go, aby zobaczyć, co faktycznie zwrócił Twój punkt końcowy. Jest to najszybszy sposób na debugowanie integracji od początku do końca: przeprowadź rozmowę testową w Try Out, a następnie kliknij znacznik funkcji, aby zobaczyć rzeczywisty wynik żądania bez opuszczania strony.
Pełny przykład: Wyszukiwanie statusu zamówienia
Oto w pełni skonfigurowany przykład, którego możesz użyć jako szablonu:
Podstawowe informacje:
- Nazwa:
check_order_status - Opis: “Pobiera aktualny status zamówienia klienta, w tym informacje o wysyłce i śledzeniu”
- Działanie AI: “Wywołaj to, gdy klient pyta o status swojego zamówienia, gdzie znajduje się jego paczka lub kiedy dotrze. Zawsze najpierw pytaj o numer zamówienia.”
Połączenie:
- URL:
https://api.mystore.com/orders/lookup - Metoda: POST
Nagłówki:
Authorization:Bearer sk_live_abc123Content-Type:application/json
Parametry wejściowe:
order_number(tekst, wymagane): „Numer zamówienia podany przez klienta”customer_email(tekst, opcjonalne): „Adres e-mail klienta do dodatkowej weryfikacji”
Mapowanie odpowiedzi nie jest wymagane — dzięki jasnemu opisowi i ustawionej powyżej akcji AI, bot odczytuje dowolny plik JSON zwracany przez Twój punkt końcowy (status, numer śledzenia, data dostawy, przedmioty) i samodzielnie decyduje, jak o tym poinformować.
Jak wygląda konwersacja:
Klient: Hej, gdzie jest moje zamówienie?
Bot: Cześć! Chętnie sprawdzę Twoje zamówienie. Czy możesz podać mi numer zamówienia?
Klient: To ORD-78234
Bot: Już sprawdzam…
Twoje zamówienie ORD-78234 zostało wysłane i jest w drodze! Przewidywana data dostawy to 10 marca. Możesz śledzić przesyłkę tutaj: https://tracking.example.com/1Z999AA1
Czy mogę pomóc w czymś jeszcze?
Kompletny przykład: Status zamówienia w Shopify
Jeśli sklep działa na platformie Shopify, nie potrzebujesz programisty do stworzenia punktu końcowego wyszukiwania — własny system Shopify może bezpośrednio odpowiadać na pytania dotyczące zamówień. (W przypadku pytań o produkty i stany magazynowe w sklepie Shopify w ogóle nie potrzebujesz niestandardowej funkcji: połącz się z wbudowanym serwerem sklepu — zobacz Połącz sklep Shopify.)
Najpierw utwórz token dostępu w Shopify. Shopify wprowadziło zmiany w 2026 roku: aplikacji nie można już tworzyć w panelu administracyjnym Shopify, a nowy ekran tworzenia aplikacji udostępnia identyfikator klienta (Client ID) oraz klucz tajny klienta (Client secret) zamiast gotowego tokena. Poniższe kroki pozwolą przekształcić je w stały token. Przeznacz na to około dziesięciu minut, raz na sklep. (Jeśli sklep ma już starszą aplikację utworzoną w poprzedni sposób, istniejący token będzie nadal działał — przejdź od razu do funkcji niestandardowej poniżej.)
- Przejdź do pulpitu nawigacyjnego Shopify Dev pod adresem dev.shopify.com, otwórz swoją organizację i kliknij Apps → Create app. Nazwij ją np.
Order lookup. - Nadaj aplikacji uprawnienie read_orders, opublikuj wersję i zainstaluj aplikację w sklepie.
- Otwórz Ustawienia aplikacji i dodaj adres internetowy sklepu (na przykład
https://www.yourstore.com/) do dozwolonych adresów URL przekierowania. Zapisz. - Nadal w Ustawieniach skopiuj Client ID oraz Client secret.
- W przeglądarce, w której jesteś zalogowany do panelu administracyjnego Shopify tego sklepu, otwórz poniższy adres, zastępując nazwę sklepu, identyfikator klienta i adres przekierowania własnymi danymi:
https://YOUR-STORE.myshopify.com/admin/oauth/authorize?client_id=YOUR-CLIENT-ID&scope=read_orders&redirect_uri=https://www.yourstore.com/&state=12345Zatwierdź ekran, który się pojawi. Przeglądarka przekieruje Cię na Twój adres przekierowania, a pasek adresu będzie teraz zawierałcode=oraz długą wartość — skopiuj tę wartość. Jest ona ważna tylko przez kilka minut, więc przejdź od razu do następnego kroku. - Wymień ten kod na token, co możesz zrobić wewnątrz Your AI Connector. W kreatorze funkcji niestandardowych ustaw Metodę na POST, a URL na
https://YOUR-STORE.myshopify.com/admin/oauth/access_token, dodaj trzy tekstowe parametry wejściowe o nazwachclient_id,client_secreticode, a następnie kliknij Test, wypełnij trzy wartości i uruchom go. Odpowiedź zawieraaccess_token— to Twój stały token. Skopiuj go w bezpieczne miejsce, a następnie wyczyść kreator i skonfiguruj właściwą funkcję poniżej.
Następnie skonfiguruj funkcję niestandardową:
Podstawowe informacje:
- Nazwa:
check_shopify_order - Opis: “Wyszukuje zamówienie w systemie Shopify sklepu i zwraca jego status, informacje o śledzeniu oraz pozycje”
- Akcja AI: “Wywołaj to, gdy klient zapyta o status swojego zamówienia lub dostawę. Zawsze najpierw poproś o numer zamówienia.”
Połączenie:
- URL:
https://YOUR-STORE.myshopify.com/admin/api/2026-01/orders.json?status=any— zastąpYOUR-STOREnazwą.myshopify.comsklepu (ten adres używa technicznej domeny Shopify, a nie niestandardowej domeny sklepu) - Metoda: GET
Nagłówki:
X-Shopify-Access-Token:shpat_...(token uzyskany powyżej)
Parametry wejściowe:
name(query_param, wymagane): “Numer zamówienia klienta dokładnie w takiej formie, w jakiej widnieje w potwierdzeniu zamówienia, włącznie ze znakiem # — na przykład #1001. Jeśli klient go nie podał, poproś go o to.”
Mapowanie odpowiedzi nie jest wymagane — bot odczytuje zwrócone zamówienie (status płatności, status realizacji, śledzenie, pozycje) i odpowiada w naturalny sposób.
Warto wiedzieć: token utworzony w ten sposób może widzieć zamówienia z ostatnich 60 dni — to wystarczająco dużo do codziennych pytań wsparcia, ale nie stanowi pełnej historii zamówień.
Kompletny przykład: Rezerwacja wizyty
Podstawowe informacje:
- Nazwa:
create_booking - Opis: „Tworzy nową wizytę w naszym systemie rezerwacji”
- Akcja AI: „Użyj tego po potwierdzeniu daty, godziny i danych kontaktowych z klientem. Nie wywołuj funkcji, dopóki klient wyraźnie nie potwierdzi chęci rezerwacji.”
Połączenie:
- URL:
https://booking.mycompany.com/api/appointments - Metoda: POST
Parametry wejściowe:
date(tekst, wymagane): „Data wizyty w formacie RRRR-MM-DD”time(tekst, wymagane): „Godzina wizyty w formacie GG:MM”name(tekst, wymagane): „Imię i nazwisko klienta”phone(tekst, wymagane): „Numer telefonu klienta”service_type(tekst, wymagane): „Rodzaj rezerwowanej usługi”
Kompletny przykład: Dodawanie subskrybenta newslettera do systemu CRM
Bardzo powszechny schemat: bot kończy odpowiadać, oferuje newsletter, kontakt odpowiada swoim adresem e-mail, a ten adres powinien natychmiast trafić do Twojego narzędzia e-mailowego. Większość systemów CRM (FluentCRM, ActiveCampaign, MailerLite, Brevo i inne) akceptuje w tym celu proste żądanie POST, więc nie jest potrzebna żadna platforma automatyzacji pomiędzy nimi.
Ten przykład wykorzystuje FluentCRM na WordPressie. Schemat jest taki sam dla każdego innego narzędzia, które udostępnia „przychodzący webhook” lub punkt końcowy „utwórz subskrybenta”.
Najpierw pobierz adres URL ze swojego systemu CRM. W WordPressie otwórz FluentCRM → Ustawienia → Przychodzące webhooki (Incoming Webhooks) i utwórz webhook. Wybierz listę, tagi i status subskrypcji, które powinny otrzymać nowe kontakty, a następnie skopiuj wygenerowany adres URL webhooka. Wszystko, co tutaj ustawisz, zostanie zastosowane automatycznie, więc bot musi jedynie wysłać adres e-mail.
Następnie skonfiguruj funkcję niestandardową:
Podstawowe informacje:
- Nazwa:
add_newsletter_subscriber - Opis: “Dodaje osobę do naszej listy newslettera przy użyciu adresu e-mail podanego na czacie”
- Akcja AI: “Użyj tego w momencie, gdy kontakt wyrazi zgodę na subskrypcję newslettera i poda swój adres e-mail. Nie wywołuj tej funkcji, zanim użytkownik faktycznie poda adres, i nie wywołuj jej dwukrotnie dla tej samej osoby.”
Połączenie:
- URL: adres URL webhooka skopiowany z Twojego CRM
- Metoda: POST
Parametry wejściowe:
email(ciąg znaków, wymagane): “Adres e-mail podany przez kontakt w rozmowie”first_name(ciąg znaków, opcjonalne): “Imię kontaktu, jeśli zostało podane”
Pomiń dane systemowe: włącz tę opcję (on). Twój CRM potrzebuje tylko powyższych pól, a mniejszy ładunek danych pozwala uniknąć błędów w narzędziach, które odrzucają nieoczekiwane pola.
Mapowanie odpowiedzi: tutaj nie jest potrzebne. Nic nie musi wracać, aby bot mógł kontynuować działanie.
Nie zapomnij włączyć funkcji dla Agenta, który prowadzi konwersację (zobacz Przypisywanie funkcji do Agenta). Jest to najczęstszy powód, dla którego poprawnie zbudowana funkcja nigdy nie jest wyzwalana.
Wskazówka: bot posiada również wbudowane narzędzie Aktualizuj e-mail kontaktu (Update Contact Email), które zapisuje adres w rekordzie kontaktu wewnątrz platformy. Jest to oddzielne rozwiązanie od tej funkcji i warto używać ich razem — wbudowane narzędzie dba o kompletność Twojego rekordu kontaktu, a niestandardowa funkcja przesyła adres do Twojego systemu CRM.
Wskazówki dotyczące niezawodnych funkcji niestandardowych
-
Upewnij się, że powtarzane żądania są bezpieczne. Jeśli to samo żądanie zostanie przypadkowo wysłane dwukrotnie, nie powinno to tworzyć zduplikowanych rekordów. Problemy z siecią mogą czasami to powodować.
-
Zwracaj jasne komunikaty o błędach. Jeśli coś pójdzie nie tak po stronie Twojego systemu, zwróć czytelny dla człowieka błąd. Bot przekaże go klientowi w uprzejmy sposób.
-
Utrzymuj czas odpowiedzi poniżej 10 sekund. Jeśli Twój system potrzebuje więcej czasu, rozważ najpierw zwrócenie szybkiego potwierdzenia przyjęcia zgłoszenia.
-
Obsługuj wygasłe lub nieprawidłowe dane uwierzytelniające. Jeśli Twój klucz API wygaśnie, upewnij się, że komunikat o błędzie jest jasny, aby bot wiedział, że powinien powiadomić człowieka zamiast ponawiać próbę.
-
Pisz szczegółowe opisy. AI wykorzystuje Twoje opisy, aby ustalić, kiedy wywołać funkcję i jak wyodrębnić odpowiednie informacje z konwersacji. Niejasne opisy prowadzą do błędów.
-
Testuj na rzeczywistych konwersacjach. Funkcja „Try Out” jest świetna do wstępnych testów, ale monitoruj swoje pierwsze kilka konwersacji na żywo, aby upewnić się, że wszystko działa poprawnie przy rzeczywistych zapytaniach klientów.
-
Przechowuj logi po swojej stronie. Poproś programistę o logowanie żądań przychodzących z aplikacji, aby można było szybko debugować wszelkie problemy.
-
Użyj publicznego, ostatecznego adresu URL. Adres URL Twojej funkcji musi być publicznym adresem internetowym (HTTP/HTTPS). Adresy wewnętrzne, localhost oraz te z sieci prywatnych są odrzucane ze względów bezpieczeństwa, a platforma nie śledzi przekierowań — kieruj funkcję bezpośrednio na ostateczny adres URL, a nie na taki, który do niego przekierowuje.
Limity wykonania
Każda funkcja niestandardowa posiada opcjonalną sekcję Limity wykonania na dole edytora. Kontroluje ona, jak często sztuczna inteligencja może uruchamiać funkcję oraz czy wcześniejszy wynik może zostać użyty ponownie. Wszystkie te ustawienia są opcjonalne — pozostawienie ich pustych sprawia, że funkcja działa dokładnie tak, jak wcześniej.
Funkcja tylko do odczytu. Włącz tę opcję, jeśli Twoja funkcja jedynie odczytuje dane — np. wyszukiwanie zapasów, sprawdzanie ceny, wyszukiwanie statusu zamówienia — i nigdy nie tworzy ani nie zmienia żadnych informacji. Gdy chwilowy problem z siecią przerwie odpowiedź AI, platforma może bezpiecznie ponowić próbę w ramach tej samej tury konwersacji, zamiast pozostawiać klienta bez odpowiedzi. Włączaj tę opcję tylko wtedy, gdy funkcja rzeczywiście nigdy niczego nie zapisuje: funkcja tworząca rekordy musi mieć tę opcję wyłączoną, aby ponowna próba nigdy przypadkowo nie uruchomiła jej dwukrotnie.
Serwuj wynik z pamięci podręcznej przy powtórnych wywołaniach. Gdy AI wywoła funkcję ponownie z tymi samymi danymi wejściowymi (na przykład klient zada to samo pytanie dwa razy), zamiast ponownie wywoływać Twój punkt końcowy, zostanie użyty poprzedni wynik. Wyniki z pamięci podręcznej są przechowywane do 24 godzin, a wywołanie z innymi danymi wejściowymi zawsze trafia bezpośrednio do Twojego punktu końcowego.
Maks. liczba uruchomień na konwersację. Sztywny limit liczby uruchomień funkcji w ramach jednej konwersacji. Ustaw wartość 1 dla funkcji, które powinny zostać wywołane tylko raz na czat — np. generowanie wyceny, wyzwalanie oddzwonienia, uruchamianie automatyzacji. Po osiągnięciu limitu AI otrzymuje informację, że funkcja została już uruchomiona, wraz z ostatnim uzyskanym wynikiem, dzięki czemu nadal może odpowiedzieć klientowi, zamiast milczeć.
Maks. liczba uruchomień w oknie czasowym. Limit częstotliwości w czasie: na przykład maksymalnie 5 uruchomień w ciągu 60 minut. Przydatne dla funkcji, które wywołują płatne usługi stron trzecich lub uruchamiają bardziej obciążające automatyzacje. Oba pola muszą zostać wypełnione razem (liczba uruchomień oraz okno czasowe w minutach, do 7 dni).
Kilka rzeczy, o których warto wiedzieć:
- Limity zliczają tylko udane uruchomienia. Wywołanie, które zakończyło się niepowodzeniem po stronie Twojego punktu końcowego, nie zużywa limitu.
- Gdy uruchomienie jest blokowane przez limit, klient nigdy nie pozostaje bez odpowiedzi — AI otrzymuje informację o przyczynie i pracuje z informacjami, które już posiada.
- Limity mają zastosowanie wszędzie tam, gdzie działa funkcja: w regularnych czatach na każdym kanale oraz w funkcjach zarządzanych przez automatyzację. Konwersacje testowe w trybie „Wypróbuj” nie są zliczane ani limitowane.
Wbudowane narzędzia bota
Oprócz niestandardowych funkcji, które tworzysz samodzielnie, platforma jest dostarczana z biblioteką gotowych narzędzi, z których bot AI może korzystać podczas rozmowy. Obejmują one najczęstsze zadania, jakie musi wykonać bot — powiadamianie członka zespołu, umawianie spotkań, tagowanie kontaktu, przeszukiwanie witryny, planowanie działań następczych i inne — dzięki czemu nie musisz ich konfigurować od zera.
Bot decyduje, kiedy użyć każdego narzędzia, w oparciu o to, co dzieje się w rozmowie oraz jak skonfigurowany jest Twój Agent (i przypisana do niego kampania). Większość tych narzędzi włącza się automatycznie po aktywacji powiązanej funkcji (na przykład narzędzia do rezerwacji stają się dostępne dopiero po połączeniu kalendarza i włączeniu rezerwacji).
Koszt w kredytach: Każde wywołanie narzędzia jest rozliczane zgodnie z poziomem jakości AI Twojego Agenta, a samodzielnie utworzone funkcje niestandardowe są rozliczane w ten sam sposób:
| Poziom jakości AI | Kredyty za wywołanie narzędzia | Z podłączonym własnym kluczem Anthropic (BYOK) |
|---|---|---|
| Pro | 1 kredyt | 0 kredytów — działa na Twoim kluczu |
| Economy (przestarzałe) | 0,5 kredytu | 0 kredytów — działa na Twoim kluczu |
| Max | 0,25 kredytu | nadal 0,25 kredytu, naliczane nawet przy podłączonym własnym kluczu, ponieważ Max działa na naszym modelu |
| Mini | 0,15 kredytu | nadal 0,15 kredytu, naliczane nawet przy podłączonym własnym kluczu, ponieważ Mini działa na naszym modelu |
Narzędzia dla zespołu i zadań
| Narzędzie | Co robi | Kiedy bot go używa |
|---|---|---|
| Powiadom członka zespołu | Wstrzymuje bota dla tego kontaktu i wysyła e-mail do zespołu z informacją, że potrzebny jest człowiek. Czat jest oznaczany, aby członek zespołu mógł go przejąć. | Gdy klient prosi o rozmowę z człowiekiem, jest sfrustrowany lub pyta o coś, na co bot nie ma uprawnień lub nie potrafi odpowiedzieć. |
| Utwórz zadanie | Tworzy nowe zadanie na tablicy zadań, opcjonalnie powiązane z kontaktem i rozmową. Bot kontynuuje odpowiadanie w normalny sposób — zadanie jest tylko notatką dla zespołu, aby podjąć dalsze działania. | W przypadku spraw niepilnych, takich jak prośba o nową funkcję, szansa na sprzedaż dodatkową lub prośba o oddzwonienie, którą zespół powinien zająć się później. |
| Zasugeruj aktualizację FAQ | Gdy bot napotka pytanie, na które nie potrafi dobrze odpowiedzieć, tworzy zadanie z prośbą do zespołu o dodanie odpowiedzi do bazy wiedzy. | Gdy kontakt pyta o coś, co nie jest objęte istniejącymi FAQ — dzięki temu luka zostanie naprawiona na przyszłość. |
| Dodaj kontekst do sugestii FAQ | Jeśli inny kontakt zapyta później o podobną kwestię z innej perspektywy, bot dołączy ten kontekst do istniejącej sugestii FAQ zamiast tworzyć zduplikowane zadanie. | Automatycznie — utrzymuje porządek na liście zadań, gdy wiele osób zgłasza ten sam brak w wiedzy. |
Narzędzia kontaktu
| Narzędzie | Co robi | Kiedy bot go używa |
|---|---|---|
| Tagowanie | Uruchamia się automatycznie po każdej odpowiedzi bota — nie jest to narzędzie, które bot obsługujący klienta decyduje się wywołać. System analizuje ostatnią rozmowę i stosuje odpowiednie tagi, ponownie wykorzystując istniejące tagi, gdzie to możliwe (i tworząc nowy tylko wtedy, gdy jest to konieczne). | Automatycznie — zawsze, gdy rozmowa ujawnia coś, co warto segmentować, np. zainteresowanie, intencję, jakość leada lub język. |
| Aktualizuj imię kontaktu | Zapisuje imię i/lub nazwisko kontaktu, gdy ten je udostępni. | Gdy klient się przedstawia lub poprawia swoje imię. |
| Aktualizuj e-mail kontaktu | Zapisuje adres e-mail kontaktu, gdy ten go udostępni. | Gdy klient podaje adres e-mail — w celu wysyłki newsletterów, paragonów, wyszukiwania konta itp. |
Narzędzia spotkań i rezerwacji
Te narzędzia są dostępne tylko wtedy, gdy rezerwacje są włączone w kampanii powiązanej z Twoim Agentem oraz gdy skonfigurowano typ wydarzenia w kalendarzu.
| Narzędzie | Co robi | Kiedy bot go używa |
|---|---|---|
| Sprawdź dostępne terminy | Sprawdza, jakie terminy są wolne w połączonym kalendarzu dla danego dnia lub zakresu dat. | Gdy klient chce dokonać rezerwacji, a bot musi zaoferować rzeczywistą dostępność. |
| Umów spotkanie | Tworzy spotkanie w kalendarzu i potwierdza rezerwację klientowi. | Po tym, jak klient potwierdzi konkretną datę i godzinę. |
| Przenieś spotkanie | Zmienia termin istniejącego spotkania na nową datę i godzinę. | Gdy klient prosi o zmianę terminu. |
| Anuluj spotkanie | Anuluje istniejące spotkanie. | Gdy klient prosi o anulowanie. |
| Wyszukaj spotkania | Pobiera istniejące spotkania kontaktu, aby bot wiedział, co jest już zaplanowane. | Gdy klient pyta „kiedy mam spotkanie?” lub przed zaoferowaniem zmiany terminu. |
Narzędzia wiedzy i internetowe
| Narzędzie | Co robi | Kiedy bot go używa |
|---|---|---|
| Przeszukaj witrynę | Skanuje adresy URL dodane do listy dynamicznych adresów URL kampanii, aby znaleźć strony produktów, artykuły lub inne treści odpowiadające na pytanie klienta. Dostępne tylko wtedy, gdy Wyszukiwanie AI w sieci jest włączone i dodano co najmniej jeden dynamiczny adres URL. Jeśli wyszukiwanie AI w sieci jest wyłączone, bot nie może czytać stron ani linków — nawet tych, które klient wkleja na czacie. | Gdy klient pyta o coś, co prawdopodobnie znajduje się na Twojej stronie — produkty, ceny, lokalizacje, zasady. |
| Sprawdź link | Odczytuje zawartość konkretnego adresu URL, aby bot mógł odpowiedzieć na pytania dotyczące tej strony. Dostępne tylko wtedy, gdy Wyszukiwanie AI w sieci jest włączone i dodano co najmniej jeden dynamiczny adres URL. Jeśli wyszukiwanie AI w sieci jest wyłączone, bot nie może czytać stron ani linków — nawet tych, które klient wkleja na czacie. | Gdy klient udostępnia link lub pyta o konkretną stronę w Twojej witrynie. |
| Przeszukaj internet | Uruchamia publiczne wyszukiwanie w Google i zwraca najlepsze wyniki, dzięki czemu bot może odpowiadać na pytania wykraczające poza Twoje własne treści. | Gdy klient pyta o coś ogólnego (np. wskazówki dojazdu, informacje publiczne), czego nie ma w Twojej bazie wiedzy. Używane tylko wtedy, gdy wyszukiwanie w sieci jest włączone. |
Narzędzia do działań następczych (Follow-Up)
Te narzędzia wymagają włączenia działań następczych w kampanii powiązanej z Twoim Agentem.
| Narzędzie | Co robi | Kiedy bot go używa |
|---|---|---|
| Zaplanuj inteligentne działanie następcze | Planuje inteligentną wiadomość następczą przy użyciu Twojej sekwencji działań — wybiera odpowiedni szablon i czas na podstawie konwersacji. | Gdy klient milczy lub prosi bota o „sprawdzenie później”. |
| Zaplanuj działanie następcze | Planuje podstawowe działanie następcze w określonym czasie. | Gdy bot musi popchnąć konwersację do przodu w określonym momencie. |
Uruchamianie funkcji niestandardowych
| Narzędzie | Co robi | Kiedy bot go używa |
|---|---|---|
| Uruchom funkcję niestandardową | Wykonuje jedną z funkcji niestandardowych, które utworzyłeś i przypisałeś do Agenta (zobacz resztę tej strony). | Gdy prośba klienta pasuje do celu jednej z Twoich funkcji niestandardowych. |
Narzędzia do rezerwacji w restauracjach (Zenchef i Formitable)
Te narzędzia są dostępne tylko wtedy, gdy połączona jest integracja Zenchef lub Formitable. Pozwalają one botowi na kompleksowe zarządzanie rezerwacjami w restauracji.
| Narzędzie | Co robi | Kiedy bot go używa |
|---|---|---|
| Sprawdź dostępność restauracji | Wyszukuje wolne terminy rezerwacji dla danej daty, liczby osób i (opcjonalnie) strefy stolików. | Gdy gość prosi o rezerwację stolika. |
| Utwórz rezerwację w restauracji | Tworzy nową rezerwację. | Po potwierdzeniu przez gościa konkretnego terminu. |
| Zaktualizuj rezerwację w restauracji | Zmienia datę, godzinę, liczbę osób lub uwagi w istniejącej rezerwacji. | Gdy gość prosi o modyfikację swojej rezerwacji. |
| Anuluj lub zmień status rezerwacji | Anuluje rezerwację lub aktualizuje jej status (np. potwierdzona, nieobecność). | Gdy gość anuluje rezerwację lub gdy bot musi oznaczyć zmianę statusu. |
| Wyszukaj rezerwacje | Znajduje istniejące rezerwacje pasujące do kryteriów, takich jak imię i nazwisko, e-mail lub data. | Gdy powracający gość pyta o istniejącą rezerwację. |
| Zaktualizuj profil gościa | Aktualizuje profil gościa w systemie restauracji (preferencje, uwagi, dane kontaktowe). | Gdy gość udostępnia preferencje żywieniowe, nowy numer telefonu lub inne informacje na poziomie profilu. |
| Wyświetl produkty restauracji | Pobiera listę menu, zestawów lub dodatków dostępnych do rezerwacji. | Gdy gość pyta „jakie macie zestawy menu?” lub bot musi dołączyć menu do rezerwacji. |
Włączanie i wyłączanie narzędzi
Większość narzędzi jest kontrolowana na karcie Możliwości AI Agenta (lub w kroku Możliwości AI kampanii, jeśli pracujesz w klasycznej kampanii):
- Narzędzia do rezerwacji włączają się, gdy aktywujesz rezerwacje i połączysz kalendarz — na razie jest to ustawienie dla każdej kampanii z osobna, z bezpośrednim linkiem do kroku tej kampanii z karty Możliwości AI Agenta
- Narzędzia do działań następczych włączają się, gdy aktywujesz działania następcze
- Narzędzia restauracyjne włączają się, gdy połączysz konto Zenchef lub Formitable
- Wyszukiwanie w sieci ma własny przełącznik na karcie FAQ i wiedza
- Narzędzia zadań można wyłączyć dla każdego Agenta za pomocą przełącznika Pozwól AI tworzyć zadania (są domyślnie włączone; ogólnokontowy przełącznik Zadań w Ustawienia → Profil → Funkcje wyłącza cały system zadań wszędzie)
- Narzędzia do aktualizacji kontaktów są kontrolowane na tej samej karcie Możliwości AI — określają, czy AI może zmieniać nazwy kontaktów lub zapisywać na nich dodatkowe zebrane informacje
- Narzędzia alertów są zawsze dostępne; tagowanie działa automatycznie po każdej odpowiedzi bota (nie jest to narzędzie, które bot wybiera do wywołania)
Jeśli chcesz, aby bot przestał używać konkretnego wbudowanego narzędzia, najczystszym sposobem jest wyłączenie podstawowej funkcji (na przykład wyłącz rezerwacje, aby wyłączyć wszystkie narzędzia do rezerwacji).
Funkcje zarządzane przez automatyzację
Niektóre wpisy na stronie Funkcji niestandardowych mogą być oznaczone etykietą Zarządzane przez automatyzację. Nie zostały one utworzone w tym miejscu — pochodzą z automatyzacji z wyzwalaczem Funkcja agenta AI, który nadaje agentowi umiejętność, której kroki budujesz wizualnie na kanwie automatyzacji, zamiast wskazywać zewnętrzny adres internetowy.
Zarządzana funkcja jest obsługiwana automatycznie: jej nazwa, opis i pola zawsze odpowiadają ustawieniom wyzwalacza automatyzacji, dlatego nie można jej edytować ani usuwać z tej strony — użyj linku Otwórz automatyzację, aby wprowadzić zmiany w samej automatyzacji. Nadal możesz jednak w standardowy sposób wybierać, którzy agenci mają do niej dostęp: na karcie Zdolności AI danego agenta pojawia się ona obok innych zdolności wraz ze zwykłym przełącznikiem włączania/wyłączania (jeśli automatyzacja jest wstrzymana, w wierszu pojawi się stosowna informacja — zdolność stanie się aktywna po włączeniu automatyzacji). Wszystkie pozostałe aspekty jej działania są identyczne jak w przypadku każdej innej funkcji niestandardowej: sztuczna inteligencja decyduje, kiedy ją wywołać, zbiera zdefiniowane przez Ciebie szczegóły i może wykorzystać odpowiedź automatyzacji w tej samej konwersacji.
Jeśli wybierasz między tymi dwoma rozwiązaniami: skieruj zwykłą funkcję niestandardową do systemu, który ma już adres do wywołania; zbuduj automatyzację z wyzwalaczem funkcji Agenta AI, gdy wolisz złożyć pracę z kilku kroków — wyszukać coś w arkuszu kalkulacyjnym lub bazie danych, rozgałęzić warunek, utworzyć rekordy — bez konieczności uruchamiania własnego serwera. Zobacz Automatyzacje.
Wymagania planu
Funkcje niestandardowe są dostępne w planach, które zawierają tę funkcjonalność. Sprawdź swoją subskrypcję, aby potwierdzić dostępność.
Następne kroki
- Podłączanie serwerów MCP do Twojego bota — gotowy zestaw narzędzi zamiast pojedynczych funkcji.
- Agenci AI — strona główna grupy AI Studio, w której znajdują się funkcje niestandardowe i gdzie są one przypisywane do bota.