Home / AI / poe.com / [poe.com] – WordPress – PHP AI

[poe.com] – WordPress – PHP AI

Loading

Bot image for Assistant

Shared conversation

Assistant ·

Apa ada skrip PHP untuk mengelola AI?

Mengelola AI dapat mencakup berbagai aspek, dari interaksi dengan model AI hingga pengolahan data. Di bawah ini adalah contoh skrip PHP sederhana yang dapat digunakan untuk berinteraksi dengan API model AI, seperti OpenAI. Skrip ini mengirimkan permintaan ke API dan menerima respons.

Contoh Skrip PHP untuk Berinteraksi dengan API AI

php
<?php
// Set your OpenAI API Key
$apiKey = 'YOUR_API_KEY';

// Set the API endpoint
$apiUrl = 'https://api.openai.com/v1/chat/completions';

// Prepare the data for the request
$data = [
    'model' => 'gpt-3.5-turbo', // Model yang ingin digunakan
    'messages' => [
        [
            'role' => 'user',
            'content' => 'Apa itu AI?' // Pesan yang ingin dikirim ke AI
        ]
    ],
];

// Initialize a cURL session
$ch = curl_init($apiUrl);

// Set the necessary options for the cURL request
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Content-Type: application/json',
    'Authorization: Bearer ' . $apiKey,
]);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));

// Execute the cURL request and get the response
$response = curl_exec($ch);

// Check for errors
if (curl_errno($ch)) {
    echo 'Error: ' . curl_error($ch);
} else {
    // Decode and display the response
    $responseData = json_decode($response, true);
    echo 'AI Response: ' . $responseData['choices'][0]['message']['content'];
}

// Close the cURL session
curl_close($ch);
?>

Penjelasan Skrip:

  1. API Key: Gantilah YOUR_API_KEY dengan kunci API yang Anda dapatkan dari penyedia layanan AI.
  2. Endpoint: Skrip ini menggunakan endpoint untuk model chat dari OpenAI.
  3. Data: Pesan yang ingin Anda kirimkan ke AI disiapkan dalam format yang sesuai.
  4. cURL: Skrip menggunakan cURL untuk melakukan permintaan HTTP POST ke API.
  5. Menampilkan Respons: Respons dari AI ditampilkan di halaman.

Catatan:

  • Pastikan untuk menyesuaikan model dan pesan sesuai kebutuhan Anda.
  • Hindari menyimpan API Key secara langsung dalam kode sumber yang dapat diakses publik untuk menjaga keamanan.

Dengan skrip ini, Anda bisa mulai berinteraksi dengan model AI dalam aplikasi PHP Anda.

Bisa kah dibuatkan dalam bentuk plugin wordpress

Berikut adalah langkah-langkah untuk membuat plugin WordPress sederhana yang dapat berinteraksi dengan API AI seperti OpenAI. Plugin ini akan menyediakan shortcode untuk menampilkan respons dari AI di halaman atau postingan.

1. Buat Folder Plugin

Buat folder baru di direktori wp-content/plugins/, misalnya ai-interaction.

2. Buat File Utama Plugin

Di dalam folder ai-interaction, buat file PHP baru, misalnya ai-interaction.php, dan masukkan kode berikut:

php
<?php
/*
Plugin Name: AI Interaction
Description: Plugin untuk berinteraksi dengan API AI.
Version: 1.0
Author: Nama Anda
*/

// Fungsi untuk mendapatkan respons dari API AI
function get_ai_response($message) {
    $apiKey = 'YOUR_API_KEY'; // Ganti dengan API Key Anda
    $apiUrl = 'https://api.openai.com/v1/chat/completions';

    $data = [
        'model' => 'gpt-3.5-turbo',
        'messages' => [
            [
                'role' => 'user',
                'content' => $message
            ]
        ],
    ];

    $ch = curl_init($apiUrl);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, [
        'Content-Type: application/json',
        'Authorization: Bearer ' . $apiKey,
    ]);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));

    $response = curl_exec($ch);
    curl_close($ch);

    if ($response) {
        $responseData = json_decode($response, true);
        return $responseData['choices'][0]['message']['content'] ?? 'Tidak ada respons.';
    } else {
        return 'Terjadi kesalahan.';
    }
}

// Shortcode untuk menampilkan form dan respons AI
function ai_interaction_shortcode() {
    ob_start();
    ?>
    <form method="post">
        <textarea name="ai_message" rows="4" cols="50" placeholder="Tanya sesuatu..."></textarea><br>
        <input type="submit" value="Kirim">
    </form>
    <?php
    if (isset($_POST['ai_message'])) {
        $message = sanitize_text_field($_POST['ai_message']);
        $response = get_ai_response($message);
        echo '<h3>Respons AI:</h3>';
        echo '<p>' . esc_html($response) . '</p>';
    }
    return ob_get_clean();
}

add_shortcode('ai_interaction', 'ai_interaction_shortcode');

3. Aktivasi Plugin

  • Masuk ke dashboard WordPress Anda.
  • Navigasi ke Plugins dan cari AI Interaction.
  • Klik Activate untuk mengaktifkan plugin.

