无缝集成 ChatGPT 到您的 Laravel 项目中:逐步指南

保留HTML结构,请将以下英文文本翻译为简体中文: 通过openai-php库使OpenAI的ChatGPT与PHP应用程序集成变得简化,这是一个强大的工具,它将PHP开发人员连接到自然语言处理的先进功能。本文将指导您如何将ChatGPT集成到Laravel项目中,演示如何轻松通过AI驱动的交互增强应用程序。我们将介绍设置、认证和实际用法,为您在PHP环境中利用这一尖端技术提供简明的路线图。无论您是自动化响应、生成内容还是添加智能交互,openai-php和Laravel组合在一起,对于任何希望深入AI领域的开发人员来说,都是强大的组合。

步骤1:安装Laravel

首先,我们将安装Laravel,确保我们拥有一个坚实而多才多艺的框架来构建。Laravel的artisan命令和结构化方法使其成为现代Web应用开发的理想选择。

composer create-project laravel/laravel YourProjectName

第二步:安装openai-php

下面,我们将openai-php库引入我们的Laravel项目中。该库充当您的PHP应用程序与OpenAI的ChatGPT之间的桥梁,提供了从简单文本完成到复杂对话仿真等一系列功能。

composer require openai-php/openai

第四步:获取并配置您的OpenAI API密钥

在我们与ChatGPT进行交互之前,我们需要对我们的请求进行身份验证。这一步骤涉及从OpenAI平台获取API密钥,并在我们的Laravel应用程序中安全地进行配置。

4.1 在OpenAI平台上注册:

  • 注册:首先访问OpenAI网站,如果您尚未注册账号,请先注册。
  • API访问:注册并登录后,导航至API部分,您可以在此管理您的API密钥。

4.2 创建一个API密钥:

  • 生成密钥:根据提示创建新的API密钥。该密钥将作为访问OpenAI的服务(包括ChatGPT)的令牌。
  • 记录密钥:请确保将生成的API密钥保存在安全的位置。这是一份敏感的信息,应保持机密。

4.3 在Laravel中配置API密钥:

  • 环境文件:打开您的Laravel项目的.env文件。您将看到OPENAI_API_KEY具有null值。设置您在OpenAI平台上存储的API密钥。

4.5 在应用程序中访问 API 密钥:

  • 用途:在您的Laravel应用程序中,当您需要使用API密钥时,您应该通过env函数访问它,类似这样:
$apiKey = env('OPENAI_API_KEY');
  • 该方法通过动态从您的.env文件中提取API密钥,保持其安全性。
  • 编码时间

    现在是时候编写代码了。

    1. 设置控制器和路由:

    创建一个控制器和路由,用于处理向服务器发送问问题的请求。

    控制器:

    php artisan make:controller OpenAIController

    路由(位于routes/web.php或routes/api.php):

    use App\Http\Controllers\OpenAIController;
    Route::post('/ask-question', [OpenAIController::class, 'askQuestion']);

    2. 实现提问功能:

    在您的OpenAIController中,实现发送提示到OpenAI API并返回响应的函数。

    在app/Http/Controllers/OpenAIController.php文件中:

    <?php

    namespace App\Http\Controllers;

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

    class OpenAIController extends Controller
    {
    public function askQuestion(Request $request) {
    // Retrieve the question from the request
    $question = $request->input('question');

    // Initialize the OpenAI client
    $openai = new OpenAI(env('OPENAI_API_KEY'));

    try {
    // Send the question to the OpenAI API
    $response = $openai->completions(
    [
    "model" => "text-davinci-003", // Use the appropriate model
    "prompt" => $question,
    "max_tokens" => 150,
    ]
    );

    // Return the answer
    return response()->json([
    'answer' => $response->choices[0]->text,
    ]);
    } catch (\Exception $e) {
    // Handle errors
    return response()->json(['error' => $e->getMessage()], 500);
    }
    }
    }

    现在你应该运行这个php artisan命令来启动服务器。

    php artisan serve

    这里我们继续使用Postman:

    步骤1:打开Postman

    • 启动Postman:在您的计算机上启动应用程序。

    第二步:创建一个新的请求

    • 新请求:点击“新建”按钮,选择“请求”。
    • 名称和保存:给您的请求取一个名称,如果愿意,将其保存到一个集合中。

    步骤3:设置请求

    • 方法:选择“POST”作为方法,因为你将数据发送到服务器。
    • URL:在您的Laravel应用程序中,输入问题处理的终结点URL(例如,如果您在本地运行,则为http://localhost:8000/ask-question)。

    第四步: 准备请求正文

    • 转到Body选项卡:点击URL栏下方的“Body”选项卡。
    • 选择“表单数据”:从可用选项中选择“表单数据”。

    步骤5:输入您的数据

    • 键:输入“question”或者你的Laravel路由预期接收问题文本的特定键。
    • 价值:输入您要发送的实际问题(例如,“法国的首都是什么?”)。

    第6步:发送请求

    • 点击“发送”:Postman将向Laravel应用程序发送带有您的表单数据的POST请求。

    通过在 Postman 中按照以下步骤操作,您可以模拟一个客户端应用程序向您的 Laravel 应用程序提问问题,然后将问题发送给 OpenAI 的 ChatGPT,并获得智能、相关上下文的答案返回。这个过程对于测试和展示您的 AI 增强应用程序的能力非常宝贵。

    2023-12-25 14:58:31 AI中文站翻译自原文