Farih.co.id
Home Programming Membangun Aplikasi React Analisis Sentimen Menggunakan OpenAI API

Membangun Aplikasi React Analisis Sentimen Menggunakan OpenAI API

laptop with javascript code on the screen

Dalam lanskap digital, mendapatkan akses ke data yang dapat ditindaklanjuti, khususnya wawasan spesifik tentang pelanggan Anda, dapat membuat Anda unggul dalam persaingan.


Analisis sentimen telah menjadi strategi populer karena menghasilkan hasil yang dapat diandalkan. Anda dapat menggunakannya untuk secara terprogram mengidentifikasi pandangan dan persepsi orang terhadap produk Anda. Anda dapat menemukan poin data penting lainnya yang dapat Anda gunakan untuk membuat keputusan bisnis penting.

Dengan alat seperti API OpenAI, Anda dapat menganalisis dan menghasilkan wawasan terperinci dan dapat ditindaklanjuti tentang pelanggan Anda. Baca terus untuk mempelajari cara mengintegrasikan API pengklasifikasi tweet canggihnya untuk menganalisis input pengguna.


Pengantar GPT

Generative Pre-trained Transformer (GPT-3) OpenAI adalah model bahasa besar yang dilatih pada data teks dalam jumlah besar, memberikannya kemampuan dengan cepat menghasilkan respons terhadap kueri apa pun yang dimasukkan ke dalamnya. Ini menggunakan teknik pemrosesan bahasa alami untuk memahami dan memproses kueri permintaan pengguna.

Halaman Ikhtisar GPT-3 OpenAI

GPT-3 telah mendapatkan popularitas karena kemampuannya memproses permintaan pengguna dan merespons dalam format percakapan.

Model ini sangat penting dalam analisis sentimen karena Anda dapat menggunakannya untuk menilai dan menentukan sentimen pelanggan secara akurat terhadap produk, merek Anda, dan metrik utama lainnya.

Selami Analisis Sentimen Menggunakan GPT

Analisis sentimen adalah tugas pemrosesan bahasa alami yang melibatkan identifikasi dan pengkategorian sentimen yang diungkapkan dalam data tekstual seperti kalimat dan paragraf.

GPT dapat memproses data berurutan sehingga memungkinkan untuk menganalisis sentimen. Seluruh proses analisis melibatkan pelatihan model dengan kumpulan data besar dari data teks berlabel yang dikategorikan sebagai positif, negatif, atau netral.

Ilustrasi tangan robot

Anda kemudian dapat menggunakan model terlatih untuk menentukan sentimen data teks baru. Pada dasarnya, model belajar mengidentifikasi sentimen dengan menganalisis pola dan struktur teks. Itu kemudian mengkategorikannya dan menghasilkan respons.

Selain itu, GPT dapat disesuaikan untuk menilai data dari domain khusus, seperti media sosial atau umpan balik pelanggan. Ini membantu meningkatkan keakuratannya dalam konteks tertentu dengan melatih model dengan ekspresi sentimen yang unik untuk domain tertentu tersebut.

Pengklasifikasi Tweet Lanjutan OpenAI Terintegrasi

API ini menggunakan teknik pemrosesan bahasa alami untuk menganalisis data teks seperti pesan atau tweet untuk menentukan apakah mereka memiliki sentimen positif, negatif, atau netral.

Misalnya, jika teks bernada positif, API akan mengkategorikannya sebagai “positif”, jika tidak, teks akan diberi label sebagai “negatif” atau “netral”.

Selain itu, Anda dapat menyesuaikan kategori dan menggunakan kata yang lebih spesifik untuk mendeskripsikan sentimen. Misalnya, alih-alih hanya melabeli data teks tertentu sebagai “positif”, Anda dapat memilih kategori yang lebih deskriptif seperti “bahagia”.

Konfigurasikan Pengklasifikasi Tweet Tingkat Lanjut

Untuk memulai, pergilah ke Konsol Pengembang OpenAI, dan daftar akun. Anda memerlukan kunci API Anda untuk berinteraksi dengan API pengelompokan tweet tingkat lanjut dari aplikasi React Anda.

Pada halaman ikhtisar, klik pada Profil tombol di kanan atas, lalu pilih Lihat kunci API.

Pengaturan OpenAI

Kemudian klik Buat kunci rahasia baru untuk menghasilkan kunci API baru untuk aplikasi Anda. Pastikan untuk mengambil salinan kunci untuk digunakan pada langkah berikutnya.

Buat React Client

Bootstrap proyek React Anda dengan cepat secara lokal. Selanjutnya, di direktori root folder proyek Anda, buat a .env file untuk menyimpan kunci rahasia API Anda.

 REACT_APP_OPEN_AI_API_KEY='your API key' 

Konfigurasikan Komponen App.js

