Ten przewodnik zawiera informacje o tworzeniu i używaniu agentów zarządzanych w interfejsie Gemini API na przykładzie agenta Antigravity. Wykonasz pierwsze wywołanie agenta, poprowadzisz wieloetapową rozmowę, będziesz stopniowo wyświetlać odpowiedź, pobierać pliki z piaskownicy i pracować z agentem zarządzanym Antigravity.
Uruchamianie pierwszej interakcji z agentem
Pojedyncze wywołanie interfejsu Interactions API powoduje udostępnienie piaskownicy Linux, uruchomienie pętli agenta i zwrócenie wyniku. Określisz 3 parametry:
- Przekaż
agentjako"antigravity-preview-05-2026",, czyli aktualną wersję naszego predefiniowanego agenta zarządzanego ogólnego przeznaczenia. - Określ
environment="remote", aby udostępnić nowe środowisko piaskownicy. Utwórz dane wejściowe, określając, co ma robić agent.
Python
from google import genai
client = genai.Client()
interaction = client.interactions.create(
agent="antigravity-preview-05-2026",
input="Write a Python script that generates the first 20 Fibonacci numbers and saves them to fibonacci.txt. Then read the file and print its contents.",
environment="remote",
)
# Print the agent's final output
print(f"Interaction ID: {interaction.id}")
print(f"Environment ID: {interaction.environment_id}")
print(f"Output: {interaction.output_text}")
JavaScript
import { GoogleGenAI } from "@google/genai";
const client = new GoogleGenAI({});
const interaction = await client.interactions.create({
agent: "antigravity-preview-05-2026",
input: "Write a Python script that generates the first 20 Fibonacci numbers and saves them to fibonacci.txt. Then read the file and print its contents.",
environment: "remote",
});
console.log(`Interaction ID: ${interaction.id}`);
console.log(`Environment ID: ${interaction.environment_id}`);
console.log(`Output: ${interaction.output_text}`);
REST
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "Content-Type: application/json" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-d '{
"agent": "antigravity-preview-05-2026",
"input": [{"type": "text", "text": "Write a Python script that generates the first 20 Fibonacci numbers and saves them to fibonacci.txt. Then read the file and print its contents."}],
"environment": {"type": "remote"}
}'
Odpowiedź zwraca obiekt Interaction. Zapisz interaction.id i interaction.environment_id, aby kontynuować rozmowę w tej samej piaskownicy. Użyj interaction.output_text, aby uzyskać dostęp do ostatecznej odpowiedzi agenta. interaction.steps zawiera listę wszystkich kroków wykonanych przez agenta (rozumowanie, wywołania narzędzi, wykonanie kodu).
Kontynuowanie rozmowy (wieloetapowej)
Interfejs API śledzi 2 niezależne wymiary stanu:
- Kontekst rozmowy: historia czatu, ślad uzasadnienia, użycie narzędzia, użycie
previous_interaction_id. - Stan środowiska: pliki, zainstalowane pakiety i stan piaskownicy, użycie
environment.
Aby wznowić, przekaż oba w odpowiednim miejscu:
Python
interaction_2 = client.interactions.create(
agent="antigravity-preview-05-2026",
previous_interaction_id=interaction.id,
environment=interaction.environment_id,
input="Now plot the Fibonacci sequence as a line chart and save it as chart.png.",
)
print(interaction_2.output_text)
JavaScript
const interaction2 = await client.interactions.create({
agent: "antigravity-preview-05-2026",
previous_interaction_id: interaction.id,
environment: interaction.environment_id,
input: "Now plot the Fibonacci sequence as a line chart and save it as chart.png.",
}, { timeout: 300_000 });
console.log(interaction2.output_text);
REST
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "Content-Type: application/json" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-d '{
"agent": "antigravity-preview-05-2026",
"previous_interaction_id": "interaction_id_from_step_1",
"environment": "environment_id_from_step_1",
"input": [{"type": "text", "text": "Now plot the Fibonacci sequence as a line chart and save it as chart.png."}]
}'
Pliki z etapu 1 (fibonacci.txt) są zachowywane na etapie 2. Agent zachowuje też kontekst rozmowy.
Możesz je łączyć i dopasowywać niezależnie:
- Wyczyść rozmowę, zachowaj pliki: pomiń
previous_interaction_id, przekaż tylko identyfikator środowiska za pomocąenvironment, aby rozpocząć nową rozmowę w tym samym obszarze roboczym. - Zachowaj rozmowę, nowy obszar roboczy: przekaż
previous_interaction_id, ustawenvironment="remote"dla nowej piaskownicy.
Automatyczne kompresowanie kontekstu
W długotrwałych rozmowach wieloetapowych surowa historia kroków rozumowania, wywołań narzędzi i zawartości dużych plików może szybko się rozrastać i zajmować znaczną przestrzeń kontekstu. Aby zapobiec błędom związanym z przekroczeniem limitu tokenów i utrzymać koncentrację agenta (zapobiegając „utracie kontekstu”), interfejs API zarządzanych agentów zawiera natywny krok kompresowania kontekstu przy około 135 tys. tokenów. Dzieje się to automatycznie.
Stopniowe wyświetlanie odpowiedzi
W przypadku długotrwałych zadań możesz stopniowo wyświetlać odpowiedź, aby zobaczyć, jak agent pracuje w czasie rzeczywistym:
Python
from google import genai
client = genai.Client()
stream = client.interactions.create(
agent="antigravity-preview-05-2026",
input="Read Hacker News, summarize the top 5 stories, and save the results as a PDF.",
environment="remote",
stream=True,
)
for event in stream:
print(event)
if event.event_type == "step.stop" and event.usage:
print(event.usage)
JavaScript
import { GoogleGenAI } from "@google/genai";
const client = new GoogleGenAI({});
const stream = await client.interactions.create({
agent: "antigravity-preview-05-2026",
input: "Read Hacker News, summarize the top 5 stories, and save the results as a PDF.",
environment: "remote",
stream: true,
});
for await (