Membuat backend gratis untuk Gemini AI Studio di Google Cloud Platform (GCP)

Membuat backend gratis untuk Gemini AI Studio di Google Cloud Platform (GCP)
www.ilov.eu.org - GEMINI AI

Berikut ini Langkah untuk Membuat backend gratis untuk Gemini AI Studio di Google Cloud Platform (GCP) memang sedikit tricky karena GCP umumnya memerlukan informasi kartu kredit, walaupun ada tier gratis. Namun, kita bisa memaksimalkan sumber daya gratis yang tersedia dan menggunakan cara yang hemat biaya untuk mencapai tujuan ini.

Pilihan Layanan Gratis/Hampir Gratis di GCP

Berikut adalah beberapa layanan GCP yang bisa kita gunakan (atau kombinasikan) dengan biaya minimal atau gratis:

  • Cloud Functions: (Tier Gratis: sejumlah eksekusi dan memori per bulan) - Ideal untuk fungsi-fungsi kecil seperti menerima permintaan API dari frontend (Blogspot) dan meneruskannya ke Gemini AI Studio.

  • Cloud Run: (Tier Gratis: sejumlah CPU dan memori per bulan, batasan pada konkurensi) - Lebih cocok untuk aplikasi backend yang lebih kompleks daripada Cloud Functions.

  • Compute Engine: (Tidak ada instance gratis langsung, tetapi bisa dioptimalkan) - Kita bisa membuat VM kecil dengan spesifikasi minimal dan menghentikannya saat tidak digunakan untuk menghemat biaya. Pastikan untuk memilih region yang menawarkan instance termurah.

  • App Engine: (Tier Gratis: sejumlah sumber daya per hari) - Mirip dengan Cloud Run, tetapi dengan struktur yang lebih terstruktur.

Panduan Langkah demi Langkah (Menggunakan Cloud Functions):

Ini adalah panduan menggunakan Cloud Functions (paling sederhana untuk kasus ini):

1. Siapkan Akun GCP (Jika Belum Punya):

  • Buka Google Cloud Console: https://console.cloud.google.com/

  • Ikuti langkah-langkah untuk membuat project baru.

  • Aktifkan penagihan (billing). Meskipun kita akan berusaha untuk tetap dalam tier gratis, GCP memerlukan informasi kartu kredit.

2. Aktifkan Gemini API:

3. Buat Cloud Function:

  • Di Google Cloud Console, cari dan buka "Cloud Functions."

  • Klik "Create Function."

  • Configuration:

    • Function name: gemini-api-proxy (atau nama lain yang Anda suka)

    • Region: Pilih region yang dekat dengan Anda untuk latensi rendah dan potensi biaya lebih rendah.

    • Trigger: HTTP

    • Authentication: Allow unauthenticated invocations (Untuk demo ini, tetapi tidak disarankan untuk produksi. Gunakan autentikasi yang lebih kuat untuk aplikasi yang sebenarnya.)

  • Klik "Next."

  • Runtime: Pilih Node.js 18 atau versi terbaru yang stabil.

  • Entry point: geminiProxy

4. Kode Cloud Function (Node.js):

  • Ganti isi index.js dengan kode berikut:

      const { VertexAI } = require('@google-cloud/vertexai');

/**
 * Responds to any HTTP request.
 *
 * @param {express.Request} req HTTP request context.
 * @param {express.Response} res HTTP response context.
 */
