PHP Uygulamalarında OpenAI ChatGPT Entegrasyonu: Adım Adım Kılavuz

Behlül Bozal
2 min readMay 14, 2024

--

Herkese merhaba bugün bir PHP uygulamasını OpenAI - ChatGPT ile entegre edeceğiz.

Bu proje bana ne katacak:

  1. AI Entegrasyonu Deneyimi: OpenAI — ChatGPT gibi güçlü bir yapay zeka modelini PHP uygulamana entegre ederek, AI ile çalışmanın temellerini öğreneceksin.
  2. API Kullanımı: OpenAI API’sini kullanarak, API’lerle nasıl çalışılacağını ve veri alışverişini nasıl yapacağını öğrenmiş olacaksın.

Composer ile gerekli paketi kuralım:

composer require orhanerday/open-ai

Tanımlama:

<?php

require __DIR__ . '/vendor/autoload.php'; // Eğer bir PHP Freamwork'ü kullanıyorsanız bu satırı silin (Laravel, Codeigniter)
use Orhanerday\OpenAi\OpenAi;

Kullanım:

$open_ai_key = "YOUR OPENAI KEY";
$open_ai = new OpenAi($open_ai_key);

$chat = $open_ai->chat([
'model' => 'gpt-3.5-turbo',
'messages' => [
[
"role" => "user",
"content" => "Where was it played?"
],
],
'temperature' => 1.0,
'max_tokens' => 4000,
'frequency_penalty' => 0,
'presence_penalty' => 0,
]);


var_dump($chat);

Şimdi bir örnek uygulama geliştirelim.

Tamam, bir örnek üzerinden detaylı bir entegrasyon yapalım. Diyelim ki, bir müşteri destek uygulaması oluşturuyoruz ve kullanıcıların sorduğu sorulara otomatik yanıtlar veren bir sistem kurmak istiyoruz. İşte bu senaryoyu gerçekleştiren adım adım örnek:

Adım 1: Composer ile Gerekli Paketi Kurun

composer require orhanerday/open-ai

Adım 2: OpenAI API Anahtarını Alın

OpenAI hesabınıza giriş yaparak bir API anahtarı oluşturun ve bu anahtarı kullanacağız.

Adım 3: PHP Kodunu Yazın

Dosya Yapısı:

  • index.php (ana dosya)
  • chat.php (OpenAI ile etkileşime geçecek dosya)

index.php

Bu dosya kullanıcıdan soru alacak ve sonucu gösterecek.

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>ChatGPT Müşteri Desteği</title>
</head>
<body>
<h1>ChatGPT Müşteri Desteği</h1>
<form action="chat.php" method="post">
<label for="question">Sorunuzu yazın:</label>
<input type="text" id="question" name="question" required>
<button type="submit">Gönder</button>
</form>
</body>
</html>

chat.php

Bu dosya OpenAI API’sine bağlanacak ve kullanıcının sorusuna yanıt alacak.

<?php

require __DIR__ . '/vendor/autoload.php';
use Orhanerday\OpenAi\OpenAi;

$open_ai_key = "YOUR_OPENAI_KEY";
$open_ai = new OpenAi($open_ai_key);

if (isset($_POST['question'])) {
$user_question = htmlspecialchars($_POST['question']);

$chat = $open_ai->chat([
'model' => 'gpt-3.5-turbo',
'messages' => [
[
"role" => "user",
"content" => $user_question
],
],
'temperature' => 1.0,
'max_tokens' => 100,
'frequency_penalty' => 0,
'presence_penalty' => 0,
]);

$response = json_decode($chat, true);

if (isset($response['choices'][0]['message']['content'])) {
$answer = $response['choices'][0]['message']['content'];
} else {
$answer = "Bir hata oluştu, lütfen tekrar deneyin.";
}
} else {
$answer = "Lütfen bir soru girin.";
}

?>

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>ChatGPT Yanıtı</title>
</head>
<body>
<h1>ChatGPT Yanıtı</h1>
<p><strong>Soru:</strong> <?php echo $user_question; ?></p>
<p><strong>Cevap:</strong> <?php echo $answer; ?></p>
<a href="index.php">Yeni bir soru sor</a>
</body>
</html>

Açıklamalar:

  1. index.php: Kullanıcıdan soru almak için basit bir form oluşturduk.
  2. chat.php:
  • Kullanıcının girdiği soruyu $_POST ile aldık.
  • OpenAI API’sine bu soruyu göndererek yanıt aldık.
  • Gelen yanıtı ekranda gösterdik.

Sonuç

Bu örnek ile kullanıcıların sorduğu sorulara OpenAI — ChatGPT ile otomatik yanıt veren bir müşteri destek uygulaması oluşturduk. Bu, gerçek bir senaryoda AI entegrasyonunun nasıl yapılacağını gösteren basit ve etkili bir örnektir.

Open AI paketini geliştiren Orhan Erday a teşekkür ediyoruz.

Reach me with links below:

--

--