Plugin AI Generatif Google

Plugin AI Generatif Google menyediakan antarmuka ke model Gemini Google melalui Gemini API.

Penginstalan

npm i --save @genkit-ai/googleai

Konfigurasi

Untuk menggunakan plugin ini, tentukan saat Anda memanggil configureGenkit():

import { googleAI } from '@genkit-ai/googleai';

export default configureGenkit({
  plugins: [googleAI()],
  // ...
});

Plugin ini memerlukan kunci API untuk Gemini API, yang dapat Anda peroleh dari Google AI Studio.

Konfigurasikan plugin untuk menggunakan kunci API Anda dengan melakukan salah satu hal berikut:

  • Tetapkan variabel lingkungan GOOGLE_GENAI_API_KEY ke kunci API Anda.

  • Tentukan kunci API saat Anda menginisialisasi plugin:

    googleAI({ apiKey: yourKey });
    

    Namun, jangan sematkan kunci API Anda secara langsung di dalam kode. Gunakan fitur ini saja bersama dengan layanan seperti Cloud Secret Manager atau yang serupa.

Beberapa model (seperti Gemini 1.5 Pro) masih dalam versi pratinjau dan hanya tersedia melalui API v1beta. Anda dapat menentukan apiVersion untuk mendapatkan akses ke model tersebut:

configureGenkit({
  plugins: [googleAI({ apiVersion: 'v1beta' })],
});

atau Anda dapat menentukan beberapa versi jika Anda ingin menggunakan versi yang berbeda dari model secara bersamaan.

configureGenkit({
  plugins: [googleAI({ apiVersion: ['v1', 'v1beta'] })],
});

Penggunaan

Plugin ini secara statis mengekspor referensi ke model yang didukungnya:

import {
  gemini15Flash,
  gemini15Pro,
  textEmbeddingGecko001,
} from '@genkit-ai/googleai';

Anda dapat menggunakan referensi ini untuk menentukan model mana yang digunakan generate():

const llmResponse = await generate({
  model: gemini15Flash,
  prompt: 'Tell me a joke.',
});

atau menggunakan embeddingder (mis. textEmbeddingGecko001) dengan embed atau pengambil:

const embedding = await embed({
  embedder: textEmbeddingGecko001,
  content: input,
});

API File Gemini

Anda dapat menggunakan file yang diupload ke Gemini Files API dengan Genkit:

import { GoogleAIFileManager } from '@google/generative-ai/server';

const fileManager = new GoogleAIFileManager(process.env.GOOGLE_GENAI_API_KEY);
const uploadResult = await fileManager.uploadFile(
  'path/to/file.jpg',
  {
    mimeType: 'image/jpeg',
    displayName: 'Your Image',
  }
);

const response = await generate({
  model: gemini15Flash,
  prompt: [
    {text: 'Describe this image:'},
    {media: {contentType: uploadResult.file.mimeType, url: uploadResult.file.uri}}
  ]
});