exports.geminiProxy = async (req, res) => {
  try {
    // Dapatkan pertanyaan dari request body (asumsi request body adalah JSON: { "question": "..." })
    const question = req.body.question;

    if (!question) {
      return res.status(400).send({ error: 'Pertanyaan tidak boleh kosong.' });
    }

    // Inisialisasi Vertex AI
    const vertexAI = new VertexAI({project: '[YOUR_PROJECT_ID]', location: 'us-central1'}); // Ganti project ID dan lokasi

    const model = vertexAI.getGenerativeModel({
      model: 'gemini-1.5-pro-005', // or gemini-1.5-pro if tersedia di region Anda
      generation_config: {
        maxOutputTokens: 800,
      },
    });

    const request = {
      contents: [{ role: 'user', parts: [{ text: question }] }],
    };

    // Kirim permintaan ke Gemini API
    const response = await model.generateContent(request);
    const text = response.response.candidates[0].content.parts[0].text;

    // Kirimkan respons kembali ke client
    res.status(200).send({ response: text });

  } catch (error) {
    console.error('Error:', error);
    res.status(500).send({ error: 'Terjadi kesalahan saat memproses permintaan.' });
  }
};
    
  • Ganti [YOUR_PROJECT_ID] dengan Project ID Google Cloud Anda.

  • Ganti 'gemini-1.5-pro-005' dengan model yang Anda inginkan dan tersedia di region Anda.

  • Ganti kode di package.json dengan kode berikut:

      {
  "name": "gemini-api-proxy",
  "version": "1.0.0",
  "description": "A proxy for Gemini API",
  "main": "index.js",
  "scripts": {
    "start": "node index.js"
  },
  "dependencies": {
    "@google-cloud/vertexai": "^0.4.0"
  },
  "devDependencies": {}
}
    

5. Deploy Cloud Function:

  • Klik "Deploy." Ini akan membutuhkan beberapa menit.

  • Setelah deploy selesai, catat "Trigger URL" yang diberikan oleh Cloud Functions. Ini adalah URL API Anda.

6. Ubah Kode Blogspot:

  • Ubah kode Blogspot yang sebelumnya sudah dibuat dengan mengganti URL_API_ANDA dengan Trigger URL dari Cloud Function Anda.

Peringatan Penting:

  • Keamanan API Key: Jangan pernah menyimpan API Key Google AI Studio di kode client-side (Blogspot). Cloud Functions membantu menyembunyikannya di sisi server. Sangat penting untuk mengamankan API Key ini. Untuk aplikasi produksi, gunakan metode autentikasi yang lebih aman (misalnya, OAuth 2.0 atau Identity Platform).

  • Authentication: Untuk aplikasi produksi, jangan biarkan Cloud Function Anda tidak diautentikasi. Ini akan rentan terhadap penyalahgunaan. Pelajari cara mengamankan Cloud Functions dengan Identity Platform atau metode autentikasi lainnya.

  • Biaya: Pantau penggunaan Cloud Functions Anda untuk memastikan Anda tetap berada dalam tier gratis. Atur anggaran dan peringatan di GCP untuk mencegah biaya tak terduga.

  • Error Handling: Implementasikan penanganan kesalahan (error handling) yang komprehensif di Cloud Functions Anda untuk mendeteksi dan menangani masalah dengan baik.

  • Logging: Gunakan Cloud Logging untuk mencatat permintaan dan respons API untuk tujuan debugging dan pemantauan.

Optimasi Biaya Lebih Lanjut:

  • Region: Pilih region yang paling murah untuk Cloud Functions. Harga bervariasi antar region.

  • Memory Allocation: Kurangi alokasi memori untuk Cloud Functions Anda ke minimum yang diperlukan untuk menjalankan kode Anda.

  • Cloud Scheduler: Jika Anda hanya membutuhkan akses ke Gemini API pada waktu-waktu tertentu, Anda dapat menggunakan Cloud Scheduler untuk mengaktifkan dan menonaktifkan Cloud Functions secara otomatis.

  • Uji Coba: Uji coba kode Anda secara lokal sebanyak mungkin sebelum men-deploy ke Cloud Functions untuk mengurangi jumlah eksekusi yang tidak perlu.

Dengan mengikuti langkah-langkah ini dan memperhatikan peringatan serta tips optimasi biaya, Anda seharusnya dapat membuat backend untuk Gemini API di GCP dengan biaya minimal atau gratis. Ingatlah bahwa ini adalah pendekatan yang disederhanakan, dan untuk aplikasi produksi, Anda perlu mempertimbangkan keamanan, skalabilitas, dan keandalan yang lebih baik.

Membuat backend gratis untuk Gemini AI Studio di Google Cloud Platform (GCP)

Next Post Previous Post
IP perangkat Dan Kota anda saat ini terdeteksi

Alamat IP anda: Memuatkan...