Panduan memulai Gemini API

Panduan memulai ini menunjukkan cara menginstal library kami dan membuat permintaan Gemini API pertama menggunakan Interactions API.

Sebelum memulai

Untuk menggunakan Gemini API, Anda harus memiliki kunci API untuk mengautentikasi permintaan, menerapkan batas keamanan, dan melacak penggunaan ke akun Anda.

Buat secara gratis di AI Studio untuk memulai:

Membuat Kunci Gemini API

Menginstal Google GenAI SDK

Python

Dengan menggunakan Python 3.9+, instal paket google-genai menggunakan perintah pip berikut:

pip install -q -U google-genai

JavaScript

Dengan menggunakan Node.js v18+, instal Google Gen AI SDK for TypeScript and JavaScript menggunakan perintah npm berikut:

npm install @google/genai

Membuat permintaan pertama Anda

Ada dua cara yang dapat Anda gunakan untuk mengirim permintaan ke Gemini API:

  • (Direkomendasikan) Interactions API adalah primitif baru dengan dukungan native untuk penggunaan alat multi-langkah, orkestrasi, dan alur penalaran kompleks melalui langkah-langkah eksekusi yang diketik. Ke depannya, model baru di luar keluarga mainline inti, beserta kemampuan dan alat agentic baru, akan diluncurkan secara eksklusif di Interactions API.
  • generateContent menyediakan cara untuk menghasilkan respons sederhana dan stateless dari model. Meskipun sebaiknya gunakan Interactions API, generateContent didukung sepenuhnya.

Contoh ini menggunakan Interactions API untuk mengirim permintaan ke Gemini API menggunakan model Gemini 3 Flash.

Jika Anda menetapkan kunci API sebagai variabel lingkungan GEMINI_API_KEY, kunci tersebut akan otomatis diambil oleh klien saat menggunakan library Gemini API. Jika tidak, Anda harus meneruskan kunci API sebagai argumen saat menginisialisasi klien.

Perhatikan bahwa semua contoh kode dalam dokumentasi Gemini API mengasumsikan bahwa Anda telah menetapkan variabel lingkungan GEMINI_API_KEY.

Python

# This will only work for SDK newer than 2.0.0
from google import genai

# The client gets the API key from the environment variable `GEMINI_API_KEY`.
client = genai.Client()

interaction = client.interactions.create(
    model="gemini-3-flash-preview", 
    input="Explain how AI works in a few words"
)

# Print the model's text response
for step in interaction.steps:
    if step.type == "model_output":
        for content_block in step.content:
            if content_block.type == "text":
                print(content_block.text)

JavaScript

// This will only work for SDK newer than 2.0.0
import { GoogleGenAI } from "@google/genai";

// The client gets the API key from the environment variable `GEMINI_API_KEY`.
const ai = new GoogleGenAI({});

async function main() {
  const interaction = await ai.interactions.create({
    model: "gemini-3-flash-preview",
    input: "Explain how AI works in a few words",
  });

  const modelStep = interaction.steps.find(s => s.type === 'model_output');
  if (modelStep) {
    for (const contentBlock of modelStep.content) {
      if (contentBlock.type === 'text') console.log(contentBlock.text);
    }
  }
}

main();

REST

# Specifies the API revision to avoid breaking changes when they become default
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H 'Content-Type: application/json' \
  -H "Api-Revision: 2026-05-20" \
  -d '{
    "model": "gemini-3-flash-preview",
    "input": "Explain how AI works in a few words"
  }'

Mode tanpa status

Secara default, Interactions API mengelola status percakapan di sisi server saat Anda menggunakan previous_interaction_id. Jika Anda lebih memilih untuk mengelola histori percakapan sendiri di sisi klien, Anda dapat memilih untuk menggunakan mode tanpa status dengan menyetel store=false dan meneruskan langkah-langkah yang terakumulasi di kolom input pada permintaan berikutnya.

Untuk mengetahui detail dan contoh stateless multi-turn lengkap, lihat Panduan pembuatan teks.

Langkah berikutnya

Setelah membuat permintaan API pertama, Anda mungkin ingin mempelajari panduan berikut yang menunjukkan cara kerja Gemini: