Fillimi i shpejtë i API-së Gemini

Ky udhëzues i shpejtë ju tregon se si të instaloni bibliotekat tona dhe të bëni kërkesën tuaj të parë, të transmetoni përgjigjet, të ndërtoni biseda me shumë kthesa dhe të përdorni mjetet.

Ka dy mënyra që mund të përdorni për të dërguar një kërkesë në Gemini API:

  • (I rekomanduar) API-ja e Interactions është një primitiv i ri me mbështetje të integruar për përdorimin e mjeteve me shumë hapa, orkestrimin dhe rrjedhat komplekse të arsyetimit përmes hapave të ekzekutimit të tipizuar. Duke vazhduar më tej, modele të reja përtej familjes kryesore kryesore, së bashku me aftësi dhe mjete të reja agjentike, do të lançohen ekskluzivisht në API-në e Interactions.
  • generateContent ofron një mënyrë për të gjeneruar një përgjigje pa gjendje nga një model. Ndërsa ne rekomandojmë përdorimin e Interactions API, generateContent mbështetet plotësisht.

Ky version i nisjes së shpejtë përdor API-në e Ndërveprimeve për të dërguar një kërkesë te API-ja Gemini.

Para se të filloni

Për të përdorur Gemini API, duhet të keni një çelës API për të autentifikuar kërkesat tuaja, për të zbatuar kufijtë e sigurisë dhe për të ndjekur përdorimin e llogarisë suaj.

Krijo një falas në AI Studio për të filluar:

Krijo një Çelës API Gemini

Instaloni SDK-në Google GenAI

Python

Duke përdorur Python 3.9+ , instaloni paketën google-genai duke përdorur komandën e mëposhtme pip :

pip install -q -U google-genai

JavaScript

Duke përdorur Node.js v18+ , instaloni SDK-në Google Gen AI për TypeScript dhe JavaScript duke përdorur komandën npm të mëposhtme:

npm install @google/genai

Gjenero tekst

Përdorni metodën interactions.create për të gjeneruar një përgjigje me tekst .

Python

from google import genai

client = genai.Client()

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

print(interaction.output_text)

JavaScript

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

const ai = new GoogleGenAI({});

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

  console.log(interaction.output_text);
}

main();

PUSHTIM

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.5-flash",
    "input": "Explain how AI works in a few words"
  }'

Transmetoni përgjigjet

Si parazgjedhje, modeli kthen një përgjigje vetëm pasi të përfundojë i gjithë procesi i gjenerimit. Për një përvojë më të shpejtë dhe më interaktive, mund të transmetoni pjesët e përgjigjes ndërsa ato gjenerohen.

Python

stream = client.interactions.create(
    model="gemini-3.5-flash",
    input="Explain how AI works in detail",
    stream=True
)

for event in stream:
    if event.event_type == "step.delta":
        if event.delta.type == "text":
            print(event.delta.text, end="", flush=True)

JavaScript

async function main() {
  const stream = await ai.interactions.create({
    model: "gemini-3.5-flash",
    input: "Explain how AI works in detail",
    stream: true,
  });

  for await (const event of stream) {
    if (event.event_type === "step.delta") {
      if (event.delta.type === "text") {
        process.stdout.write(event.delta.text);
      }
    }
  }
}

main();

PUSHTIM

# Use alt=sse for streaming
curl -X POST \
  "https://generativelanguage.googleapis.com/v1beta/interactions?alt=sse" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H 'Content-Type: application/json' \
  -H "Api-Revision: 2026-05-20" \
  --no-buffer \
  -d '{
    "model": "gemini-3.5-flash",
    "input": "Explain how AI works in detail",
    "stream": true
  }'

Biseda me shumë kthesa

API-ja Gemini ka mbështetje të integruar për ndërtimin e bisedave me shumë kthesa . Thjesht kaloni id -në e kthyer nga bashkëveprimi i mëparshëm si parametrin previous_interaction_id dhe serveri do të menaxhojë automatikisht historikun e bisedave.

Python


