Comment utiliser OpenAI dans Laravel

Dec 27 2022
Dans ce tutoriel, nous allons apprendre à utiliser le modèle de langage GPT-3 d'OpenAI dans une application Laravel. Nous allons construire un Writebot simple qui utilise GPT-3 pour générer des réponses aux entrées de l'utilisateur.

Dans ce tutoriel, nous allons apprendre à utiliser le modèle de langage GPT-3 d'OpenAI dans une application Laravel. Nous allons construire un Writebot simple qui utilise GPT-3 pour générer des réponses aux entrées de l'utilisateur.

Conditions préalables

Avant de commencer, assurez-vous que vous disposez des éléments suivants :

  • Une application Laravel. Si vous n'en avez pas déjà un, vous pouvez créer un nouveau projet Laravel en exécutant la commande suivante :
  • composer create-project --prefer-dist laravel/laravel my-project
    

Nous utiliserons le client PHP OpenAI pour interagir avec l'API GPT-3. Pour l'installer, exécutez la commande suivante :Copier le code

composer require openai/openai

Ensuite, configurons un contrôleur pour gérer l'interaction avec GPT-3. Créez un nouveau contrôleur appelé WritebotControllerà l'aide de la commande artisanale suivante :

php artisan make:controller WritebotController


<?php

use OpenAI\Client;
use Illuminate\Http\Request;

class WritebotController extends Controller
{
    public function generateResponse(Request $request)
    {
        // Validate the request
        $validatedData = $request->validate([
            'prompt' => 'required|string|max:1024'
        ]);

        // Create a new OpenAI client
        $client = new OpenAI\Client(env('OPENAI_API_KEY'));

        // Set up the GPT-3 request
        $response = $client->completions()->create([
            'engine' => 'davinci',
            'prompt' => $validatedData['prompt'],
            'max_tokens' => 2048,
            'temperature' => 0.5,
        ]);

        // Return the response
        return response()->json([
            'response' => $response->choices[0]->text
        ]);
    }
}

Configuration des itinéraires

Ensuite, configurons les itinéraires pour notre Writebot. Ouvrez le routes/web.phpfichier et ajoutez la route suivante : Copier le code

Route::post('/writebot', 'WritebotController@generateResponse');

Tester le Writebot

Pour tester notre Writebot, nous pouvons utiliser un outil comme Postman pour envoyer une requête POST à ​​la /writebotroute avec une invite comme corps de requête.

Par exemple, si nous envoyons une requête avec l'invite "Quelle est la capitale du franc, nous devrions recevoir une réponse du type : "La capitale de la France est Paris".

Ajouter le Writebot à l'application Laravel

Maintenant que nous avons configuré notre Writebot, nous pouvons l'ajouter à notre application Laravel. Une façon de procéder consiste à créer un formulaire simple qui accepte une invite et affiche la réponse.

Commençons par créer une vue pour le formulaire. Dans le resources/viewsrépertoire, créez un nouveau fichier appelé writebot.blade.phpet ajoutez le code suivant :

<!DOCTYPE html>
<html>
<head>
    <title>Writebot</title>
</head>
<body>
    <form method="POST" action="/writebot">
        @csrf
        <label for="prompt">Prompt:</label><br>
        <textarea name="prompt" rows="4" cols="50"></textarea><br>
        <input type="submit" value="Submit">
    </form> 
    <br>
    <div id="response">
        @if (isset($response))
            {{ $response }}
        @endif
    </div>
</body>
</html>=

Ensuite, mettons à jour le WritebotControllerpour afficher la vue et lui transmettre la réponse. Mettez à jour la generateResponseméthode comme suit :

public function generateResponse(Request $request)
{
    // Validate the request
    $validatedData = $request->validate([
        'prompt' => 'required|string|max:1024'
    ]);

    // Create a new OpenAI client
    $client = new OpenAI\Client(env('OPENAI_API_KEY'));

    // Set up the GPT-3 request
    $response = $client->completions()->create([
        'engine' => 'davinci',
        'prompt' => $validatedData['prompt'],
        'max_tokens' => 2048,
        'temperature' => 0.5,
    ]);

    // Render the view and pass the response
    return view('writebot', [
        'response' => $response->choices[0]->text
    ]);
}

Enfin, ajoutons une route pour le formulaire Writebot. Dans le routes/web.phpfichier, ajoutez la route suivante :

Route::get('/writebot', function () {
    return view('writebot');
});

Conclusion

Dans ce didacticiel, nous avons appris à utiliser le modèle de langage GPT-3 d'OpenAI dans une application Laravel en créant un simple Writebot. Nous avons configuré un contrôleur pour gérer l'interaction avec GPT-3, configuré les routes pour le Writebot et ajouté le bot Write à notre application Laravel en créant un formulaire qui accepte une entrée utilisateur et affiche la réponse de GPT-3.

Il existe de nombreuses autres façons d'utiliser GPT-3 dans vos applications Laravel. Par exemple, vous pouvez l'utiliser pour générer du contenu pour votre site Web ou pour améliorer la fonctionnalité de recherche de votre application.

J'espère que ce tutoriel vous a été utile pour commencer à utiliser GPT-3 dans Laravel. Si vous avez des questions ou des suggestions, n'hésitez pas à demander.