EVOLUTION-NINJA
Edit File: Ai.php
<?php namespace App\Controllers\ai; use App\Controllers\BaseController; use CodeIgniter\RESTful\ResourceController; use CodeIgniter\API\ResponseTrait; use GuzzleHttp\Client; use GuzzleHttp\Exception\RequestException; class Ai extends BaseController { public function index() { return view('ai/ai'); } public function ai2() { $dr_id = session()->get('dr_id'); // echo $dr_id;die(); if ($dr_id) { return view('ai/medu-ai2'); } else { return view('login'); } } public function ainew() { $dr_id = session()->get('dr_id'); // echo $dr_id;die(); if ($dr_id) { return view('ai/medu-ai'); } else { return view('login'); } } public function aked_question() { $question = $this->request->getVar('question'); $data['question'] = $question; $dr_id = session()->get('dr_id'); // echo $dr_id;die(); if ($dr_id) { return view('ai/medu-ai2', $data); } else { return view('login'); } } public function disclaimer() { $dr_id = session()->get('dr_id'); // echo $dr_id;die(); if ($dr_id) { return view('ai/medu-ai-desclaimer'); } else { return view('login'); } } public function disclaimer1() { $dr_id = session()->get('dr_id'); // echo $dr_id;die(); if ($dr_id) { return view('ai/medu-ai-desclaimer1'); } else { return view('login'); } } public function disclaimer2() { $id =$this->request->getVar('id'); $dr_id = session()->get('dr_id'); // echo $id;die(); $data['id'] = $id; if ($dr_id) { return view('ai/medu-ai-desclaimer2',$data); } else { return view('login'); } } public function generateAndFetch() { $text= $this->request->getJSON('text'); $query=$text['text']; $userMessages = [ [ 'role' => 'user', 'content' => $query, ], [ 'role' => 'user', 'content' => 'Can you explain ' . $query, ], [ 'role' => 'user', 'content' => 'What are features of ' . $query, ], ]; $client = new Client(); $url = 'https://api.openai.com/v1/chat/completions'; $apiKey = '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'; $response = $client->post($url, [ 'headers' => [ 'Authorization' => 'Bearer ' . $apiKey, 'Content-Type' => 'application/json', ], 'json' => [ 'model' => 'gpt-3.5-turbo', 'messages' => $userMessages, 'temperature' => 0.2, // Set the temperature parameter here ], ]); $result = json_decode($response->getBody(), true); $content = $result['choices'][0]['message']['content']; // print_r($content);die(); if($content){ return $this->response->setJSON(['textcontent'=>$content]); }else{ return $this->response->setJSON('somenthing went wrong'); } } } // public function generateAndFetch() // { // $text = $this->request->getJSON('text'); // $query = $text['text']; // $userMessages = [ // [ // 'role' => 'user', // 'content' => $query, // ], // [ // 'role' => 'user', // 'content' => 'Can you explain ' . $query, // ], // [ // 'role' => 'user', // 'content' => 'What are features of ' . $query, // ], // ]; // $client = new Client(); // $url = 'https://api.openai.com/v1/chat/completions'; // $apiKey = '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'; // $maxRetries = 5; // $retryDelay = 1; // for ($attempt = 0; $attempt < $maxRetries; $attempt++) { // try { // $response = $client->post($url, [ // 'headers' => [ // 'Authorization' => 'Bearer ' . $apiKey, // 'Content-Type' => 'application/json', // ], // 'json' => [ // 'model' => 'gpt-3.5-turbo', // 'messages' => $userMessages, // 'temperature' => 0.2, // ], // ]); // $result = json_decode($response->getBody(), true); // $content = $result['choices'][0]['message']['content']; // if ($content) { // return $this->response->setJSON(['textcontent' => $content]); // } else { // return $this->response->setJSON('Something went wrong'); // } // } catch (\GuzzleHttp\Exception\ClientException $e) { // if ($e->getResponse()->getStatusCode() == 429) { // // Too Many Requests - wait and retry // sleep($retryDelay); // $retryDelay *= 2; // } else { // throw $e; // } // } // } // return $this->response->setJSON('Exceeded maximum retries due to rate limiting'); // } ?>