38 lines
964 B
PHP
38 lines
964 B
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Api\Student;
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use App\Traits\ApiResponseHelper;
|
|
use App\Traits\ChatGPTHelper;
|
|
use Illuminate\Http\Request;
|
|
|
|
use Illuminate\Support\Facades\Validator;
|
|
|
|
|
|
class ChatGPTController extends Controller
|
|
{
|
|
use ApiResponseHelper, ChatGPTHelper;
|
|
|
|
public function chatGptMessage(Request $request)
|
|
{
|
|
$validator = Validator::make($request->all(), [
|
|
'question' => ['required'],
|
|
]);
|
|
if ($validator->fails()) {
|
|
return $this->apiResponse(false, $validator->errors()->first(), $validator->errors());
|
|
}
|
|
try {
|
|
|
|
$response = $this->getGptResponse($request->question);
|
|
$message = 'Message fetched successfully';
|
|
return $this->apiResponse(true, $message, $response);
|
|
} catch (\Throwable $exception) {
|
|
return $this->apiResponse(false, $exception->getMessage());
|
|
}
|
|
}
|
|
|
|
|
|
|
|
}
|