Korzystanie z narzędzi za pomocą interfejsu Gemini API

Narzędzia rozszerzają możliwości modeli Gemini, umożliwiając im podejmowanie działań w świecie rzeczywistym, dostęp do informacji w czasie rzeczywistym i wykonywanie złożonych zadań obliczeniowych. Modele mogą korzystać z narzędzi zarówno w standardowych interakcjach typu żądanie-odpowiedź, jak i w sesjach strumieniowania w czasie rzeczywistym za pomocą interfejsu Live API.

Gemini API udostępnia zestaw w pełni zarządzanych, wbudowanych narzędzi zoptymalizowanych pod kątem modeli Gemini. Możesz też zdefiniować narzędzia niestandardowe za pomocą wywoływania funkcji.

Dostępne wbudowane narzędzia

Narzędzie Opis Przypadki użycia
Wyszukiwarka Google Powiąż odpowiedzi z aktualnymi wydarzeniami i faktami z internetu, aby ograniczyć halucynacje. – odpowiadanie na pytania dotyczące ostatnich wydarzeń
, – weryfikowanie faktów w różnych źródłach.
Mapy Google Twórz asystentów korzystających z lokalizacji, którzy mogą znajdować miejsca, wyznaczać trasy i dostarczać szczegółowe informacje o lokalnym kontekście. – planowanie tras podróży z wieloma przystankami
– wyszukiwanie lokalnych firm na podstawie kryteriów użytkownika
Wykonywanie kodu Umożliwia modelowi pisanie i uruchamianie kodu w Pythonie w celu dokładnego rozwiązywania problemów matematycznych lub przetwarzania danych. – Rozwiązywanie złożonych równań matematycznych
– Precyzyjne przetwarzanie i analizowanie danych tekstowych
Kontekst adresu URL Wskaż modelowi, aby odczytywał i analizował treści z określonych stron internetowych lub dokumentów. – odpowiadanie na pytania na podstawie konkretnych adresów URL lub dokumentów
– wyszukiwanie informacji na różnych stronach internetowych.
Korzystanie z komputera (wersja zapoznawcza) Zezwól Gemini na wyświetlanie ekranu i generowanie działań umożliwiających interakcję z interfejsami przeglądarki (wykonywanie po stronie klienta). – Automatyzacja powtarzalnych przepływów pracy w internecie
– Testowanie interfejsów użytkownika aplikacji internetowych
Wyszukiwanie plików Indeksowanie i wyszukiwanie własnych dokumentów, aby umożliwić generowanie rozszerzone przez wyszukiwanie w zapisanych informacjach (RAG). – wyszukiwanie w instrukcjach technicznych
, – odpowiadanie na pytania dotyczące danych własnych.

Szczegółowe informacje o kosztach związanych z poszczególnymi narzędziami znajdziesz na stronie z cennikiem.

Jak działa wykonywanie narzędzi

Narzędzia umożliwiają modelowi wysyłanie próśb o wykonanie działań podczas rozmowy. Proces różni się w zależności od tego, czy narzędzie jest wbudowane (zarządzane przez Google) czy niestandardowe (zarządzane przez Ciebie).

Przepływ wbudowanego narzędzia

W przypadku wbudowanych narzędzi, takich jak wyszukiwarka Google czy wykonywanie kodu, cały proces odbywa się w ramach jednego wywołania interfejsu API:

  1. Ty: „Ile wynosi pierwiastek kwadratowy z najnowszej ceny akcji GOOG?”.
  2. Gemini stwierdza, że potrzebuje narzędzi, i uruchamia je na serwerach Google (np. wyszukuje cenę akcji, a potem uruchamia kod Pythona, aby obliczyć pierwiastek kwadratowy).
  3. Gemini odsyła ostateczną odpowiedź opartą na wynikach narzędzia.

Niestandardowy przepływ narzędzi (wywoływanie funkcji)

W przypadku narzędzi niestandardowych i korzystania z komputera wykonanie jest obsługiwane przez aplikację:

  1. Ty wysyłasz prompta wraz z deklaracjami funkcji (narzędzi).
  2. Gemini może odesłać uporządkowany plik JSON, aby wywołać konkretną funkcję (np. {"name": "get_order_status", "args": {"order_id": "123"}}).
  3. Ty wykonujesz funkcję w aplikacji lub środowisku.
  4. Ty wysyłasz wyniki funkcji z powrotem do Gemini.
  5. Gemini używa wyników do wygenerowania ostatecznej odpowiedzi lub kolejnego wywołania narzędzia.

Więcej informacji znajdziesz w przewodniku po wywoływaniu funkcji.

Uporządkowane dane wyjściowe a wywoływanie funkcji

Gemini oferuje 2 metody generowania danych strukturalnych. Używaj wywoływania funkcji, gdy model musi wykonać krok pośredni, łącząc się z Twoimi narzędziami lub systemami danych. Używaj strukturalnych danych wyjściowych, gdy potrzebujesz, aby ostateczna odpowiedź modelu była zgodna z określonym schematem, np. w przypadku renderowania niestandardowego interfejsu.

Uporządkowane dane wyjściowe z narzędzi

Możesz łączyć dane wyjściowe w formacie strukturalnym z wbudowanymi narzędziami, aby mieć pewność, że odpowiedzi modelu oparte na danych zewnętrznych lub obliczeniach nadal są zgodne ze ścisłym schematem.

Przykłady kodu znajdziesz w artykule Ustrukturyzowane dane wyjściowe z użyciem narzędzi.

Tworzenie agentów

Agenty to systemy, które wykorzystują modele i narzędzia do wykonywania zadań wieloetapowych. Gemini zapewnia możliwości rozumowania (czyli „mózg”) i podstawowe narzędzia („ręce”), ale często potrzebujesz platformy orkiestracyjnej do zarządzania pamięcią agenta, planowania pętli i wykonywania złożonych łańcuchów narzędzi.

Aby zmaksymalizować niezawodność w wieloetapowych przepływach pracy, należy tworzyć instrukcje, które wyraźnie kontrolują sposób rozumowania i planowania modelu. Chociaż Gemini zapewnia silne ogólne rozumowanie, złożone agenty korzystają z promptów, które wymuszają określone zachowania, takie jak wytrwałość w obliczu problemów, ocena ryzyka i proaktywne planowanie.

Strategie projektowania tych promptów znajdziesz w artykule Przepływy pracy oparte na agentach. Oto przykład instrukcji systemowej, która poprawiła wyniki w kilku testach porównawczych agentów o około 5%.

Platformy agentów

Gemini integruje się z najpopularniejszymi platformami agentów open source, takimi jak:

  • LangChain / LangGraph: twórz złożone przepływy aplikacji z zachowywaniem stanu i systemy wieloagentowe za pomocą struktur grafów.
  • LlamaIndex połącz agentów Gemini z danymi prywatnymi, aby usprawnić przepływy pracy oparte na RAG.
  • CrewAI koordynuj współpracę autonomicznych agentów AI odgrywających różne role.
  • Vercel AI SDK: tworzenie interfejsów użytkownika i agentów opartych na AI w JavaScript/TypeScript.
  • Google ADK: platforma open source do tworzenia i koordynowania interoperacyjnych agentów AI.