4. Menggunakan Shortcode

  • Anda dapat menggunakan shortcode [ai_interaction] di halaman atau postingan mana pun di situs WordPress Anda.
  • Setelah menyimpan perubahan, Anda akan melihat form untuk mengirim pesan ke AI dan mendapatkan respons.

Catatan

  • Gantilah YOUR_API_KEY dengan API Key Anda dari penyedia layanan AI.
  • Pastikan untuk menjaga keamanan API Key Anda.
  • Anda dapat menyesuaikan tampilan dan fungsi sesuai kebutuhan lebih lanjut.

Dengan mengikuti langkah-langkah ini, Anda akan memiliki plugin WordPress yang dapat berinteraksi dengan AI!

Bisakah plugin ini di modifikasi untuk mendukung API lain selain OpenAI?

Plugin yang telah kita buat dapat dimodifikasi untuk mendukung API lain dengan beberapa penyesuaian. Berikut adalah langkah-langkah untuk mengubah plugin agar dapat mendukung berbagai API AI:

1. Modifikasi Kode untuk Mendukung Multi-API

Anda dapat menambahkan parameter untuk menentukan API yang diinginkan dan menyesuaikan permintaan berdasarkan API tersebut. Berikut adalah contoh modifikasi:

php
<?php
/*
Plugin Name: AI Interaction
Description: Plugin untuk berinteraksi dengan berbagai API AI.
Version: 1.1
Author: Nama Anda
*/

// Fungsi untuk mendapatkan respons dari API AI
function get_ai_response($message, $api = 'openai') {
    $apiUrl = '';
    $data = [];

    if ($api === 'openai') {
        $apiKey = 'YOUR_OPENAI_API_KEY'; // Ganti dengan API Key OpenAI Anda
        $apiUrl = 'https://api.openai.com/v1/chat/completions';

        $data = [
            'model' => 'gpt-3.5-turbo',
            'messages' => [
                [
                    'role' => 'user',
                    'content' => $message
                ]
            ],
        ];
    } elseif ($api === 'another_api') {
        $apiKey = 'YOUR_ANOTHER_API_KEY'; // Ganti dengan API Key API lain
        $apiUrl = 'https://api.anotherapi.com/v1/endpoint'; // Ganti dengan URL API lain

        $data = [
            'input' => $message
        ];
    }

    $ch = curl_init($apiUrl);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, [
        'Content-Type: application/json',
        'Authorization: Bearer ' . $apiKey,
    ]);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));

    $response = curl_exec($ch);
    curl_close($ch);

    if ($response) {
        $responseData = json_decode($response, true);
        // Sesuaikan pengambilan respons berdasarkan API
        if ($api === 'openai') {
            return $responseData['choices'][0]['message']['content'] ?? 'Tidak ada respons.';
        } elseif ($api === 'another_api') {
            return $responseData['result'] ?? 'Tidak ada respons.';
        }
    } else {
        return 'Terjadi kesalahan.';
    }
}

// Shortcode untuk menampilkan form dan respons AI
function ai_interaction_shortcode() {
    ob_start();
    ?>
    <form method="post">
        <textarea name="ai_message" rows="4" cols="50" placeholder="Tanya sesuatu..."></textarea><br>
        <select name="ai_api">
            <option value="openai">OpenAI</option>
            <option value="another_api">API Lain</option>
        </select><br>
        <input type="submit" value="Kirim">
    </form>
    <?php
    if (isset($_POST['ai_message'])) {
        $message = sanitize_text_field($_POST['ai_message']);
        $api = sanitize_text_field($_POST['ai_api']);
        $response = get_ai_response($message, $api);
        echo '<h3>Respons AI:</h3>';
        echo '<p>' . esc_html($response) . '</p>';
    }
    return ob_get_clean();
}

add_shortcode('ai_interaction', 'ai_interaction_shortcode');

2. Penjelasan Modifikasi

  • API Parameter: Saya menambahkan parameter $api ke fungsi get_ai_response() untuk menentukan API yang ingin digunakan.
  • Pengaturan API: Berdasarkan nilai $api, skrip mengonfigurasi URL dan data yang diperlukan untuk permintaan.
  • Form Pilihan API: Saya menambahkan dropdown untuk memilih API mana yang ingin digunakan oleh pengguna.

3. Aktivasi dan Penggunaan

  • Setelah Anda mengedit kode, pastikan untuk menyimpan file dan meng-upload kembali jika diperlukan.
  • Gunakan shortcode [ai_interaction] di halaman atau postingan Anda.
  • Sekarang Anda dapat memilih API yang ingin digunakan saat mengirim pertanyaan.

Catatan

  • Sesuaikan parameter dan pengaturan untuk API lain sesuai dengan dokumentasi masing-masing API.
  • Pastikan untuk menangani keamanan API Key dengan baik.

Dengan modifikasi ini, plugin Anda kini dapat mendukung berbagai API AI!

