AI Chat Widget

AI Chat Widget: instrukcja obsługi

Kompletna dokumentacja Twojego czatu AI na własnym serwerze: instalacja, połączenie z dostawcą AI, tworzenie botów, uczenie ich z własnych dokumentów, zbieranie zapytań kontaktowych i bezpieczna praca.

AI Chat Widget

Pierwsze kroki

Czym jest AI Chat Widget?

AI Chat Widget to asystent czatu, który uruchamiasz na własnym serwerze i umieszczasz na dowolnej stronie jedną linijką kodu. Odpowiada na pytania odwiedzających za pomocą wybranego przez Ciebie dostawcy AI, na podstawie podanych przez Ciebie faktów, a gdy nie potrafi pomóc, zbiera zapytania kontaktowe.

Wszystko działa na Twoim hostingu: panel administracyjny, rozmowy, baza wiedzy i klucze AI. Nic nie jest wysyłane do nas. Jedyny ruch na zewnątrz odbywa się między Twoim serwerem a wybraną usługą AI oraz między przeglądarką odwiedzającego a Twoim serwerem.

Co możesz z nim zrobić

  • Podłącz dowolnego dostawcę AI: OpenAI, Anthropic, Google Gemini, Mistral, Groq, Perplexity, OpenRouter, xAI, Together AI, Azure OpenAI, Cohere, LM Studio, Ollama lub dowolną usługę, którą opiszesz sam w kilku polach.
  • Utwórz kilka botów, każdy z własnym tematem, wyglądem, tekstami, zasadami i listą stron.
  • Naucz bota z bazy wiedzy: wklejonego tekstu, list pytań i odpowiedzi, plików TXT, Markdown, CSV, HTML, PDF i Word, stron internetowych oraz całych map witryn.
  • Pozwól odwiedzającym zostawić dane kontaktowe, gdy bot nie umie odpowiedzieć, i otrzymuj e-mail o każdym zapytaniu.
  • Czytaj i eksportuj rozmowy, oceniaj odpowiedzi i obserwuj statystyki, żeby zobaczyć, o co naprawdę pytają odwiedzający.
  • Zabezpiecz wszystko weryfikacją dwuetapową, pełnym dziennikiem audytu, listami dozwolonych stron, limitami zapytań i dziennymi budżetami tokenów.
  • Pracuj w sześciu językach: angielskim, polskim, niemieckim, francuskim, włoskim i hiszpańskim, zarówno w panelu, jak i w widgecie.
Pulpit pokazuje stan instalacji na pierwszy rzut oka.
Pulpit pokazuje stan instalacji na pierwszy rzut oka.

Jak to działa

Cztery elementy, które konfigurujesz w tej kolejności: dostawca, bot, kod osadzenia, a potem to, co naprawdę mówią odwiedzający.

  1. 1
    Dostawca AI. Zapisane połączenie z usługą AI: jej adres, sposób logowania (Twój klucz API) i sposób odczytu odpowiedzi. Wbudowane profile obejmują popularne usługi, a możesz dodać własne.
  2. 2
    Bot. Jeden asystent czatu. Ma dostawcę i model, opis zadania (temat, zakres, ton), wygląd, teksty i zasady. Możesz uruchomić tyle botów, na ile pozwala Twoja licencja, dla różnych stron lub celów.
  3. 3
    Kod osadzenia. Jedna linijka <script>, która umieszcza czat na stronie (lub mała wtyczka WordPress, która robi to za Ciebie).
  4. 4
    Rozmowy. Każda wiadomość odwiedzającego trafia najpierw na Twój serwer. Serwer sprawdza zasady, buduje instrukcje dla AI, pyta dostawcę i odsyła odpowiedź. Klucz AI nigdy nie trafia do przeglądarki odwiedzającego.
Przeglądarka odwiedzającego rozmawia tylko z Twoją instalacją. Twoja instalacja rozmawia z dostawcą AI. Dlatego listy dozwolonych stron, limity i zapis rozmów są całkowicie pod Twoją kontrolą.

Co się dzieje, gdy odwiedzający wyśle wiadomość

  1. 1
    Widget wysyła wiadomość do api.php na Twoim serwerze.
  2. 2
    Serwer sprawdza, czy strona jest na liście dozwolonych stron bota, stosuje limit zapytań, zablokowane słowa i dzienny budżet tokenów.
  3. 3
    Wyszukuje pasujące fragmenty w bazie wiedzy (jeśli bot z niej korzysta) i buduje instrukcje: temat, zakres, ton, informacje o firmie, fragmenty oraz zawsze włączone zasady bezpieczeństwa.
  4. 4
    Pyta dostawcę AI (a jeśli pierwszy zawiedzie, dostawcę zapasowego).
  5. 5
    Zapisuje rozmowę zgodnie z trybem zapisu bota i zwraca odpowiedź, wraz z linkami do źródeł, jeśli model je poda.

Wymagania systemowe

WymaganieSzczegóły
PHP8.1 lub nowszy
Wymagane rozszerzenia PHPpdo_mysql, openssl, mbstring
Zdecydowanie zalecanecurl (połączenia z dostawcami AI i import stron), sodium (weryfikacja licencji), dom i libxml (odczyt stron i plików Word), zlib i iconv (pliki PDF)
Opcjonalnezip (wtyczka WordPress jako plik .zip; pliki Word są czytane wbudowanym czytnikiem bez niego)
Baza danychMySQL 5.7+ lub MariaDB 10.3+ (baza wiedzy korzysta z indeksu pełnotekstowego InnoDB)
Serwer WWWApache 2.4 (reguły dostępu są dostarczane jako .htaccess) lub Nginx (równoważne reguły znajdziesz w rozdziale Konserwacja)
Przeglądarka do paneluDowolna aktualna Chrome, Edge, Firefox lub Safari
Połączenia wychodząceHTTPS do Twoich dostawców AI; SMTP do serwera poczty, jeśli używasz funkcji e-mail
Strona Informacje o systemie wylicza każde rozszerzenie potrzebne aplikacji i pokazuje, których brakuje, więc nowy hosting możesz sprawdzić jeszcze przed instalacją.

Instalacja