interaction1 = client.interactions.create(
    model="gemini-3.5-flash",
    input="I have 2 dogs in my house."
)
print("Response 1:", interaction1.output_text)

interaction2 = client.interactions.create(
    model="gemini-3.5-flash",
    input="How many paws are in my house?",
    previous_interaction_id=interaction1.id
)
print("Response 2:", interaction2.output_text)

JavaScript

async function main() {
  const interaction1 = await ai.interactions.create({
    model: "gemini-3-flash-preview",
    input: "I have 2 dogs in my house.",
  });
  console.log("Response 1:", interaction1.output_text);

  const interaction2 = await ai.interactions.create({
    model: "gemini-3-flash-preview",
    input: "How many paws are in my house?",
    previous_interaction_id: interaction1.id,
  });
  console.log("Response 2:", interaction2.output_text);
}

main();

PUSHTIM

# Turn 1: Start the conversation
RESPONSE1=$(curl -s -X POST \
  "https://generativelanguage.googleapis.com/v1beta/interactions" \
  -H "Api-Revision: 2026-05-20" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
    "model": "gemini-3-flash-preview",
    "input": "I have 2 dogs in my house."
  }')

# Extract the interaction ID
INTERACTION_ID=$(echo "$RESPONSE1" | jq -r '.id')

# Turn 2: Continue the conversation
curl -X POST \
  "https://generativelanguage.googleapis.com/v1beta/interactions" \
  -H "Api-Revision: 2026-05-20" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H 'Content-Type: application/json' \
  -d "{
    \"model\": \"gemini-3-flash-preview\",
    \"input\": \"How many paws are in my house?\",
    \"previous_interaction_id\": \"$INTERACTION_ID\"
  }"

Përdorni mjete

Zgjeroni aftësitë e modelit duke i bazuar përgjigjet me Kërkimin në Google për të aksesuar përmbajtjen e uebit në kohë reale. Modeli vendos automatikisht se kur të kërkojë, ekzekuton pyetjet dhe sintetizon një përgjigje me citime.

Shembulli i mëposhtëm tregon se si të aktivizoni Kërkimin në Google:

Python

interaction = client.interactions.create(
    model="gemini-3-flash-preview",
    input="Who won the euro 2024?",
    tools=[{"type": "google_search"}]
)

print(interaction.output_text)

for step in interaction.steps:
    if step.type == "model_output":
        for content_block in step.content:
            if content_block.type == "text" and content_block.annotations:
                print("\nCitations:")
                for annotation in content_block.annotations:
                    if annotation.type == "url_citation":
                        print(f"  - [{annotation.title}]({annotation.url})")

JavaScript

async function main() {
  const interaction = await ai.interactions.create({
    model: "gemini-3-flash-preview",
    input: "Who won the euro 2024?",
    tools: [{ type: "google_search" }]
  });

  console.log(interaction.output_text);

  for (const step of interaction.steps) {
    if (step.type === 'model_output') {
      for (const contentBlock of step.content) {
        if (contentBlock.type === 'text' && contentBlock.annotations) {
          console.log("\nCitations:");
          for (const annotation of contentBlock.annotations) {
            if (annotation.type === 'url_citation') {
              console.log(`  - [${annotation.title}](${annotation.url})`);
            }
          }
        }
      }
    }
  }
}

main();

PUSHTIM

curl -X POST \
  "https://generativelanguage.googleapis.com/v1beta/interactions" \
  -H "Api-Revision: 2026-05-20" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gemini-3-flash-preview",
    "input": "Who won the euro 2024?",
    "tools": [{"type": "google_search"}]
  }'

