首頁 > php框架 > Laravel > 手把手教你在Laravel10專案中使用ChatGPT

手把手教你在Laravel10專案中使用ChatGPT

藏色散人
發布: 2023-03-16 15:41:11
轉載
1982 人瀏覽過

這篇文章為大家帶來了關於Laravel的相關知識,其中主要介紹了怎麼在Laravel10專案中使用ChatGPT?有興趣的朋友,下面一起來看一下,希望對大家有幫助。

在 Laravel 10 專案中使用 ChatGPT!

你會得到什麼

手把手教你在Laravel10專案中使用ChatGPT

手把手教你在Laravel10專案中使用ChatGPT

#我假設你已經使用官方文檔安裝了Laravel 10 框架

第一步:建立控制器

<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Http;
class ChatGPTController extends Controller
{
    public function index()
    {
        return view(&#39;chatgpt.index&#39;);
    }
    public function ask(Request $request)
    {
        $prompt = $request->input(&#39;prompt&#39;);
        $response = $this->askToChatGPT($prompt);
        return view(&#39;chatgpt.response&#39;, [&#39;response&#39; => $response]);
    }
    private function askToChatGPT($prompt) 
    {
        $response = Http::withoutVerifying()
            ->withHeaders([
                &#39;Authorization&#39; => &#39;Bearer &#39; . env(&#39;CHATGPT_API_KEY&#39;),
                &#39;Content-Type&#39; => &#39;application/json&#39;,
            ])->post(&#39;https://api.openai.com/v1/engines/text-davinci-003/completions&#39;, [
                "prompt" => $prompt,
                "max_tokens" => 1000,
                "temperature" => 0.5
            ]);
        return $response->json()[&#39;choices&#39;][0][&#39;text&#39;];
    }
}
登入後複製

第二步:建立路由

<?php
use App\Http\Controllers\ChatGPTController;
use Illuminate\Support\Facades\Route;
(...)
Route::get(&#39;/chatgpt&#39;, [ChatGPTController::class, &#39;index&#39;])
    ->name(&#39;chatgpt.index&#39;);
Route::post(&#39;/chatgpt/ask&#39;, [ChatG²PTController::class, &#39;ask&#39;])
    ->name(&#39;chatgpt.ask&#39;);
登入後複製

第三步:建立佈局

// layouts/app.blade.php
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title>My ChatGPT App</title>
        <!-- Styles -->
        <link href="{{ asset(&#39;css/app.css&#39;) }}" rel="stylesheet">
        <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
    </head>
    <body>
        <div class="container mt-5">
            @yield(&#39;content&#39;)
        </div>
    </body>
</html>
登入後複製

第四步:建立index 頁面

// chatgpt/index.blade.php
@extends(&#39;layouts.app&#39;)
@section(&#39;content&#39;)
    <div class="container">
        <div class="row justify-content-center">
            <div class="col-md-8">
                <div class="card">
                    <div class="card-header">Ask something to ChatGPT</div>
                    <div class="card-body">
                        <form method="POST" action="{{ route(&#39;chatgpt.ask&#39;) }}">
                            @csrf
                            <div class="form-group">
                                <input type="text" class="form-control text-center" name="prompt" placeholder="Ask something...">
                            </div>
                            <button type="submit" class="btn btn-primary">Send</button>
                        </form>
                    </div>
                </div>
            </div>
        </div>
    </div>
@endsection
登入後複製

第五步:建立response 頁面

// chatgpt/response.blade.php
@extends(&#39;layouts.app&#39;)
@section(&#39;content&#39;)
    <div class="container">
        <div class="row justify-content-center">
            <div class="col-md-8">
                <div class="card">
                    <div class="card-header">ChatGPT answer</div>
                    <div class="card-body">
                        <p>{{ $response }}</p>
                    </div>
                </div>
            </div>
        </div>
    </div>
@endsection
登入後複製

最後第六步:建立一個.env 變數

CHATGPT_API_KEY=YOUR_API_KEY
登入後複製

#取得ChatGPT API 金鑰

要取得API 金鑰,您可以前往您的openai 平台帳戶中的api-keys 部分並產生您的金鑰

手把手教你在Laravel10專案中使用ChatGPT

##如果你想要更多的例子,你可以去官方的例子部分:platform.openai.com/examples

推薦學習:《

laravel影片教學

以上是手把手教你在Laravel10專案中使用ChatGPT的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:learnku.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板