Mulai dari rilis Gemini 2.0 pada akhir tahun 2024, kami memperkenalkan kumpulan library baru yang disebut Google GenAI SDK. SDK ini menawarkan pengalaman developer yang lebih baik melalui arsitektur klien yang diperbarui, dan menyederhanakan transisi antara alur kerja developer dan perusahaan.
Google GenAI SDK kini tersedia secara Umum (GA) di semua platform yang didukung. Jika Anda menggunakan salah satu library lama kami, sebaiknya lakukan migrasi.
Panduan ini memberikan contoh kode yang dimigrasikan sebelum dan sesudah untuk membantu Anda memulai.
Penginstalan
Sebelum
Python
pip install -U -q "google-generativeai"
JavaScript
npm install @google/generative-ai
Go
go get github.com/google/generative-ai-go
Setelah
Python
pip install -U -q "google-genai"
JavaScript
npm install @google/genai
Go
go get google.golang.org/genai
Akses API
SDK lama secara implisit menangani klien API di balik layar menggunakan berbagai metode ad hoc. Hal ini menyulitkan pengelolaan klien dan kredensial.
Sekarang, Anda berinteraksi melalui objek Client pusat. Objek Client ini bertindak sebagai satu titik entri untuk berbagai layanan API (misalnya, models, chats, files, tunings), yang meningkatkan konsistensi dan menyederhanakan pengelolaan kredensial dan konfigurasi di berbagai panggilan API.
Sebelum (Akses API yang Kurang Terpusat)
Python
SDK lama tidak secara eksplisit menggunakan objek klien tingkat atas untuk sebagian besar panggilan API. Anda akan langsung membuat instance dan berinteraksi dengan objek GenerativeModel.
import google.generativeai as genai
# Directly create and use model objects
model = genai.GenerativeModel('gemini-3.6-flash')
response = model.generate_content(...)
chat = model.start_chat(...)
JavaScript
Meskipun GoogleGenerativeAI adalah titik pusat untuk model dan chat, fungsi lain seperti pengelolaan file dan cache sering kali memerlukan impor dan pembuatan instance class klien yang sepenuhnya terpisah.
import { GoogleGenerativeAI } from "@google/generative-ai";
import { GoogleAIFileManager, GoogleAICacheManager } from "@google/generative-ai/server"; // For files/caching
const genAI = new GoogleGenerativeAI("GEMINI_API_KEY");
const fileManager = new GoogleAIFileManager("GEMINI_API_KEY");
const cacheManager = new GoogleAICacheManager("GEMINI_API_KEY");
// Get a model instance, then call methods on it
const model = genAI.getGenerativeModel({ model: "gemini-3.6-flash" });
const result = await model.generateContent(...);
const chat = model.startChat(...);
// Call methods on separate client objects for other services
const uploadedFile = await fileManager.uploadFile(...);
const cache = await cacheManager.create(...);
Go
Fungsi genai.NewClient membuat klien, tetapi operasi model generatif biasanya dipanggil pada instance GenerativeModel terpisah yang diperoleh dari klien ini. Layanan lain mungkin telah diakses melalui paket atau pola yang berbeda.
import (
"github.com/google/generative-ai-go/genai"
"github.com/google/generative-ai-go/genai/fileman" // For files
"google.golang.org/api/option"
)
client, err := genai.NewClient(ctx, option.WithAPIKey("GEMINI_API_KEY"))
fileClient, err := fileman.NewClient(ctx, option.WithAPIKey("GEMINI_API_KEY"))
// Get a model instance, then call methods on it
model := client.GenerativeModel("gemini-3.6-flash")
resp, err := model.GenerateContent(...)
cs := model.StartChat()
// Call methods on separate client objects for other services
uploadedFile, err := fileClient.UploadFile(...)
Setelah (Objek Klien Terpusat)
Python
from google import genai
# Create a single client object
client = genai.Client()
# Access API methods through services on the client object
response = client.models.generate_content(...)
chat = client.chats.create(...)
my_file = client.files.upload(...)
tuning_job = client.tunings.tune(...)
JavaScript
import { GoogleGenAI } from "@google/genai";
// Create a single client object
const ai = new GoogleGenAI({apiKey: "GEMINI_API_KEY"});
// Access API methods through services on the client object
const response = await ai.models.generateContent(...);
const chat = ai.chats.create(...);
const uploadedFile = await ai.files.upload(...);
const cache = await ai.caches.create(...);
Go
import "google.golang.org/genai"
// Create a single client object
client, err := genai.NewClient(ctx, nil)
// Access API methods through services on the client object
result, err := client.Models.GenerateContent(...)
chat, err := client.Chats.Create(...)
uploadedFile, err := client.Files.Upload(...)
tuningJob, err := client.Tunings.Tune(...)
Autentikasi
Library lama dan baru melakukan autentikasi menggunakan kunci API. Anda dapat membuat kunci API di Google AI Studio.
Sebelum
Python
SDK lama menangani objek klien API secara implisit.
import google.generativeai as genai
genai.configure(api_key=...)
JavaScript
import { GoogleGenerativeAI } from "@google/generative-ai";
const genAI = new GoogleGenerativeAI("GEMINI_API_KEY");
Go
Mengimpor library Google:
import (
"github.com/google/generative-ai-go/genai"
"google.golang.org/api/option"
)
Membuat klien:
client, err := genai.NewClient(ctx, option.WithAPIKey("GEMINI_API_KEY"