שימוש במפתחות API של Gemini

כדי להשתמש ב-Gemini API, אתם צריכים מפתח API. אתם יכולים ליצור מפתח בחינם בכמה קליקים ב-Google AI Studio.

אחרי שמקבלים מפתח API, אפשר להתחבר ל-Gemini API באחת מהדרכים הבאות:

לצורך בדיקה ראשונית, אפשר להגדיר מפתח API בהארדקוד, אבל זה צריך להיות זמני כי זה לא מאובטח. דוגמאות לקידוד קשיח של מפתח ה-API מופיעות בקטע הוספה מפורשת של מפתח API.

הגדרת מפתח API כמשתנה סביבה

אם מגדירים את משתנה הסביבה GEMINI_API_KEY או GOOGLE_API_KEY, מפתח ה-API יזוהה באופן אוטומטי על ידי הלקוח כשמשתמשים באחת מספריות Gemini API. מומלץ להגדיר רק אחד מהמשתנים האלה, אבל אם מגדירים את שניהם, GOOGLE_API_KEY מקבל עדיפות.

אם אתם משתמשים ב-API ל-REST או ב-JavaScript בדפדפן, תצטרכו לספק את מפתח ה-API באופן מפורש.

כך מגדירים את מפתח ה-API באופן מקומי כמשתנה הסביבה GEMINI_API_KEY במערכות הפעלה שונות.

‫Linux/macOS – Bash

‫Bash היא הגדרה נפוצה של טרמינל ב-Linux וב-macOS. כדי לבדוק אם יש לכם קובץ תצורה בשבילו, מריצים את הפקודה הבאה:

~/.bashrc

אם התשובה היא "No such file or directory" (אין קובץ או ספרייה כאלה), צריך ליצור את הקובץ הזה ולפתוח אותו באמצעות הפעלת הפקודות הבאות, או להשתמש ב-zsh:

touch ~/.bashrc
open ~/.bashrc

בשלב הבא, צריך להגדיר את מפתח ה-API על ידי הוספת פקודת הייצוא הבאה:

export GEMINI_API_KEY=<YOUR_API_KEY_HERE>

אחרי ששומרים את הקובץ, מריצים את הפקודה הבאה כדי להחיל את השינויים:

source ~/.bashrc

‫macOS – Zsh

‫Zsh היא הגדרה נפוצה של טרמינל ב-Linux וב-macOS. כדי לבדוק אם יש לכם קובץ תצורה בשבילו, מריצים את הפקודה הבאה:

~/.zshrc

אם התשובה היא "No such file or directory" (אין קובץ או ספרייה כאלה), צריך ליצור את הקובץ הזה ולפתוח אותו באמצעות הפעלת הפקודות הבאות, או להשתמש ב-bash:

touch ~/.zshrc
open ~/.zshrc

בשלב הבא, צריך להגדיר את מפתח ה-API על ידי הוספת פקודת הייצוא הבאה:

export GEMINI_API_KEY=<YOUR_API_KEY_HERE>

אחרי ששומרים את הקובץ, מריצים את הפקודה הבאה כדי להחיל את השינויים:

source ~/.zshrc

Windows

  1. מחפשים את האפשרות 'משתני סביבה' בהגדרות המערכת.
  2. עורכים את 'משתני משתמש' (למשתמש הנוכחי) או את 'משתני מערכת' (לכל המשתמשים – צריך להיזהר כשמשתמשים באפשרות הזו).
  3. יוצרים את המשתנה ומוסיפים אותו export GEMINI_API_KEY=your_key_here
  4. החלה של השינויים

ציון מפתח API באופן מפורש

במקרים מסוימים, כדאי לספק מפתח API באופן מפורש. לדוגמה:

  • אתם מבצעים קריאה פשוטה ל-API ומעדיפים להגדיר את מפתח ה-API בהארדקוד.
  • אתם רוצים שליטה מפורשת בלי להסתמך על גילוי אוטומטי של משתני סביבה על ידי ספריות Gemini API
  • אתם משתמשים בסביבה שבה משתני סביבה לא נתמכים (למשל, באינטרנט) או שאתם מבצעים קריאות ל-REST.

בהמשך מפורטות דוגמאות לאופן שבו אפשר לספק מפתח API באופן מפורש:

Python

from google import genai

client = genai.Client(api_key="YOUR_API_KEY")

response = client.models.generate_content(
    model="gemini-2.5-flash", contents="Explain how AI works in a few words"
)
print(response.text)

JavaScript

import { GoogleGenAI } from "@google/genai";

const ai = new GoogleGenAI({ apiKey: "YOUR_API_KEY" });

async function main() {
  const response = await ai.models.generateContent({
    model: "gemini-2.5-flash",
    contents: "Explain how AI works in a few words",
  });
  console.log(response.text);
}

main();

Go

package main

import (
    "context"
    "fmt"
    "log"
    "google.golang.org/genai"
)

func main() {
    ctx := context.Background()
    client, err := genai.NewClient(ctx, &genai.ClientConfig{
        APIKey:  "YOUR_API_KEY",
        Backend: genai.BackendGeminiAPI,
    })
    if err != nil {
        log.Fatal(err)
    }

    result, err := client.Models.GenerateContent(
        ctx,
        "gemini-2.5-flash",
        genai.Text("Explain how AI works in a few words"),
        nil,
    )
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println(result.Text())
}

Java

package com.example;

import com.google.genai.Client;
import com.google.genai.types.GenerateContentResponse;

public class GenerateTextFromTextInput {
  public static void main(String[] args) {
    Client client = Client.builder().apiKey("YOUR_API_KEY").build();

    GenerateContentResponse response =
        client.models.generateContent(
            "gemini-2.5-flash",
            "Explain how AI works in a few words",
            null);

    System.out.println(response.text());
  }
}

REST

curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent?key=$YOUR_API_KEY" \
  -H 'Content-Type: application/json' \
  -X POST \
  -d '{
    "contents": [
      {
        "parts": [
          {
            "text": "Explain how AI works in a few words"
          }
        ]
      }
    ]
  }'

שמירה על אבטחת מפתח ה-API

חשוב להתייחס למפתח Gemini API כמו לסיסמה. אם פרטי הכניסה נחשפו, אחרים יכולים להשתמש במכסת הפרויקט, לחייב אתכם (אם החיוב מופעל) ולגשת לנתונים הפרטיים שלכם, כמו קבצים.

כללי אבטחה קריטיים

  • לעולם אל תבצעו קומיט של מפתחות API לבקרת מקור. אל תכניסו את מפתח ה-API למערכות ניהול גרסאות כמו Git.

  • לעולם אל תחשפו מפתחות API בצד הלקוח. לא להשתמש במפתח ה-API ישירות באפליקציות לאינטרנט או לנייד בסביבת ייצור. אפשר לחלץ מפתחות מקוד בצד הלקוח (כולל ספריות JavaScript/TypeScript וקריאות ל-REST).

שיטות מומלצות

  • שימוש בקריאות בצד השרת עם מפתחות API הדרך הכי מאובטחת להשתמש במפתח API היא לשלוח קריאה ל-Gemini API מאפליקציה בצד השרת, שבה אפשר לשמור את המפתח בסודיות.

  • שימוש באסימונים זמניים לגישה בצד הלקוח (Live API בלבד): כדי לקבל גישה ישירה ל-Live API בצד הלקוח, אפשר להשתמש באסימונים זמניים. הם מגיעים עם סיכוני אבטחה נמוכים יותר ויכולים להתאים לשימוש בסביבת ייצור. מידע נוסף זמין במדריך בנושא טוקנים זמניים.

  • כדאי להוסיף הגבלות למפתח: אפשר להגביל את ההרשאות של מפתח על ידי הוספת הגבלות על מפתחות API. כך מצמצמים את הנזק הפוטנציאלי אם המפתח ידלוף.

בנוסף, אפשר לעיין במאמר התמיכה הזה כדי לקבל מידע על שיטות מומלצות כלליות.