by Devin Yang
(This article was automatically translated.)

Published - 3 years ago ( Updated - 3 years ago )

It seems that everyone is talking about OpenAI recently. If you want to play, you can write a simple API test in Laravel's API.
Because you can use curl to call, you can call through guzzle.

If you log in to the openai website, you can see the official teaching instructions here
https://beta.openai.com/docs/quickstart/build-your-application

API KEY application, just in There is a button at the bottom of this page

+ Create new secret key


Then add the key to Laravel's .env, here I named it
OPENAI_KEY=* 100017*
Add /openai function in routes/api.php

use GuzzleHttp\Client;
use GuzzleHttp\Exception\ClientException;
Route::get('/openai', function (Request $r) {
    if(empty($r->text)){
        return sprintf("Call API:
%s/api/openapi?text=question",env("APP_URL")); } $client = new Client; $api_url = "https://api.openai.com/v1/completions"; $json = <<text", "temperature": 0.9, "max_tokens": 150, "top_p": 1, "frequency_penalty": 0.0, "presence_penalty": 0.6, "stop": ["Human:", "AI:"] } JSON; $json = json_decode(preg_replace('/[\x00-\x1F]/', '', $json), true); try { $r = $client->request('POST', $api_url, [ 'headers' => [ 'Authorization' => 'Bearer ' .env("OPENAI_KEY") ], 'json' => $json ]); } catch (ClientException $e) { return json_decode($e->getResponse()->getBody()->getContents(), true); } return $r; });


Then open the /api/openai?text= of your Laravel project and you can enter the test

There are a lot of examples on the official website for reference. How to set the Json
https://beta.openai.com/examples/

Tags: openapi ai laravel

Devin Yang

Feel free to ask me, if you don't get it.:)

No Comment

Post your comment

Login is required to leave comments

Similar Stories


dlaravel

D-Laravel v1.5.0 is a new version.

1. Change the image generation method of fpm, optimize dockerfiles/fpm/php7.x/Dockerfiles, and make it easier to set and adjust extension packages. 2. Adjust docker-compose-build.yml, and in the Project directory of D-Laravel, You can quickly build your own image through ./console build. And many more changes....

dlaravel

Description of .env.example file on D-Laravel

This article explains about the .env settings on D-Laravel MYSQL_ROOT_PASSWORD=secret LARAVEL_INSTALLER='container' DOCKER_SERVICES='docker-compose.yml service/redis.yml'

laravel

Laravel thought organization, from Model to DatabaseSeeder.

This article will introduce the relevant instruction use cases step by step: Model=>Factory=>Seeder=>DatabaseSeeder Step by step, let us examine all the processes from the Model to the DatabaseSeeder.