Cómo conectar php con swoole a la interfaz ChatGPT

Se requieren los siguientes pasos para conectarse a la interfaz de ChatGPT:

  1. Instale la extensión Swoole y la extensión PHP cURL.

  2. Introducir en el proyecto composer require guzzlehttp/guzzlepara instalar el cliente HTTP Guzzle.

  3. Escriba el código de solicitud HTTP para llamar a la interfaz de ChatGPT, el código de muestra es el siguiente:

$client = new \GuzzleHttp\Client();
$res = $client->request('POST', 'https://api.openai.com/v1/engines/davinci-codex/completions', [
    'headers' => [
        'Content-Type' => 'application/json',
        'Authorization' => 'Bearer ' . $your_api_key,
    ],
    'json' => [
        'prompt' => 'Hello,',
        'temperature' => 0.5,
        'max_tokens' => 60,
        'n' => 1,
        'stop' => '.',
    ],
]);

if ($res->getStatusCode() == 200) {
    
    
    $response = json_decode($res->getBody(), true);
    echo $response['choices'][0]['text'];
}

En este código de muestra, usamos la biblioteca de cliente HTTP Guzzle para enviar solicitudes HTTP. El encabezado de la solicitud incluye el tipo de contenido (Content-Type) y su clave API. El cuerpo de la solicitud incluye el indicador especificado (indicador) y otros parámetros como la temperatura (temperatura), el número máximo de tokens (tokens máximos) y los tokens de parada (tokens de parada). Podemos usar la respuesta devuelta para obtener el texto generado.

  1. Integre el código anterior en el proyecto Swoole para activar una solicitud HTTP para que ChatGPT genere texto y envíe la respuesta al cliente.

El código de ejemplo es el siguiente:

$server = new Swoole\HTTP\Server("127.0.0.1", 9501);

$server->on("request", function ($req, $res) {
    
    
    $client = new \GuzzleHttp\Client();

    $res = $client->request('POST', 'https://api.openai.com/v1/engines/davinci-codex/completions', [
        'headers' => [
            'Content-Type' => 'application/json',
            'Authorization' => 'Bearer ' . $your_api_key,
        ],
        'json' => [
            'prompt' => 'Hello,',
            'temperature' => 0.5,
            'max_tokens' => 60,
            'n' => 1,
            'stop' => '.',
        ],
    ]);

    if ($res->getStatusCode() == 200) {
    
    
        $response = json_decode($res->getBody(), true);
        $generated_text = $response['choices'][0]['text'];
        $res->end($generated_text);
    } else {
    
    
        $res->end("Error: " . $res->getStatusCode());
    }
});

$server->start();

En este código de muestra, creamos un servidor HTTP Swoole y enviamos la solicitud HTTP en el controlador de eventos "solicitud". Obtenemos el texto generado de la respuesta y enviamos el texto al cliente. Si la solicitud falla, se envía un mensaje de error al cliente.

Los anteriores son los pasos para usar la integración de la interfaz Swoole y ChatGPT en PHP.

Supongo que te gusta

Origin blog.csdn.net/qq_27487739/article/details/131155975
Recomendado
Clasificación