Przejdź do głównej zawartości

Jak zaimplementować chatbota OpenAI na stronie internetowej?

Chcesz wdrożyć chatbota OpenAI na swojej stronie internetowej, ale nie chcesz korzystać z Composera? W tym artykule pokażemy Ci, jak to zrobić krok po kroku, wykorzystując PHP oraz API OpenAI.

1. Instalacja chatbota bez Composera

Aby skomunikować się z OpenAI, możesz użyć funkcji curl w PHP.

Plik bot.php


    <?php
    $api_key = "TWÓJ_OPENAI_API_KEY";
    
    if ($_SERVER["REQUEST_METHOD"] == "POST") {
        $userMessage = $_POST["message"];
    
        $data = [
            "model" => "gpt-3.5-turbo",
            "messages" => [["role" => "user", "content" => $userMessage]],
            "max_tokens" => 50
        ];
    
        $ch = curl_init("https://api.openai.com/v1/chat/completions");
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_POST, true);
        curl_setopt($ch, CURLOPT_HTTPHEADER, [
            "Content-Type: application/json",
            "Authorization: Bearer " . $api_key
        ]);
        curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
    
        $response = curl_exec($ch);
        curl_close($ch);
    
        $response_data = json_decode($response, true);
        echo $response_data["choices"][0]["message"]["content"] ?? "Brak odpowiedzi od AI.";
    }
    ?>
    

Plik index.html

Prosty interfejs użytkownika dla chatbota.


    <div id="chatbox"></div>
    <input type="text" id="inputBox" placeholder="Napisz wiadomość...">
    
    <script>
        document.getElementById("inputBox").addEventListener("keypress", function(event) {
            if (event.key === "Enter") {
                let userMessage = this.value;
                this.value = "";
                
                let chatbox = document.getElementById("chatbox");
                chatbox.innerHTML += "<div><strong>Ty:</strong> " + userMessage + "</div>";
                
                fetch("bot.php", {
                    method: "POST",
                    body: new URLSearchParams({message: userMessage}),
                    headers: {"Content-Type": "application/x-www-form-urlencoded"}
                })
                .then(response => response.text())
                .then(botReply => {
                    chatbox.innerHTML += "<div><strong>Bot:</strong> " + botReply + "</div>";
                    chatbox.scrollTop = chatbox.scrollHeight;
                });
            }
        });
    </script>
    

2. Jak nauczyć chatbota treści z naszej strony?

Jeśli chcesz, aby chatbot znał treści z Twojej strony, masz kilka opcji:

  • Przekazywanie treści w zapytaniu – pobierasz stronę i wysyłasz jej fragment jako kontekst do OpenAI.
  • Baza wiedzy w MySQL – przechowujesz pytania i odpowiedzi w bazie danych.
  • Przeszukiwanie plików tekstowych – chatbot szuka odpowiedzi w lokalnych plikach.

Przykładowe pobranie treści strony w PHP:


    $content = file_get_contents("https://twojastrona.pl/o-nas.html");
    $prompt = "Informacje:
    " . substr($content, 0, 2000) . "\nPytanie: " . $userMessage;
    

Pełny kod znajdziesz w artykule powyżej.

Podsumowanie

Teraz wiesz, jak wdrożyć chatbota OpenAI na swojej stronie bez Composera oraz jak nauczyć go treści ze swojej witryny. Możesz dostosować metodę do swoich potrzeb – prosta integracja API, baza danych lub pliki tekstowe.

Komentarze

Popularne posty z tego bloga

🔒 Jak wdrożyć HTTPS w Apache za pomocą mkcert – prosta i bezpieczna konfiguracja SSL

Bezpieczeństwo połączenia HTTPS to dziś standard — nawet w sieciach lokalnych i aplikacjach testowych. W tym poradniku pokażę Ci, jak w prosty sposób wdrożyć SSL w Apache z pomocą narzędzia mkcert , które tworzy w pełni zaufane certyfikaty lokalne — bez potrzeby kontaktu z Let’s Encrypt czy urzędami certyfikacji. 🧩 Dlaczego warto używać mkcert? mkcert to lekkie narzędzie, które automatycznie generuje certyfikaty zaufane przez przeglądarkę — bez ostrzeżeń o „niebezpiecznym połączeniu”. ✅ działa w sieci lokalnej, ✅ nie wymaga dostępu do Internetu, ✅ certyfikaty są natychmiast zaufane po instalacji CA, ✅ idealne dla środowisk firmowych i intranetów. ⚙️ Krok 1: Instalacja Apache sudo apt update sudo apt install apache2 -y sudo systemctl enable apache2 sudo systemctl start apache2 Po instalacji otwórz w przeglądarce: http://10.0.0.123 Powinna się wyświetlić strona powitalna Apache. 🔧 Krok 2: Instalacja mkcert sudo apt install libnss3-tools wget...

API SHOPER

Jak korzystać z API Shoper - Kompletny przewodnik 1. Wprowadzenie API Shoper umożliwia zautomatyzowanie wielu operacji w Twoim sklepie internetowym, takich jak zarządzanie produktami, zdjęciami, zamówieniami i wieloma innymi elementami. W tym artykule pokażę Ci krok po kroku, jak połączyć się z API Shoper oraz wykonać podstawowe operacje, takie jak dodawanie produktów, zarządzanie zdjęciami i przypisywanie produktów powiązanych. 2. Autoryzacja - Uzyskanie Access Token Aby korzystać z API Shoper, najpierw musisz uzyskać access token : POST https://twojsklep.shoper.pl/webapi/oauth/token Content-Type: application/x-www-form-urlencoded grant_type=client_credentials&client_id=TWOJE_CLIENT_ID&client_secret=TWOJE_CLIENT_SECRET Przykład w PHP: <?php $client_id = 'TWOJE_CLIENT_ID'; $client_secret = 'TWOJE_CLIENT_SECRET'; $ch = curl_init('https://twojsklep.shoper.pl/webapi/oauth/token'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch...

Najbardziej przydatne komendy PowerShell dla admina

Administracja lokalną domeną oraz Microsoft 365 Business Standard wymaga efektywnego zarządzania użytkownikami, komputerami, bezpieczeństwem i integracją z chmurą. Oto zestaw kluczowych komend PowerShell, które pomogą w codziennej pracy administratora IT. 🔹 1. Zarządzanie użytkownikami w Active Directory Lista użytkowników w domenie: Get-ADUser -Filter * Dodanie nowego użytkownika: New-ADUser -Name "Jan Kowalski" -UserPrincipalName jan.kowalski@firma.local -AccountPassword (ConvertTo-SecureString "Hasło123!" -AsPlainText -Force) -Enabled $true Resetowanie hasła użytkownika: Set-ADAccountPassword -Identity jan.kowalski -NewPassword (ConvertTo-SecureString "NoweHasło!" -AsPlainText -Force) Dodanie użytkownika do grupy: Add-ADGroupMember -Identity "IT_Admins" -Members jan.kowalski 🔹 2. Zarządzanie komputerami w domenie Lista komputerów w domenie: Get-ADComputer -Filter * Dodanie nowego komputera do domen...