Buka src/App.js file, hapus kode React boilerplate, dan ganti dengan yang berikut:

  1. Lakukan impor berikut:
     import './App.css';
    import React, {useState} from 'react';
  2. Tentukan komponen Aplikasi fungsional dan variabel status untuk menampung pesan pengguna dan sentimennya setelah analisis.
     function App() {
      const [message, setMessage] = useState("");
      const [sentiment, setSentiment] = useState("");
  3. Buat fungsi penangan yang akan membuat permintaan HTTP POST asinkron ke Pengklasifikasi Tweet Tingkat Lanjut meneruskan pesan pengguna dan kunci API di badan permintaan untuk menganalisis sentimen.
  4. Fungsi kemudian akan menunggu respons dari API, mengurainya sebagai JSON, dan mengekstrak nilai sentimen dalam larik pilihan dari data yang diurai.
  5. Terakhir, fungsi handler akan memicu fungsi setSentiment untuk memperbarui statusnya dengan nilai sentimen.
       const API_KEY = process.env.REACT_APP_OPEN_AI_API_KEY;

      const APIBODY ={
        'model': "text-davinci-003",
        'prompt': "What is the sentiment of this message?" + message,
        'max_tokens': 60,
        'top_p': 1.0,
        'frequency_penalty': 0.0,
        'presence_penalty': 0.0,
      }

      async function handleClick() {
        await fetch('https://api.openai.com/v1/completions', {
          method: 'POST',
          headers: {
            'Content-Type': 'application/json',
            'authorization': `Bearer ${API_KEY}`
          },
          body: JSON.stringify(APIBODY)
        }).then(response => {
          return response.json()
        }).then((data) => {
          console.log(data);
          setSentiment(data.choices[0].text.trim());
        }).catch((error) => {
          console.error(error);
        });
      };

Badan permintaan berisi beberapa parameter, yaitu:

  • model: menentukan model OpenAI mana yang akan digunakan; text-davinci-003 dalam hal ini.
  • prompt: prompt yang akan Anda gunakan untuk menganalisis sentimen dari pesan yang diberikan.
  • max_tokens: menentukan jumlah maksimum token yang dimasukkan ke dalam model untuk mencegah penggunaan daya komputasi model yang berlebihan atau tidak perlu dan meningkatkan kinerjanya secara keseluruhan.
  • top_p, frequency_penalty, dan presence_penalty: parameter ini menyesuaikan keluaran model.

Terakhir, kembalikan kotak pesan dan tombol kirim:

   return (
    <div className="App">
      <header className="App-header">
        <h2> Sentiment Analysis Application</h2>
        <div className="input">
          <p> Enter the message to classify </p>

          <textarea
            className="textArea"
            type="text"
            placeholder="Type your message..."
            cols={50}
            rows={10}
            onChange={(e) => setMessage(e.target.value)}
          />
        </div>

        <div className="Response">
          <button onClick={handleClick}> Get Message sentiment</button>
          {sentiment !== "" ? <p> The message is {sentiment} </p> : null}
        </div>
      </header>
    </div>
  );
}

export default App;

Buat Prompt Pengguna

Secara opsional, Anda dapat membuat kolom input prompt untuk memungkinkan Anda menentukan cara menganalisis pesan.

Misalnya, alih-alih mendapatkan “positif” sebagai sentimen untuk pesan tertentu, Anda dapat menginstruksikan model untuk menghasilkan tanggapan dan memberi peringkat pada skala satu sampai sepuluh, di mana satu sangat negatif sedangkan sepuluh sangat positif.

Tambahkan kode ini ke Aplikasi.js komponen. Tentukan variabel status untuk prompt:

   const [prompt, setPrompt] = useState(""); 

Modifikasi prompt pada APIBODY untuk menggunakan data variabel prompt:

   const APIBODY = {
    
    'prompt': prompt + message,
    
  }

Tambahkan kolom input prompt, tepat di atas textarea pesan:

   <input 
      className="prompt"
       type="text"
       placeholder="Enter prompt..."
       onChange={(e) => setPrompt(e.target.value)}
  />

Putar server pengembangan untuk memperbarui perubahan yang dibuat dan buka http://localhost:3000 untuk menguji fungsionalitasnya.

Aplikasi Analisis Sentimen

Analisis sentimen adalah praktik bisnis penting yang dapat memberikan wawasan berharga tentang pengalaman dan pendapat pelanggan Anda, memungkinkan Anda membuat keputusan yang tepat yang dapat mengarah pada peningkatan pengalaman pelanggan dan peningkatan pendapatan.

Dengan bantuan alat AI seperti OpenAI API, Anda dapat merampingkan saluran analisis Anda untuk mendapatkan sentimen pelanggan yang akurat dan andal secara waktu nyata.

Comment
Share:

Leave a Reply

Your email address will not be published. Required fields are marked *

Ad