Bisakah contoh kode diperluas untuk mendukung API Google AI?

Berikut adalah contoh modifikasi kode untuk mendukung Google AI (seperti Google Cloud Natural Language API atau lainnya). Misalnya, kita akan mengambil contoh penggunaan Google Cloud Natural Language API untuk analisis teks.

1. Persiapan

Sebelum memodifikasi kode, pastikan Anda:

  • Mendaftar untuk Google Cloud dan membuat proyek.
  • Mengaktifkan API Natural Language.
  • Mengatur kredensial dan mendownload file kunci JSON.

2. Modifikasi Kode Plugin

Berikut adalah contoh kode plugin yang diperluas untuk mendukung Google AI:

php
<?php
/*
Plugin Name: AI Interaction
Description: Plugin untuk berinteraksi dengan berbagai API AI termasuk OpenAI dan Google AI.
Version: 1.2
Author: Nama Anda
*/

// Fungsi untuk mendapatkan respons dari API AI
function get_ai_response($message, $api = 'openai') {
    if ($api === 'openai') {
        return get_openai_response($message);
    } elseif ($api === 'google_ai') {
        return get_google_ai_response($message);
    }

    return 'API tidak dikenal.';
}

// Fungsi untuk OpenAI
function get_openai_response($message) {
    $apiKey = 'YOUR_OPENAI_API_KEY'; // Ganti dengan API Key OpenAI Anda
    $apiUrl = 'https://api.openai.com/v1/chat/completions';

    $data = [
        'model' => 'gpt-3.5-turbo',
        'messages' => [
            [
                'role' => 'user',
                'content' => $message
            ]
        ],
    ];

    $ch = curl_init($apiUrl);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, [
        'Content-Type: application/json',
        'Authorization: Bearer ' . $apiKey,
    ]);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));

    $response = curl_exec($ch);
    curl_close($ch);

    if ($response) {
        $responseData = json_decode($response, true);
        return $responseData['choices'][0]['message']['content'] ?? 'Tidak ada respons.';
    } else {
        return 'Terjadi kesalahan.';
    }
}

// Fungsi untuk Google AI
function get_google_ai_response($message) {
    $keyFilePath = 'path/to/your/google-credentials.json'; // Ganti dengan path ke file kunci JSON Anda
    putenv('GOOGLE_APPLICATION_CREDENTIALS=' . $keyFilePath);

    $client = new Google_Client();
    $client->useApplicationDefaultCredentials();
    $client->setScopes(['https://www.googleapis.com/auth/cloud-platform']);

    $language = new Google_Service_Language($client);
    $document = new Google_Service_Language_Document();
    $document->setContent($message);
    $document->setType('PLAIN_TEXT');

    $response = $language->analyzeSentiment($document);
    $sentiment = $response->getDocumentSentiment();
    
    return "Sentiment Score: " . $sentiment->getScore() . ", Magnitude: " . $sentiment->getMagnitude();
}

// Shortcode untuk menampilkan form dan respons AI
function ai_interaction_shortcode() {
    ob_start();
    ?>
    <form method="post">
        <textarea name="ai_message" rows="4" cols="50" placeholder="Tanya sesuatu..."></textarea><br>
        <select name="ai_api">
            <option value="openai">OpenAI</option>
            <option value="google_ai">Google AI</option>
        </select><br>
        <input type="submit" value="Kirim">
    </form>
    <?php
    if (isset($_POST['ai_message'])) {
        $message = sanitize_text_field($_POST['ai_message']);
        $api = sanitize_text_field($_POST['ai_api']);
        $response = get_ai_response($message, $api);
        echo '<h3>Respons AI:</h3>';
        echo '<p>' . esc_html($response) . '</p>';
    }
    return ob_get_clean();
}

add_shortcode('ai_interaction', 'ai_interaction_shortcode');

3. Penjelasan Modifikasi

  • Google Client Library: Pastikan Anda menginstal Google Cloud PHP SDK. Anda bisa menginstalnya melalui Composer:
    bash
    composer require google/cloud-language
    
  • Fungsi Google AI: get_google_ai_response() berfungsi untuk berinteraksi dengan Google Cloud Natural Language API. Ini menganalisis sentimen dari pesan yang diberikan.
  • Kredensial: Gantilah path/to/your/google-credentials.json dengan path ke file kunci JSON yang Anda unduh dari Google Cloud Console.

4. Aktivasi dan Penggunaan

  • Setelah mengedit kode, pastikan untuk menyimpan file dan meng-upload kembali jika diperlukan.
  • Gunakan shortcode [ai_interaction] di halaman atau postingan Anda.
  • Sekarang Anda dapat memilih API Google AI dan mengirim pesan untuk analisis sentimen.

Catatan

  • Pastikan Anda telah mengatur semua izin dan kredensial yang diperlukan di Google Cloud.
  • Sesuaikan pengaturan dan respons sesuai dengan API yang Anda gunakan.

Dengan modifikasi ini, plugin Anda kini dapat mendukung Google AI!

Bot image for Assistant
Go to @Assistant on Poe