Instalacja trwa kilka minut i działa na zwykłym hostingu współdzielonym, VPS-ie lub serwerze dedykowanym. Na serwerze nie potrzebujesz Composera ani wiersza poleceń.

  1. 1
    Skopiuj pliki. Wgraj cały folder ai-chat-widget do katalogu głównego serwera WWW lub do dowolnego podfolderu. Adres jest wykrywany automatycznie, więc nazwa folderu nie ma znaczenia.
  2. 2
    Utwórz pustą bazę danych MySQL w panelu swojego hostingu (np. cPanel lub DirectAdmin: „Bazy danych MySQL") razem z użytkownikiem bazy, który ma do niej pełne uprawnienia. Zapisz host (najczęściej localhost), nazwę bazy, użytkownika i hasło; podasz je w instalatorze.
  3. 3
    Otwórz instalator. Przejdź pod adres https://your-site/ai-chat-widget/install/ i wybierz język instalatora (angielski, polski, niemiecki, francuski, włoski lub hiszpański).
  4. 4
    Wypełnij formularz. Host bazy danych, nazwa, użytkownik i hasło, prefiks tabel (domyślny acw_ jest w porządku) oraz Twój pierwszy administrator: imię, e-mail i hasło co najmniej 12-znakowe.
  5. 5
    Zakończ. Instalator tworzy tabele, zapisuje config/config.php oraz plik blokady i pokazuje link do strony logowania.
  6. 6
    **Usuń folder install/** z serwera, gdy instalator o to poprosi.
Po instalacji strona O programie pokazuje wersję i krótką listę kontrolną.
Po instalacji strona O programie pokazuje wersję i krótką listę kontrolną.
**Zrób kopię zapasową config/config.php.** Zawiera klucz aplikacji, który szyfruje Twoje klucze AI, hasło SMTP i sekrety weryfikacji dwuetapowej. Mając kopię bazy danych, ale bez tego pliku, nie odczytasz już tych wartości. Przechowuj kopię w bezpiecznym miejscu, poza katalogiem głównym serwera WWW.

Aktualizacja

Wgraj nowe pliki na stare (zachowaj config/ i storage/), zaloguj się i otwórz Informacje o systemie. Jeśli baza danych wymaga zmian, strona je wyświetli; kliknij raz Zastosuj aktualizacje. Pełną procedurę znajdziesz w rozdziale "Konserwacja".

Pierwsze logowanie i pulpit

Zaloguj się e-mailem i hasłem ustawionym podczas instalacji. Panel zapamiętuje Twój język i działa tak samo na telefonie.

Menu po lewej jest pogrupowane według zadań:

GrupaPozycje
PulpitPrzegląd i szybkie kontrole
KonfiguracjaBoty, Dostawcy AI, Baza wiedzy
RozmowyRozmowy, Zapytania kontaktowe, Statystyki
AdministracjaUżytkownicy, Ustawienia, Dziennik audytu, Informacje o systemie, O programie

Pulpit pokazuje plan licencji, informację, czy weryfikacja dwuetapowa jest włączona, liczbę użytkowników i botów oraz ostrzeżenia: oczekujące aktualizacje bazy danych, brakujące rozszerzenie PHP lub komunikaty "2FA required". Górny pasek zawiera menu profilu (profil, weryfikacja dwuetapowa, wylogowanie); strzałka na dole menu zwija je do ikon.

Małe ikony "?"

Każde pole formularza ma ikonę "?", która otwiera krótkie wyjaśnienie. Możesz je wyłączyć dla wszystkich w Ustawienia > Ogólne albo tylko dla siebie w Mój profil.

Naciśnij Ctrl+F5 po aktualizacji, jeśli ekran wygląda bez stylów: przeglądarka mogła zachować stary arkusz stylów.

Szybki start: pierwszy bot w 8 krokach

Od pustej instalacji do czatu na Twojej stronie, krok po kroku.

  1. 1
    Dodaj dostawcę AI. Przejdź do Dostawcy AI, otwórz gotowy profil (na przykład OpenAI) i wklej swój klucz API. Link "Zdobądź klucz API" pod polem otwiera stronę dostawcy, na której klucz się tworzy.
  2. 2
    Przetestuj połączenie. W tym samym edytorze kliknij Pobierz modele, a potem użyj konsoli testowej: wybierz model, wyślij wiadomość i sprawdź, czy przychodzi odpowiedź. Popraw klucz tutaj, zanim zaczniesz budować bota.
  3. 3
    Utwórz bota. Przejdź do Boty > Dodaj bota. Nadaj nazwę, wybierz dostawcę i model, a na karcie Temat i prompt opisz, o czym bot ma rozmawiać: Twoja firma, ton, na co nie wolno mu odpowiadać.
  4. 4
    Ustaw wygląd i teksty. Karty Wygląd, Zachowanie, Teksty i Branding: kolory, pozycja, powitanie i sugerowane pytania. Karta Czat testowy i "Podgląd końcowego promptu" pozwalają rozmawiać z botem prosto w panelu.
  5. 5
    Zezwól swojej stronie. Na karcie Bezpieczeństwo dodaj swoją stronę do Dozwolone strony (na przykład example.com lub *.example.com). Czat ładuje się tylko na stronach z listy.
  6. 6
    Osadź czat. Otwórz kartę Osadzanie, skopiuj jednoliniowy skrypt i wklej go przed </body> na swoich stronach. W WordPress pobierz zamiast tego małą wtyczkę z tej samej karty.
  7. 7
    Opcjonalnie: dodaj wiedzę i zapytania kontaktowe. Dodaj dokumenty w Baza wiedzy albo włącz Zapytania kontaktowe w ustawieniach bota (najpierw skonfiguruj Ustawienia > E-mail).
  8. 8
    Obserwuj i dopracowuj. Porozmawiaj z botem na swojej stronie. Później przeglądaj Rozmowy i Statystyki, zdecyduj, co jest zapisywane (karta Prywatność) i popraw prompt tam, gdzie odpowiedzi nie były pomocne.
Nie wiesz, od czego zacząć? Ustawienia > Dane demo wczytują cztery przykładowe boty z około stu rozmowami, zapytaniami kontaktowymi i dokumentami bazy wiedzy, żebyś mógł obejrzeć każdy ekran. Jeden przycisk usuwa je z powrotem.

Instrukcja obsługi

Dostawcy AI

Profil dostawcy mówi aplikacji, jak rozmawiać z jedną usługą AI. Profile to dane, nie kod, więc nową lub nietypową usługę możesz dodać bez czekania na aktualizację.

Lista dostawców: wbudowane profile, stan klucza i modele.
Lista dostawców: wbudowane profile, stan klucza i modele.

Wbudowane profile

OpenAI, Anthropic (Claude), Google Gemini, Mistral, Groq, Perplexity, OpenRouter, xAI (Grok), Together AI, Azure OpenAI, Cohere, LM Studio i Ollama (oba lokalne) oraz ogólny profil OpenAI-compatible, który możesz skierować na dowolny zgodny serwer. Każdy jest gotowy do użycia: otwórz go, wklej klucz, zapisz.

Dodawanie klucza

Otwórz dostawcę i wypełnij Klucz API. Klucz jest zapisywany w postaci zaszyfrowanej i nigdy nie jest pokazywany ponownie (tylko ostatnie cztery znaki). Zielony komunikat potwierdza zapisanie klucza; przy kolejnych edycjach zostaw pole puste, aby go zachować. Link Zdobądź klucz API obok pola prowadzi na stronę, na której dostawca wydaje klucze.

Edytor dostawcy: połączenie, szablon zapytania, ścieżki odpowiedzi, modele, limity i konsola testowa.
Edytor dostawcy: połączenie, szablon zapytania, ścieżki odpowiedzi, modele, limity i konsola testowa.

Konsola testowa

Pod formularzem konsola wysyła prawdziwą wiadomość z profilem w takiej postaci, w jakiej jest aktualnie edytowany, zapisanym lub nie. Pokazuje odpowiedź, czas, liczby tokenów, a gdy coś zawiedzie, dokładne zapytanie i odpowiedź (z zamaskowanym kluczem). Używaj jej za każdym razem, gdy zmieniasz profil.

Edycja profilu

Adres endpointuAdres URL, na który wysyłane są zapytania. Można w nim użyć {{model}} (Google Gemini umieszcza model w adresie).
Gdzie zdobyć klucz APIOpcjonalny link pokazywany obok pola klucza. Zapisany razem z profilem, więc możesz go edytować.
UwierzytelnianieJak wysyłany jest klucz: jako token Bearer, w nazwanym nagłówku albo w adresie. Niektóre usługi lokalne nie wymagają żadnego.
Szablon treści zapytania (JSON)Szablon JSON. Zmienne {{model}}, {{messages}}, {{system}}, {{prompt}}, {{max_tokens}}, {{temperature}} i {{top_p}} są uzupełniane przy każdym wywołaniu. Puste wartości opcjonalne mogą być pomijane automatycznie.
Format wiadomościJak układana jest rozmowa: rola i treść (styl OpenAI), "contents" Gemini, pojedynczy prompt albo Twój własny szablon.
Ścieżka do tekstu odpowiedziGdzie w odpowiedzi znajduje się tekst, zapisane jako ścieżka z kropkami, np. choices.0.message.content. * zbiera każdy element listy.
Ścieżki do tokenówGdzie znajdują się liczby tokenów wejściowych i wyjściowych, dzięki czemu statystyki i budżety są dokładne.
Ścieżki źródeł (cytowań)Opcjonalne. Gdzie odpowiedź wymienia strony, na których się opiera (używane przez Perplexity i OpenRouter).
Ustawienia strumieniowania (JSON)Mały JSON opisujący, jak usługa strumieniuje odpowiedź (format zdarzeń, miejsce fragmentu tekstu, jak poprosić o strumieniowanie). Używany tylko wtedy, gdy strumieniowanie jest włączone w Ustawieniach.
Lista modeliLista modeli oferowana w edytorze bota, jeden w wierszu (id | etykieta). Pobierz modele wczytuje ją na żywo od dostawcy.
LimityLimit czasu, liczba ponowień (błędy limitu zapytań i serwera) oraz maksymalny rozmiar odpowiedzi.
Zezwól na adresy sieci prywatnejPotrzebne tylko dla modeli lokalnych (Ollama, LM Studio). Usługi publiczne nigdy tego nie wymagają.

Dodawanie usługi, której nie ma na liście

Zduplikuj profil OpenAI-compatible (wiele usług używa tego protokołu) albo zacznij od podobnego profilu i zmień adres, nagłówki i ścieżki. Konsola testowa podpowie, co poprawić. Profile można eksportować i importować jako pliki JSON, więc możesz udostępnić działający profil.

Wbudowane zabezpieczenia

Każde wywołanie przechodzi przez kontrolę adresu, która blokuje sieci prywatne, adresy link-local i adresy metadanych chmury (chyba że dla danego profilu zezwolisz na sieci prywatne), odrzuca przekierowania, ogranicza rozmiar odpowiedzi i czas oraz nigdy nie zapisuje Twojego klucza w logach ani komunikatach o błędach.

Wyłączony dostawca zachowuje ustawienia, ale boty przestają z niego korzystać. Bot może też mieć dostawcę zapasowego (licencje płatne), którego użyje, gdy pierwszy zawiedzie.

Boty

Bot to jeden asystent czatu. Jego edytor ma karty, a każde pole ma ikonę pomocy "?". Zapisz raz na końcu; niezapisane zmiany są oznaczane, jeśli opuścisz stronę.

Lista botów z dostawcą, statusem i szybkimi akcjami.
Lista botów z dostawcą, statusem i szybkimi akcjami.
Edytor bota.
Edytor bota.

Ogólne

NazwaNazwa bota w Twoim panelu.
Notatka wewnętrznaPrywatna notatka, na przykład dla jakiej strony jest ten bot.
AktywnyOdwiedzającym odpowiadają tylko aktywne boty. Nieaktywny bot zachowuje wszystkie ustawienia i rozmowy.
Dostawca AI i ModelKtóra usługa i który model odpowiadają. Lista modeli zależy od wybranego dostawcy; Inny model… pozwala wpisać dowolny identyfikator modelu.
Dostawca zapasowy i model zapasowyDrugi dostawca, użyty, gdy pierwszy zawiedzie (licencje płatne).

Temat i prompt

Wypełniasz formularz zamiast pisać prompt. Aplikacja składa sprawdzony zestaw instrukcji wokół Twoich tekstów i zawsze dołącza zasady bezpieczeństwa, których nie da się usunąć.

Zacznij od gotowego zestawuWsparcie, sprzedaż, FAQ, rekrutacja, edukacja lub ogólny: uzupełnia sensowny temat, zakres, ton i odpowiedź zastępczą.
Do czego służy ten bot?Jedno lub dwa zdania o zadaniu bota.
Tematy, w których pomaga / Tematy, których nie poruszaJeden temat w wierszu.
Pytania spoza tematuOdmów grzecznie, skieruj do swoich tematów albo odpowiedz bardzo krótko i wróć do tematu.
Ton i forma zwracania sięNeutralny, formalny, przyjazny, zwięzły lub swobodny; zwracanie się formalne lub nieformalne (ma znaczenie w polskim, niemieckim i podobnych językach).
Język odpowiedziOdpowiadaj w języku odwiedzającego albo zawsze w jednym stałym języku (który wybiera także teksty widgetu).
Informacje o firmieFakty, na których bot ma się opierać: oferta, ceny, godziny, zasady, kontakty. Do 6000 znaków. Bot powie, że czegoś nie wie, zamiast wymyślać to, czego tu nie ma. Dla większej ilości materiału użyj bazy wiedzy.
Gdy nie potrafi odpowiedziećZdanie, którego bot używa, gdy nie ma odpowiedzi, na przykład "Napisz na help@example.com". Oznacza też rozmowę jako "bez odpowiedzi" w statystykach.
Przykładowe odpowiedziOpcjonalne pary "Q:" i "A:" pokazujące styl, jakiego oczekujesz.
Użycie bazy wiedzyUżywaj jej i korzystaj z wiedzy ogólnej, odpowiadaj tylko z bazy wiedzy albo nie używaj jej. Fragmentów na pytanie: od 1 do 8.
Zaawansowane: własny promptZastępuje wygenerowane instrukcje. Zasady bezpieczeństwa i kontekst strony są nadal dodawane. Dostępne są zmienne, takie jak {{site_name}}, {{current_date}} i {{page_title}}.

Podgląd końcowego promptu pokazuje dokładnie to, co otrzyma model, łącznie z zasadami bezpieczeństwa.

Model

Temperatura i Top-pKreatywność odpowiedzi. Zostaw puste, aby użyć wartości domyślnej dostawcy (niektóre modele dopuszczają tylko domyślną).
Maksymalna długość odpowiedzi (tokeny)600 to około 450 słów. Dłuższe odpowiedzi kosztują więcej.
Zapamiętywane wiadomościIle wcześniejszych wiadomości widzi model. Więcej kontekstu to więcej zużytych tokenów.

Wygląd

Kolor główny (kolor tekstu dopasowuje się automatycznie), motyw jasny, ciemny lub automatyczny, pozycja (lewa lub prawa), odstępy od krawędzi, rozmiar okna, zaokrąglenie rogów, ikona i etykieta przycisku, obrazek awatara oraz, dla zaawansowanych, własny CSS stosowany tylko wewnątrz okna czatu (licencje płatne).

Zachowanie

Pokazuj wskaźnik pisaniaAnimowane kropki, gdy odpowiedź jest przygotowywana.
Pokazuj kciuki w górę/w dół pod odpowiedziamiPozwala odwiedzającym oceniać odpowiedzi; oceny widać w Rozmowach i Statystykach.
Pokazuj źródła pod odpowiedziamiPokazuje strony, na których opiera się odpowiedź modelu, o ile model je poda.
Maksymalna długość wiadomości (znaki)Chroni przed ogromnymi wklejonymi tekstami, które kosztują tokeny.
Otwieraj automatyczniePo upływie czasu lub po przewinięciu części strony, raz na sesję przeglądarki (licencje płatne).

Zapytania kontaktowe

Zobacz rozdział "Zapytania kontaktowe".

Gdzie i kiedy

Pokazuj czat na każdej stronie, tylko na stronach pasujących do wzorców albo wszędzie poza nimi (wzorce używają *); na wszystkich urządzeniach, tylko na komputerach lub tylko na telefonach; tylko w godzinach działania, z komunikatem lub bez niczego poza nimi. Licencje płatne.

Teksty

Dla każdego języka: tytuł okna, powitanie, podpowiedź w polu wiadomości, sugerowane pytania (do pięciu przycisków), informacja o AI, komunikaty błędu i "poza godzinami", etykieta przycisku wysyłania oraz wstęp i podziękowanie formularza kontaktowego. Puste pola używają wbudowanych tłumaczeń, więc widget mówi językiem odwiedzającego, nawet jeśli nic nie wpiszesz.

Bezpieczeństwo

Dozwolone stronyJedna strona w wierszu (example.com lub *.example.com). Zapytania z każdej innej strony są odrzucane, co powstrzymuje innych przed używaniem Twojego bota i Twojego kredytu AI.
Wiadomości na minutę na odwiedzającegoLimit zapytań chroniący przed nadużyciami.
Dzienny budżet tokenówTwardy limit tokenów na dzień (0 = bez limitu). Po wyczerpaniu bot informuje odwiedzających, że jest niedostępny do jutra.
Wiadomości w rozmowieRozmowa kończy się po tylu wiadomościach.
Zablokowane słowaWiadomości, które je zawierają, nigdy nie trafiają do AI.

Prywatność

Zapis rozmówPełny zapisuje teksty, żebyś mógł je czytać; Same metadane zapisuje tylko liczby i czasy; Wyłączony nie zapisuje niczego.
Adres IP odwiedzającegoZapisywany w skróconej postaci (bez ostatniej części) albo wcale.
Adres polityki prywatnościLink pokazywany obok informacji o AI.
Informuj odwiedzających, że rozmawiają z AIZalecane; wymagane dla chatbotów przez unijny akt o sztucznej inteligencji (art. 50). Wyłączenie tej opcji jest zapisywane w dzienniku audytu.
Czyszczenie starych rozmówStosuj domyślne zasady z Ustawień albo ustaw własne limity wieku, liczby i rozmiaru dla tego bota.

Branding

Mała linijka "Powered by" na dole czatu. W licencji Free jest zawsze włączona; Single i Agency mogą ją ukryć; Agency może zmienić jej tekst i link (white label).

Osadzanie i Czat testowy

Karta Osadzanie zawiera skrypt, wtyczkę WordPress i gotową stronę testową. Czat testowy pozwala rozmawiać z botem w panelu bez zapisywania czegokolwiek.

Umieszczanie czatu na stronie

Jedna linijka kodu albo jedna mała wtyczka. Widget rysuje się wewnątrz Shadow DOM, więc style Twojej strony nie mogą go zepsuć, a on nie może zepsuć Twojej strony.

Dowolna strona

Otwórz bota, kartę Osadzanie, skopiuj skrypt i wklej go tuż przed zamykającym znacznikiem </body> na każdej stronie, na której czat ma się pojawić:

<script src="https://your-site/ai-chat-widget/assets/widget/loader.js"
        data-bot="YOUR-BOT-ID" async></script>

Następnie dodaj swoją stronę w Bezpieczeństwo > Dozwolone strony, w przeciwnym razie czat się tam nie załaduje.

WordPress

Karta Osadzanie oferuje małą wtyczkę (plik .zip lub pojedynczy plik .php, jeśli serwer nie ma rozszerzenia zip). Wgraj ją w Wtyczki > Dodaj nową > Wyślij wtyczkę na serwer, aktywuj, a czat pojawi się na każdej stronie. Wtyczka dodaje tylko linijkę skryptu z identyfikatorem Twojego bota; czat, klucze AI i rozmowy zostają na Twojej instalacji.

Opcjonalne atrybuty skryptu

AtrybutZnaczenie
data-context-titleTytuł strony wysyłany do bota (w przeciwnym razie tytuł dokumentu).
data-context-urlAdres strony wysyłany do bota (w przeciwnym razie bieżący adres).
data-langWymuś język widgetu (w przeciwnym razie język strony lub przeglądarki odwiedzającego).
data-apiAdres api.php, jeśli Twoja instalacja jest pod inną ścieżką.

Sterowanie czatem ze swojej strony

AIChatWidget.open();    // open the window
AIChatWidget.close();   // close it
AIChatWidget.toggle();  // open or close
AIChatWidget.setContext({ title: 'Red city bike', url: location.href });

Użyj tego, aby otworzyć czat własnym przyciskiem albo powiedzieć botowi, jaki produkt ogląda odwiedzający.

Co widzą odwiedzający

Okrągły przycisk w rogu; okno z nagłówkiem (tytuł, przycisk kontaktu, gdy jest włączony, restart, zamknięcie), rozmowa z formatowaniem Markdown, przyciski sugerowanych pytań, kciuki, linki do źródeł, informacja o AI i pole wpisywania. Na telefonach okno wypełnia ekran. Rozmowa przetrwa przeładowanie strony w ramach sesji przeglądarki.

Widget na stronie, z odpowiedzią zawierającą link do źródła.
Widget na stronie, z odpowiedzią zawierającą link do źródła.

Baza wiedzy

Baza wiedzy zawiera fakty, z których odpowiadają Twoje boty: ceny, zasady, FAQ, szczegóły produktów. Gdy odwiedzający o coś pyta, bot wyszukuje najlepiej pasujące fragmenty i odpowiada na ich podstawie, zamiast zgadywać.

Dokumenty, test wyszukiwania i ustawienia importu.
Dokumenty, test wyszukiwania i ustawienia importu.

Sposoby dodawania treści

TekstWklej dowolny tekst. Długie teksty są automatycznie dzielone na akapity; linia zaczynająca się od # lub napisana wielkimi literami jest traktowana jako nagłówek, który zostaje z tekstem pod nim.
Pytania i odpowiedziZapisz każdą parę jako Q: ... i A: ... (także Pytanie/Odpowiedź, Frage/Antwort, Question/Réponse, Domanda/Risposta, Pregunta/Respuesta). Każda para zostaje w całości, co daje najlepsze wyniki.
PlikTXT, Markdown, HTML, CSV (dwie kolumny: pytanie, odpowiedź), PDF i Word DOCX. Pliki PDF i DOCX mogą mieć do 8 MB, pozostałe do 600 KB. Starsze kodowania środkowoeuropejskie są konwertowane.
Strona internetowaCzyta tekst publicznej strony lub linku do PDF. Podaj adres mapy witryny, aby zaimportować naraz do 25 stron tego samego serwisu. Przyjmowane są tylko adresy https; menu, stopki i skrypty są pomijane.
Dodawanie listy pytań i odpowiedzi.
Dodawanie listy pytań i odpowiedzi.
Zeskanowany PDF (obrazy tekstu) nie ma zaznaczalnego tekstu i jest odrzucany z wyjaśnieniem: wyeksportuj PDF z tekstem albo wklej tekst. Rozpoznawanie tekstu nie jest częścią produktu. PDF-y chronione hasłem są również odrzucane.

Który bot używa dokumentu

Każdy dokument należy do jednego bota albo do wszystkich botów. Użyj "wszystkich botów" dla faktów dotyczących całej firmy, takich jak wysyłka i zwroty. Dokument można wyłączyć bez usuwania. Zaimportowane strony można wczytać ponownie jednym kliknięciem, aby je odświeżyć.

Jak bot z niej korzysta

Na karcie bota Temat i prompt wybierz tryb:

  • Używaj jej, a w razie braku korzystaj z wiedzy ogólnej (domyślnie). Pasujące fragmenty są dodawane do instrukcji. Bot może nadal korzystać z wiedzy ogólnej tam, gdzie fragmenty niczego nie mówią.
  • Odpowiadaj tylko z bazy wiedzy. Gdy nic nie pasuje, AI w ogóle nie jest pytane: bot odpowiada tekstem "gdy nie potrafi odpowiedzieć", co nie kosztuje tokenów, zapobiega zmyślonym odpowiedziom i oznacza pytanie jako bez odpowiedzi.
  • Nie używaj.

Bardzo krótkie pytanie uzupełniające, takie jak "a gwarancja?", jest wyszukiwane razem z poprzednim pytaniem. Dokumenty pochodzące z adresu internetowego dodają pod odpowiedzią link do źródła.

Wyszukiwanie

Wyszukiwanie nie wymaga zewnętrznej usługi. Tekst jest dzielony na fragmenty; słowa są sprowadzane do rdzeni (akcenty i końcówki nie mają znaczenia), indeks pełnotekstowy bazy danych wybiera kandydatów, a ranking trafności (BM25) wybiera najlepsze. Działa we wszystkich sześciu językach panelu. Pytanie w innym języku niż dokument nie zostanie dopasowane: pisz dokumenty w języku, którego używają Twoi odwiedzający.

Wypróbuj wyszukiwanie

Pole Wypróbuj wyszukiwanie na stronie Baza wiedzy pokazuje, jakie fragmenty otrzymałby bot dla danego pytania, wraz z oceną trafności. Użyj go po dodaniu dokumentów.

Domykanie pętli

W Statystyki przy każdym pytaniu bez odpowiedzi jest link Dodaj odpowiedź do bazy wiedzy. Otwiera on formularz pytania i odpowiedzi z już uzupełnionym pytaniem i botem. Wpisz odpowiedź i zapisz: następnym razem bot będzie ją znał.

Limity

PlanDokumentyŁączny rozmiar
Free5100 KB
Single1002 MB
AgencyBez limituBez limitu
Najlepiej działają krótkie fragmenty. Jeden fakt na akapit, pytania zapisane tak, jak zadają je odwiedzający, i żadnych nieaktualnych duplikatów: bot nie wie, która wersja jest prawidłowa.

Zapytania kontaktowe

Gdy bot nie może pomóc, odwiedzający może zostawić swoje dane zamiast opuszczać stronę. Dostajesz e-mail o każdym zapytaniu oraz listę w panelu.

Formularz kontaktowy wewnątrz czatu.
Formularz kontaktowy wewnątrz czatu.

Włączanie

  1. 1
    Skonfiguruj pocztę wychodzącą w Ustawienia > E-mail i wyślij wiadomość testową.
  2. 2
    Otwórz bota, kartę Zapytania kontaktowe, zaznacz Zbieraj zapytania kontaktowe.
  3. 3
    Wybierz, kiedy formularz jest oferowany: przycisk w nagłówku czatu i/lub zaraz po odpowiedzi, której bot nie potrafił udzielić.
  4. 4
    Wybierz, które pola się pojawią (imię, telefon, wiadomość: ukryte, opcjonalne lub wymagane; adres e-mail jest zawsze wymagany), czy pytać o zgodę i kto otrzymuje powiadomienia.
Powiadamiaj te adresyJeden w wierszu. Puste oznacza każdego administratora. Adres odwiedzającego jest ustawiany jako Reply-To, więc odpowiadasz prosto ze swojej skrzynki.
Pytaj o zgodęDodaje wymagane pole wyboru ze zdaniem zgody i linkiem do Twojej polityki prywatności. Zalecane ze względu na RODO.
Wyślij potwierdzenie odwiedzającemuKrótki e-mail z podziękowaniem dla odwiedzającego (licencje płatne). Treść można edytować w Ustawienia > Teksty e-maili.

Obsługa zapytań

Zapytania kontaktowe z filtrami i statusem.
Zapytania kontaktowe z filtrami i statusem.

Strona Zapytania kontaktowe wyświetla każde zapytanie z filtrami (wyszukiwanie, bot, status). Otwórz zapytanie, aby zobaczyć wiadomość, stronę, na której był odwiedzający, i rozmowę, z której pochodzi. Oznaczaj zapytania jako obsłużone, usuwaj je pojedynczo lub zbiorczo i eksportuj do CSV (licencje płatne). Aktywne filtry są wyróżnione i policzone obok "Wyczyść filtry".

Ochrona

Formularz działa także poza godzinami działania. Ma ukryte pole-pułapkę na boty, limit sześciu zapytań na odwiedzającego i trzech na adres e-mail w ciągu godziny oraz sprawdza każde pole po stronie serwera.

Zapytania kontaktowe zawierają dane osobowe. W Ustawienia > Rozmowy możesz ustawić ich automatyczne usuwanie po określonej liczbie dni.

Rozmowy

Czytaj, o co pytali odwiedzający, oznaczaj to, co ważne, i utrzymuj porządek w bazie danych bez żadnego zadania cron.

Lista rozmów z filtrami.
Lista rozmów z filtrami.

Lista

Filtruj według bota, zakresu dat, szukanego tekstu i widoku: wszystkie, przypięte, bez odpowiedzi, ocenione jako niepomocne lub z błędami. Każdy wiersz pokazuje sygnały: oceny (kciuk), „bez odp." i błędy dostawcy. Otwórz rozmowę, aby przeczytać całą wymianę wraz z tokenami, czasem odpowiedzi i flagami.

Rozmowa: wiadomości, oceny i linki do źródeł.
Rozmowa: wiadomości, oceny i linki do źródeł.

Działania

Przypinaj rozmowy, które chcesz zachować, usuwaj jedną lub wiele albo usuń wszystkie rozmowy jednego bota. Eksport (CSV lub JSON, licencje płatne) uwzględnia Twoje filtry; komórki CSV, które mogłyby zostać uruchomione jako formuły arkusza, są neutralizowane.

Tryby zapisu

To, co jest przechowywane, zależy od ustawienia Zapis rozmów każdego bota: pełne teksty, tylko metadane (liczby, czasy, oceny) albo nic. Przy „Same metadane" lub „Wyłączony" historię na czas sesji przechowuje przeglądarka odwiedzającego.

Automatyczne czyszczenie

Stare rozmowy są usuwane według reguł: wieku, liczby i rozmiaru, osobno dla każdego bota (własne reguły lub domyślne) oraz dla całej bazy (łączna liczba i łączny rozmiar). Przypięte rozmowy nigdy nie są usuwane automatycznie. Nie ma zadania cron: czyszczenie uruchamia się samo podczas korzystania z aplikacji, najwyżej raz na minutę. Wyczyść teraz najpierw pokazuje podgląd (ile rozmów, ile kilobajtów i dlaczego) i prosi o potwierdzenie.

Statystyki

Liczniki są przechowywane jako anonimowe sumy dzienne, więc statystyki działają nawet dla botów, które nie zapisują rozmów.

Siedem, trzydzieści lub dziewięćdziesiąt dni, dla wszystkich botów lub jednego.
Siedem, trzydzieści lub dziewięćdziesiąt dni, dla wszystkich botów lub jednego.

Kafelki pokazują odpowiedzi, tokeny, błędy, pytania bez odpowiedzi, zablokowane wiadomości i oceny. Trzy wykresy pokazują odpowiedzi, tokeny i problemy w podziale na dni. Tabela porównuje Twoje boty. Z licencją płatną dwie listy pokazują najnowsze pytania, na które bot nie potrafił odpowiedzieć (każde z linkiem do dodania odpowiedzi do bazy wiedzy) oraz odpowiedzi ocenione jako niepomocne: to najszybszy sposób na ulepszenie bota.

Ustawienia

Opcje całej aplikacji, w zakładkach.

OgólneNazwa aplikacji, język domyślny, strefa czasowa, limit czasu sesji, jak długo przechowywany jest dziennik audytu, „wymagaj weryfikacji dwuetapowej od wszystkich użytkowników", ikony pomocy „?" oraz strumieniowanie odpowiedzi (z testem Twojego serwera).
WyglądKolor panelu: wybierz gotowy zestaw lub własny kolor.
E-mailPoczta wychodząca (zobacz następny rozdział).
Teksty e-mailiTreść każdego e-maila wysyłanego przez aplikację.
RozmowyDomyślne reguły czyszczenia, limity dla całej bazy i czas przechowywania zapytań kontaktowych. Zawiera „Wyczyść teraz".
LicencjaWpisz lub usuń klucz licencyjny.
BrandingUkryj informację „Powered by" (licencje płatne).
Dane demoWczytaj lub usuń przykładowe boty, rozmowy, zapytania kontaktowe i dokumenty.

Strumieniowanie odpowiedzi

Przy włączonym strumieniowaniu odwiedzający widzą, jak odpowiedź pojawia się słowo po słowie. Wymaga to serwera, który nie wstrzymuje odpowiedzi, dlatego najpierw kliknij Testuj strumieniowanie: test wysyła sześć fragmentów co pół sekundy i pokazuje, czy docierają jeden po drugim. Jeśli test pokaże, że wszystko dotarło naraz, zostaw strumieniowanie wyłączone. Dostawcy, którzy nie obsługują strumieniowania, po prostu przesyłają całą odpowiedź naraz.

E-mail i powiadomienia

Poczta wychodząca służy do resetu hasła, kodów logowania i powiadomień o nowych zapytaniach kontaktowych. Jest opcjonalna; wszystko inne działa bez niej.

Ustawienia SMTP z wiadomością testową.
Ustawienia SMTP z wiadomością testową.

Konfiguracja

Sposób wysyłkiSerwer SMTP (zalecane), wbudowana funkcja PHP mail() serwera www (często trafia do spamu) albo wyłączona.
Adres serwera, port, szyfrowanieDane od Twojego dostawcy poczty, na przykład smtp.example.com, port 587 ze STARTTLS lub 465 z SSL/TLS.
Nazwa użytkownika i hasłoDane logowania do konta pocztowego. Hasło jest przechowywane w postaci zaszyfrowanej; zostaw pole puste, aby zachować zapisane.
Adres e-mail i nazwa nadawcyPowinny należeć do Twojego konta pocztowego lub domeny, w przeciwnym razie wiele serwerów odrzuca wiadomości.
Adres do odpowiedziOpcjonalnie.

Kliknij Zapisz i wyślij e-mail testowy. Jeśli wiadomość dotrze, wszystko działa.

Teksty e-maili

Każdy e-mail można edytować osobno dla każdego języka.
Każdy e-mail można edytować osobno dla każdego języka.

W Ustawienia > Teksty e-maili wybierz e-mail (link do resetu hasła, powiadomienie o zmianie hasła, kod logowania, nowe zapytanie kontaktowe, potwierdzenie dla odwiedzającego, testowy) i język, a następnie edytuj temat i treść. {placeholders}, takie jak {name}, {link} czy {code}, są uzupełniane w chwili wysyłania e-maila. Przywróć tekst wbudowany wraca do ustawień domyślnych. E-maile do osób są pisane w języku wybranym w ich profilu.

Konta, logowanie dwuetapowe i dziennik audytu

Każdy użytkownik jest administratorem; nie ma ról do skonfigurowania. Dostępu strzegą hasła, opcjonalne logowanie dwuetapowe i pełny ślad audytu.

Użytkownicy

W Użytkownicy dodawaj lub usuwaj administratorów (ich liczba zależy od licencji), zresetuj kolegom weryfikację dwuetapową, jeśli zgubili urządzenie, i sprawdzaj, kto i kiedy się logował.

Logowanie dwuetapowe

Dwa sposoby dodania drugiego kroku.
Dwa sposoby dodania drugiego kroku.

Otwórz Mój profil > Weryfikacja dwuetapowa i wybierz jeden:

  • Aplikacja uwierzytelniająca. Zeskanuj lub wpisz klucz w aplikacji, takiej jak Google Authenticator, Microsoft Authenticator lub Aegis, a następnie wpisz 6-cyfrowy kod, aby potwierdzić.
  • Kod e-mailem. 6-cyfrowy kod jest wysyłany e-mailem przy każdym logowaniu (ważny dziesięć minut, pięć prób). Wymaga działającej poczty wychodzącej. Potwierdzasz, wpisując kod wysłany na Twój adres.

W obu przypadkach jednorazowo otrzymasz kody odzyskiwania. Przechowuj je w bezpiecznym miejscu: każdy działa tylko raz, gdy nie możesz użyć zwykłego drugiego kroku. Ustawienia > Ogólne > Wymagaj weryfikacji dwuetapowej od wszystkich użytkowników czyni ją obowiązkową dla wszystkich.

Nie pamiętasz hasła

Gdy poczta wychodząca jest skonfigurowana, strona logowania pokazuje Nie pamiętasz hasła?. Na e-mail wysyłany jest jednorazowy link ważny 60 minut; ta sama odpowiedź jest pokazywana niezależnie od tego, czy adres istnieje. Ustawienie nowego hasła zdejmuje blokadę konta i wysyła powiadomienie. Bez poczty inny administrator ustawia dla Ciebie nowe hasło w Użytkownicy.

Blokady i limity

Pięć błędnych haseł blokuje konto na 15 minut; zbyt wiele nieudanych prób z jednego adresu jest ograniczanych. Sesje wygasają po czasie ustawionym w Ustawieniach.

Dziennik audytu

Kto, co zrobił i z jakiego adresu.
Kto, co zrobił i z jakiego adresu.

Każde ważne działanie jest zapisywane: logowania i niepowodzenia, zmiany ustawień, zmiany kluczy i licencji, zmiany użytkowników, eksporty, usunięcia. Dziennik nigdy nie przechowuje haseł, kluczy ani treści wiadomości. Stare wpisy są usuwane po liczbie dni ustawionej w Ustawieniach.

Informacje o systemie, aktualizacje i dane demo

Szczegóły techniczne i narzędzia na jedno kliknięcie.

Wersja, PHP, rozszerzenia, baza danych i oczekujące aktualizacje.
Wersja, PHP, rozszerzenia, baza danych i oczekujące aktualizacje.

Informacje o systemie pokazują wersje aplikacji i PHP, bazę danych, które rozszerzenia PHP są załadowane, uprawnienia plików oraz listę aktualizacji bazy danych (migracji). Gdy nowa wersja wprowadza zmiany w bazie danych, pulpit pokazuje komunikat; otwórz Informacje o systemie i kliknij Zastosuj aktualizacje. Aktualizacje są numerowane, uruchamiane jednorazowo i można je bezpiecznie powtórzyć.

Dane demo

Ustawienia > Dane demo wczytuje cztery przykładowe boty (sklep rowerowy, FAQ kancelarii prawnej, asystent sprzedaży SaaS, rekrutacja) z około stu rozmowami rozłożonymi na sześć miesięcy, w tym przypiętymi i ocenionymi, pytania bez odpowiedzi, zapytania kontaktowe i dokumenty bazy wiedzy. Automatyczne czyszczenie jest wstrzymane na czas ich wczytania (inaczej celowo stare rozmowy by zniknęły). Usuń dane demo usuwa dokładnie boty demo i ich dane oraz przywraca Twoje poprzednie ustawienie czyszczenia.

Licencje

Aplikacja jest bezpłatna do własnego użytku. Licencje płatne są przeznaczone do użytku komercyjnego i znoszą limity.

FreeSingleAgency
ZastosowanieWłasny użytekKomercyjne, jedna domena instalacjiKomercyjne, wiele domen
Boty210Bez limitu
Dozwolone strony (wszystkie boty)210Bez limitu
Administratorzy15Bez limitu
Baza wiedzy5 dokumentów, 100 KB100 dokumentów, 2 MBBez limitu
Informacja „Powered by"Zawsze widocznaMożna ukryćMożna ukryć i zastąpić (white label)
Dostawca zapasowy-TakTak
Targetowanie, godziny otwarcia, automatyczne otwieranie, własny CSS-TakTak
Listy w statystykach (bez odpowiedzi, niepomocne)Tylko liczbyTakTak
Eksport rozmów i zapytań kontaktowych-TakTak
E-mail z potwierdzeniem dla odwiedzającego-TakTak

Aktywacja klucza

Przejdź do Ustawienia > Licencja, wklej klucz i zapisz. Klucz jest weryfikowany na Twoim serwerze za pomocą wbudowanego klucza publicznego i jest przypisany do Twojej domeny: żadne dane nie są nigdzie wysyłane. Jeśli klucz nie pasuje do domeny lub wygasł, aplikacja pozostaje w wersji Free; działające widgety nigdy nie są wyłączane, ograniczone jest tylko tworzenie nowych elementów.

Licencje są wydawane w sklepie CreativAI. Ceny i plany są tam opublikowane.

Funkcje w skrócie

Wiele botów

Różne tematy, wygląd, teksty, reguły i listy stron, każdy z własnym dostawcą i modelem.

Dowolny dostawca AI

Czternaście gotowych profili plus Twoje własne, konfigurowane danymi, testowane na żywo, z dostawcą zapasowym.

Baza wiedzy

Tekst, Q&A, TXT, MD, CSV, HTML, PDF, DOCX, strony www i mapy witryn, przeszukiwane bez dodatkowych usług.

Zapytania kontaktowe

Formularz w czacie, powiadomienia e-mail, lista z eksportem i automatycznym usuwaniem.

Rozmowy

Wyszukiwanie, filtry, przypinanie, oceny, eksport i czyszczenie według wieku, liczby i rozmiaru.

Statystyki

Sumy dzienne, wykresy, pytania bez odpowiedzi i niepomocne odpowiedzi, z poprawkami jednym kliknięciem.

Strumieniowanie

Opcjonalne odpowiedzi słowo po słowie z wbudowanym testem Twojego serwera.

Sześć języków

Angielski, polski, niemiecki, francuski, włoski i hiszpański, w panelu i w widgecie.

Bezpieczeństwo od podstaw

Logowanie dwuetapowe, ochrona CSRF, szyfrowane klucze, dziennik audytu, listy dozwolonych stron, limity i budżety.

E-mail

Reset hasła, kody logowania e-mailem i powiadomienia z edytowalnymi tekstami w każdym języku.

WordPress i dowolna strona

Jedna linijka skryptu lub mała wtyczka, z widgetem w Shadow DOM, który nigdy nie koliduje z Twoimi stylami.

Opcje prywatności

Pełny zapis, tylko metadane lub brak zapisu, skracane adresy IP, informacja o AI, pole zgody, reguły przechowywania.

Dla zaawansowanych

Dla programistów: API widgetu

Widget komunikuje się z api.php na Twoim serwerze. Nie ma ciasteczek ani sesji: odwiedzający to losowy token przechowywany w przeglądarce.

ŻądanieCel
GET api.php?a=config&bot=ID&lang=xxKonfiguracja widgetu i teksty w języku odwiedzającego.
POST api.php?a=message&bot=IDJedna wiadomość odwiedzającego (treść JSON). Dodaj &stream=1, aby otrzymać zdarzenia wysyłane przez serwer, gdy strumieniowanie jest włączone.
POST api.php?a=rate&bot=IDKciuk w górę lub w dół dla odpowiedzi (podpisane odwołanie).
POST api.php?a=lead&bot=IDZapytanie kontaktowe (treść JSON).
GET api.php?a=test&bot=IDMała strona testowa z widgetem.

Każde żądanie musi pochodzić z dozwolonej strony (nagłówek Origin jest sprawdzany względem listy bota). Odpowiedzi są w formacie JSON z polem ok, a w razie błędów z kodem error i przetłumaczonym message. Odpowiedzi strumieniowe używają zdarzeń delta (fragment tekstu), done (odpowiedź końcowa, rozmowa, podpis, źródła) i error.

API jest przeznaczone dla dołączonego widgetu. Jego szczegóły mogą się zmieniać między wersjami; integracje buduj na skrypcie osadzania i funkcjach AIChatWidget.

Prywatność i uwagi o RODO

To Ty decydujesz, co jest przechowywane. Te przełączniki pomagają wypełnić Twoje obowiązki; nie są poradą prawną.

  • Tryb zapisu dla każdego bota. Pełny, same metadane lub wyłączony. Wybierz to, czego naprawdę potrzebujesz.
  • Adresy IP. Przechowywane w skróconej postaci (bez ostatniej części) lub wcale.
  • Przechowywanie. Usuwaj rozmowy według wieku, liczby lub rozmiaru, a zapytania kontaktowe po określonej liczbie dni. Obie reguły działają automatycznie.
  • Usuwanie na żądanie. Usuń rozmowy danej osoby z listy (wyszukaj tekst) oraz jej zapytanie kontaktowe w Zapytania kontaktowe.
  • Informacja o AI. Krótkie zdanie w czacie, że odwiedzający rozmawia z AI; linki do Twojej polityki prywatności.
  • Zgoda. Wymagane pole wyboru w formularzu kontaktowym.
  • Dane w przesyłaniu. Wiadomości są wysyłane do wybranego dostawcy AI. Sprawdź jego warunki i umowę powierzenia przetwarzania danych oraz wspomnij o tym w swojej polityce prywatności. Wybierz dostawcę lub model zgodny z Twoimi obowiązkami albo model lokalny (Ollama, LM Studio), jeśli dane nie mogą opuszczać Twojego serwera.
  • Twoje dane zostają u Ciebie. Sama aplikacja nie wysyła niczego do CreativAI.

Przegląd zabezpieczeń

Obrona wielowarstwowa, bez dodatkowych usług.

  • Logowanie. Hasła przechowywane jako skróty, blokada po powtarzających się niepowodzeniach, opcjonalne logowanie dwuetapowe z kodami odzyskiwania, wygasające sesje.
  • Formularze. Ochrona CSRF przy każdej zmianie; cała treść wyjściowa jest zabezpieczona; polityka bezpieczeństwa treści (CSP) z nonce.
  • Sekrety. Klucze AI, hasło SMTP i sekrety weryfikacji dwuetapowej są szyfrowane algorytmem AES-256-GCM za pomocą klucza Twojej aplikacji.
  • Publiczne identyfikatory. Boty, rozmowy i zapytania kontaktowe używają w adresach losowych UUID, nigdy kolejnych numerów.
  • Widget. Zbudowany wyłącznie na wywołaniach DOM (bez surowego HTML z modelu), wewnątrz Shadow DOM; linki z odpowiedzi otwierają się z rel="noopener noreferrer nofollow".
  • Limity nadużyć. Lista dozwolonych stron, limit zapytań, limity długości wiadomości i rozmowy, zablokowane słowa, dzienny budżet tokenów, ukryte pole-pułapka oraz limity na adres w formularzu kontaktowym.
  • Żądania wychodzące. Wywołania AI i importy stron są sprawdzane pod kątem adresów prywatnych i metadanych chmury, przekierowania są weryfikowane na każdym kroku, a rozmiar i czas są ograniczone.
  • Prompt injection. Tekst odwiedzającego, kontekst strony i fragmenty wiedzy są oznaczane jako dane niezaufane, a stałe reguły bezpieczeństwa są zawsze dołączane. Prompt ogranicza to ryzyko, ale go nie usuwa: zawężaj zakres bota i nigdy nie umieszczaj sekretów w instrukcjach bota ani w bazie wiedzy.
  • Pliki. Przesyłane pliki są sprawdzane pod względem typu i rozmiaru oraz odczytywane jako tekst; dokumenty Word są przetwarzane z wyłączonymi encjami zewnętrznymi.

Konserwacja

Krótka rutyna, która utrzymuje instalację w dobrej kondycji.

Kopie zapasowe

Wykonuj kopię dwóch rzeczy: bazy danych i pliku **config/config.php** (zawiera klucz, który odszyfrowuje zapisane klucze AI). Przesłane dokumenty są przechowywane w bazie danych, więc zrzut bazy obejmuje także bazę wiedzy.

Aktualizacja

  1. 1
    Zrób kopię zapasową bazy danych.
  2. 2
    Wgraj nowe pliki na stare; zachowaj config/ i storage/.
  3. 3
    Zaloguj się, otwórz Informacje o systemie i kliknij Zastosuj aktualizacje, jeśli na liście są aktualizacje.
  4. 4
    Naciśnij raz Ctrl+F5, aby odświeżyć arkusz stylów.

Logi

Błędy, których nie można pokazać odwiedzającym, są zapisywane w logu błędów PHP. Dziennik audytu w panelu rejestruje działania administracyjne.

Reguły Nginx

Pliki .htaccess chronią wewnętrzne foldery na Apache. W Nginx dodaj równoważne reguły, na przykład:

location ~ ^/ai-chat-widget/(app|config|database|language|storage|_devs|_idea)/ { deny all; }
location ~* \.(sql|md|lock|log|json)$ { deny all; }

Przy strumieniowaniu za Nginx upewnij się, że proxy_buffering jest wyłączone dla api.php (aplikacja już wysyła X-Accel-Buffering: no).

Limity hostingu, które mają znaczenie

PHP upload_max_filesize i post_max_size ograniczają przesyłanie plików do bazy wiedzy. Duży plik PDF może wymagać memory_limit równego 256 MB lub więcej. Wychodzące połączenia HTTPS muszą być dozwolone dla wywołań AI i importu stron.

Pomoc i rozwiązywanie problemów

Częste problemy i rozwiązania

Zacznij od objawu.

ObjawCo sprawdzić
Widget się nie pojawiaBot jest Aktywny; Twoja strona jest w Dozwolone strony; reguły z zakładki „Gdzie i kiedy" (wzorce, urządzenia, godziny otwarcia) dopuszczają tę stronę; polityka bezpieczeństwa treści Twojej witryny zezwala na skrypt; otwórz stronę testową bota z zakładki Osadzanie, aby porównać.
Czat pokazuje „origin not allowed" lub nic się nie ładujeDodaj dokładną domenę (bez https:// i www.) do Dozwolone strony. *.example.com obejmuje subdomeny.
„Sorry, something went wrong"Dostawca zawiódł. Otwórz Dostawcy AI, uruchom konsolę testową i przeczytaj błąd: zły klucz (401), brak środków lub rozliczeń (402/429), zła nazwa modelu albo przekroczenie czasu. Włącz dostawcę zapasowego dla większej niezawodności.
Odpowiedzi ignorują moje dokumentySprawdź za pomocą Wypróbuj wyszukiwanie. Pytanie i dokument powinny być w tym samym języku; używaj słów, których używają odwiedzający; sprawdź, czy dokument jest aktywny i przypisany do tego bota lub do wszystkich botów; sprawdź, czy tryb bota nie jest ustawiony na „Nie używaj".
PDF jest odrzucanyPrawdopodobnie to skan (bez zaznaczalnego tekstu) lub plik chroniony hasłem. Wyeksportuj PDF z tekstem lub wklej tekst.
Nie można zaimportować strony wwwUżyj publicznego adresu https; stron za logowaniem nie da się odczytać; dla strony w intranecie włącz „Zezwól na adresy w sieci prywatnej" na stronie Baza wiedzy.
E-maile nie docierająWyślij wiadomość testową w Ustawienia > E-mail i przeczytaj błąd. Sprawdź port i szyfrowanie, czy adres nadawcy należy do Twojej domeny oraz folder spam. Dodaj rekordy SPF i DKIM dla swojej domeny.
Brak linku „Nie pamiętasz hasła?"Poczta wychodząca nie jest skonfigurowana. Skonfiguruj Ustawienia > E-mail.
Zgubiłem drugi składnikUżyj kodu odzyskiwania. W przeciwnym razie inny administrator zresetuje Twoją weryfikację dwuetapową w Użytkownicy.
Zablokowałem sobie dostępPoczekaj 15 minut. Mając dostęp do bazy danych, administrator może usunąć blokadę w tabeli users.
Strumieniowanie wygląda na zepsuteUruchom Testuj strumieniowanie w Ustawieniach. Jeśli wszystko dociera naraz, serwer lub proxy buforuje odpowiedzi: zostaw strumieniowanie wyłączone lub napraw buforowanie (zobacz Konserwacja).
Przesyłanie plików nie działaZwiększ upload_max_filesize i post_max_size w PHP; limity to 600 KB dla plików tekstowych i 8 MB dla PDF i Word.
Baner informuje o oczekujących aktualizacjach bazy danychOtwórz Informacje o systemie i kliknij Zastosuj aktualizacje.
Ekrany wyglądają bez stylów po aktualizacjiNaciśnij Ctrl+F5.
Biała strona lub błąd 500Sprawdź log błędów PHP oraz to, czy PHP ma wersję 8.1 lub nowszą i wymagane rozszerzenia (Informacje o systemie).

Odczytywanie błędów dostawcy

KomunikatZwykle oznacza
401 / unauthorizedKlucz API jest brakujący, błędny lub dotyczy innej usługi.
402 / insufficient creditNa koncie nie ma środków lub nie skonfigurowano rozliczeń.
404 / model not foundNazwa modelu jest błędna lub model jest niedostępny dla Twojego konta.
429 / rate limitZbyt wiele żądań lub wykorzystany limit; poczekaj albo zwiększ limit u dostawcy.
timeoutDostawca był zbyt wolny; spróbuj ponownie lub zwiększ limit czasu w profilu.
private networkProfil wskazuje na adres lokalny: włącz „Zezwól na adresy sieci prywatnej" tylko dla tego profilu i tylko wtedy, gdy to model lokalny.

Najczęściej zadawane pytania

Czy potrzebuję programisty, aby z tego korzystać?

Nie. Wszystko konfiguruje się w panelu, a każde pole ma ikonę pomocy. Programista jest potrzebny tylko przy nietypowych integracjach.

Gdzie są przechowywane moje klucze AI?

Zaszyfrowane w Twojej bazie danych. Nigdy nie są wysyłane do przeglądarki odwiedzającego ani zapisywane w logach.

Ile będzie mnie kosztować AI?

Dostawca rozlicza się z Tobą bezpośrednio za tokeny. Użyj dziennego budżetu tokenów, krótkiej długości odpowiedzi i trybu bazy wiedzy „Odpowiadaj tylko z bazy wiedzy", aby koszty były przewidywalne, i obserwuj tokeny na stronie Statystyki.

Czy mogę użyć modelu działającego na moim komputerze lub serwerze?

Tak. Użyj profilu Ollama lub LM Studio i włącz dla niego „Zezwól na adresy sieci prywatnej".

Czy jedna instalacja może obsługiwać kilka stron?

Tak. Dodaj każdą stronę do listy dozwolonych bota albo utwórz jednego bota na stronę. Liczba botów i stron zależy od licencji.

Co się stanie, gdy moja licencja wygaśnie?

Aplikacja wraca do limitów Free. Istniejące widgety nadal działają; zablokowane jest tylko tworzenie nowych botów, stron i dokumentów ponad limity Free.

Czy mogę zmienić treści widgetu?

Tak: zakładka Teksty, osobno dla każdego języka. Puste pola korzystają z wbudowanych tłumaczeń.

Czy działa z kreatorami stron i sklepami internetowymi?

Tak. To jedna linijka skryptu, więc działa wszędzie tam, gdzie możesz edytować stopkę strony lub dodać skrypt. W zestawie jest wtyczka WordPress.

Kontakt

Pytania, sugestie albo coś działa inaczej niż tu opisano? Napisz do autora.