Uzbrojony w sugestie Copilota dotyczące testowania i obsługi błędów, miałem kilka zadań do wykonania, zanim mogłem sprawić, by serwer działał z aplikacją kliencką. Najpierw musiałem ustalić, czy serwer w ogóle działa. Przeglądając kod, wygląda to jak standardowy serwer API Node.js, który powinien być w stanie odebrać wiadomość, przekazać ją do serwera OpenAI i zwrócić odpowiedź w formacie JSON. Korzystając z sugestii testowania od Copilota, uruchomiłem serwer (używając node server.js) i wprowadziłem następujące polecenie curl w nowym oknie terminala (wszystko w jednym wierszu):
curl -X POST -H “Content-Type: application/json” -d ‘
{“message”: “new(5)”}’ http://localhost:3000/chat
Ta komenda powinna nakazać grze w kółko i krzyżyk AI rozpoczęcie nowej gry o poziomie trudności 5. A odpowiedź, którą otrzymałem od serwera, pokazuje, że właśnie to zrobiła:
“message”:{“role”:”assistant”,”content”:”Rozumiem.
Rozpoczynamy nową grę z poziomem trudności 5, co
oznacza mieszankę optymalnych i losowych ruchów. Twój
ruch!”},”finish_reason”:”stop”}],”usage”:{“prompt_tokens”:
199,”completion_tokens”:29,”total_tokens”:228}}}%
Następnie spróbowałem przesłać mój pierwszy ruch, a AI odpowiedziała odpowiednio. Jednak po kilku ruchach mój przeciwnik AI wydawał się tracić kontrolę nad grą, a odpowiedzi zajmowały o wiele za dużo czasu. Moja pierwsza próba gry w kółko i krzyżyk przeciwko AI przy użyciu mojego serwera API jest pokazana na rysunku .

Problem polega na tym, że chociaż ten kod działa, nie ma sposobu, aby śledzić stan gry. Każde żądanie będzie wysyłać tylko najnowszy ruch od klienta do OpenAI. Ponadto AI skorzystałoby z kilku przykładów formatu odpowiedzi, którego szukam. Podawanie sztucznej inteligencji przykładów prawidłowych odpowiedzi nazywa się podpowiadaniem za pomocą niewielu odpowiedzi.