API-ja Gemini mbështet gjithashtu mjete të tjera të integruara:

  • Ekzekutimi i kodit : Lejon modelin të shkruajë dhe ekzekutojë kod Python për të zgjidhur probleme komplekse matematikore.
  • Konteksti i URL-së : Ju lejon të bazoni përgjigjet në URL-të specifike të faqeve të internetit që ofroni.
  • Kërkimi i skedarëve : Ju lejon të ngarkoni skedarë dhe të bazoni përgjigjet në përmbajtjen e tyre duke përdorur kërkimin semantik.
  • Google Maps : Ju lejon të bazoni përgjigjet në të dhënat e vendndodhjes dhe të kërkoni vende, udhëzime dhe harta.
  • Përdorimi i kompjuterit : Lejon modelin të bashkëveprojë me një ekran virtual kompjuteri, tastierë dhe mi për të kryer detyra.

Thirrni funksionet e personalizuara

Përdorni thirrjen e funksioneve për të lidhur modelet me mjetet dhe API-të tuaja të personalizuara. Modeli përcakton se kur duhet të thirret funksioni juaj dhe kthen një hap function_call me argumentet që aplikacioni juaj të ekzekutojë.

Ky shembull deklaron një funksion të improvizuar të temperaturës dhe kontrollon nëse modeli dëshiron ta thërrasë atë.

Python

import json

weather_function = {
    "type": "function",
    "name": "get_current_temperature",
    "description": "Gets the current temperature for a given location.",
    "parameters": {
        "type": "object",
        "properties": {
            "location": {
                "type": "string",
                "description": "The city name, e.g. San Francisco",
            },
        },
        "required": ["location"],
    },
}

interaction = client.interactions.create(
    model="gemini-3-flash-preview",
    input="What's the temperature in London?",
    tools=[weather_function],
)

fc_step = None
for step in interaction.steps:
    if step.type == "function_call":
        fc_step = step
        break

if fc_step:
    print(f"Model requested function: {fc_step.name} with args {fc_step.arguments}")

    mock_result = {"temperature": "15C", "condition": "Cloudy"}

    final_interaction = client.interactions.create(
        model="gemini-3-flash-preview",
        input=[
            {
                "type": "function_result",
                "name": fc_step.name,
                "call_id": fc_step.id,
                "result": [{"type": "text", "text": json.dumps(mock_result)}],
            }
        ],
        tools=[weather_function],
        previous_interaction_id=interaction.id,
    )
    print("Final Response:", final_interaction.output_text)

JavaScript

async function main() {
  const weatherFunction = {
    type: 'function',
    name: 'get_current_temperature',
    description: 'Gets the current temperature for a given location.',
    parameters: {
      type: 'object',
      properties: {
        location: {
          type: 'string',
          description: 'The city name, e.g. San Francisco',
        },
      },
      required: ['location'],
    },
  };

  const interaction = await ai.interactions.create({
    model: 'gemini-3-flash-preview',
    input: "What's the temperature in London?",
    tools: [weatherFunction],
  });

  const fcStep = interaction.steps.find(s => s.type === 'function_call');
  if (fcStep) {
    console.log(`Model requested function: ${fcStep.name}`);

    const mockResult = { temperature: "15C", condition: "Cloudy" };

    const finalInteraction = await ai.interactions.create({
      model: 'gemini-3-flash-preview',
      input: [{
        type: 'function_result',
        name: fcStep.name,
        call_id: fcStep.id,
        result: [{ type: 'text', text: JSON.stringify(mockResult) }]
      }],
      tools: [weatherFunction],
      previous_interaction_id: interaction.id,
    });

    console.log("Final Response:", finalInteraction.output_text);
  }
}

main();

PUSHTIM

curl -X POST \
  "https://generativelanguage.googleapis.com/v1beta/interactions" \
  -H "Api-Revision: 2026-05-20" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gemini-3-flash-preview",
    "input": "What'\''s the temperature in London?",
    "tools": [{
      "type": "function",
      "name": "get_current_temperature",
      "description": "Gets the current temperature for a given location.",
      "parameters": {
        "type": "object",
        "properties": {
          "location": {"type": "string", "description": "The city name"}
        },
        "required": ["location"]
      }
    }]
  }'

Çfarë vjen më pas

Tani që keni filluar me Gemini API, shqyrtoni udhëzuesit e mëposhtëm për të ndërtuar aplikacione më të avancuara: