Tworzenie prostego agenta podróży za pomocą pakietu ADK i interfejsu wiersza poleceń Gemini

1. Wprowadzenie

9344c1d1a9f221b7.png

Ostatnia aktualizacja: 22 czerwca 2026 r.

Tworzenie prostego agenta turystycznego za pomocą pakietu ADK

Witamy na warsztatach poświęconych ADK w Pythonie(*), które dzięki interfejsowi wiersza poleceń Gemini zawierają wszystko, czego potrzebujesz.

Ten moduł jest podzielony na 2 🏅 etapy:

  1. Typowa, prosta ścieżka szkoleniowa: konfiguracja i natychmiastowe korzyści.
  2. spersonalizowaną ścieżkę, na której wybierasz moduł do rozwiązania z pomocą interfejsu wiersza poleceń Gemini;

Druga część sprawia, że ten codelab idealnie nadaje się na hackathon (z nagrodami za najbardziej kreatywne rozwiązania).

Kamień milowy 1. Twój pierwszy agent z ADK i interfejsem wiersza poleceń Gemini

Celem tego etapu jest utworzenie prostego biura podróży za pomocą pakietu ADK krok po kroku. W tym celu najpierw skonfigurujemy interfejs wiersza poleceń Gemini, aby pomagał nam w kodowaniu za pomocą ADK. Dzięki temu lokalna powłoka będzie mogła wybrać najnowszą wersję ADK Pythona, przeanalizować kod i dokumentację oraz dostarczyć najnowszy i najlepszy kod do pracy nad Twoim celem.

W tej części będziemy Cię prowadzić krok po kroku, aby stworzyć w pełni działającą aplikację za pomocą małych, prostych kroków. Zwykle zajmuje to około godziny (plus czas instalacji).

Etap 2. Rozszerzanie możliwości agenta

Następnie przedstawimy Ci kilkanaście opcji (o różnym stopniu trudności), które pozwolą Ci rozbudować aplikację według własnych upodobań. Dzięki temu możesz poznać różne aspekty (interfejs, operacje, złożone interakcje agentów itp.).

Co utworzysz

W tym ćwiczeniu utworzysz aplikację biura podróży za pomocą pakietu ADK i interfejsu wiersza poleceń Gemini. Twoja aplikacja będzie:

  • Połącz się z interfejsami API Airbnb za pomocą Airbnb MCP.
  • wyszukiwanie w internecie aktualnych informacji (pogoda, daty itp.);
  • wykonywać niestandardowe narzędzia;
  • Utwórz obrazy apartamentów/pokoi za pomocą Nano Banana.

Interfejs wiersza poleceń Gemini przeprowadzi Cię przez wszystkie te czynności: pisanie i sprawdzanie kodu oraz znajdowanie najnowszej dokumentacji w lokalnym obrazie repozytorium ADK (w języku Python lub Twoim ulubionym języku).

Czego się nauczysz

  • Jak utworzyć aplikację za pomocą ADK
  • Jak używać interfejsu wiersza poleceń Gemini do kodowania aplikacji na podstawie lokalnych dokumentów.
  • jak wchodzić w interakcje z serwerem MCP, aby łączyć się z zewnętrznymi źródłami danych w czasie rzeczywistym, np.:

Czego potrzebujesz

  • komputer, na którym można instalować pakiety (np. npm install ..);
  • podstawowa umiejętność programowania w języku Python, TypeScript, Go lub Java;
  • Zdecydowanie zalecamy korzystanie z jakiegoś środowiska IDE (Antigravity, VS Code, IntelliJ, Vim).

Dlaczego warto używać pakietu ADK i interfejsu wiersza poleceń Gemini?

Niektórzy z Was mogą się zastanawiać: Dlaczego muszę używać ADK (pakietu SDK do tworzenia agentów) w połączeniu z lokalnym pomocnikiem kodu agentowego (takim jak interfejs wiersza poleceń Gemini)? Powodem jest to, że oba narzędzia są niezwykle zaawansowane, ale ich interakcja nie jest prosta. Wiele osób próbowało pracować z nimi jednocześnie, ale bez powodzenia (głównie z powodu problemów z „pętlą w pętli”). W tym ćwiczeniu znajdziesz kilka wskazówek, jak umożliwić współistnienie tych dwóch technologii.

2. Przygotowania

Wybierz jedną z tych opcji: Samodzielna konfiguracja środowiska, jeśli chcesz uruchomić tego codelaba na własnym komputerze, lub Uruchom Cloud Shell, jeśli chcesz uruchomić tego codelaba całkowicie w chmurze.

Samodzielne konfigurowanie środowiska

  1. Zaloguj się w konsoli Google Cloud i utwórz nowy projekt lub użyj istniejącego. Jeśli nie masz jeszcze konta Gmail lub Google Workspace, musisz je utworzyć.

295004821bab6a87.png37d264871000675d.png96d86d3d5655cdbe.png

  • Nazwa projektu to wyświetlana nazwa dla uczestników tego projektu. Jest to ciąg znaków, który nie jest używany przez interfejsy API Google. Zawsze możesz go zaktualizować.
  • Identyfikator projektu jest unikalny we wszystkich projektach Google Cloud i nie można go zmienić po ustawieniu. Konsola Cloud automatycznie generuje unikalny ciąg znaków, który zwykle nie ma znaczenia. W większości modułów codelabs musisz odwołać się do identyfikatora projektu (zwykle identyfikowanego jako PROJECT_ID). Jeśli wygenerowany identyfikator Ci się nie podoba, możesz wygenerować inny losowy identyfikator. Możesz też spróbować użyć własnej nazwy i sprawdzić, czy jest dostępna. Nie można go zmienić po tym kroku i pozostaje on niezmieniony przez cały czas trwania projektu.
  • Dla Twojej informacji: istnieje trzecia wartość, numer projektu, której używają niektóre interfejsy API. Więcej informacji o tych 3 wartościach znajdziesz w dokumentacji.
  1. Następnie musisz włączyć płatności w konsoli Cloud, aby móc korzystać z zasobów i interfejsów API Google Cloud. Wykonanie tego ćwiczenia w programowaniu nie będzie kosztować dużo, jeśli w ogóle. Aby wyłączyć zasoby i uniknąć naliczania opłat po zakończeniu tego samouczka, możesz usunąć utworzone zasoby lub projekt. Nowi użytkownicy Google Cloud mogą skorzystać z bezpłatnego okresu próbnego, w którym mają do dyspozycji środki w wysokości 300 USD.

Uruchamianie Cloud Shell

Chociaż Google Cloud można obsługiwać zdalnie z laptopa, w tym ćwiczeniu wykorzystasz Google Cloud Shell, czyli środowisko wiersza poleceń działające w chmurze.

W konsoli Google Cloud kliknij ikonę Cloud Shell na pasku narzędzi w prawym górnym rogu:

Aktywowanie Cloud Shell

Uzyskanie dostępu do środowiska i połączenie się z nim powinno zająć tylko kilka chwil. Po zakończeniu powinno wyświetlić się coś takiego:

Zrzut ekranu terminala Google Cloud Shell pokazujący, że środowisko zostało połączone

Ta maszyna wirtualna zawiera wszystkie potrzebne narzędzia dla programistów. Zawiera również stały katalog domowy o pojemności 5 GB i działa w Google Cloud, co znacznie zwiększa wydajność sieci i usprawnia proces uwierzytelniania. Wszystkie zadania w tym ćwiczeniu można wykonać w przeglądarce. Nie musisz niczego instalować.

3. Wymagania wstępne (instalacja)

W tym samouczku musisz zainstalować:

1. Python i uv

python i uv (menedżer pakietów dla Pythona). Jest to wymagane w przypadku ADK. Sprawdź, czy masz zainstalowane narzędzie uv:

$ curl -LsSf https://astral.sh/uv/install.sh | sh

Dlaczego UV? Możesz używać dowolnego menedżera Pythona, ale użycie uv zapewni, że konfiguracja ENV/PATH dla Pythona będzie taka sama dla Ciebie i interfejsu wiersza poleceń Gemini, dzięki czemu środowisko powłoki będzie w większości takie samo jak w przypadku interfejsu wiersza poleceń Gemini. Jeśli na przykład używasz virtualenv , interfejs wiersza poleceń Gemini będzie musiał wykonać polecenie „source .env/venv/bin/activate && my-original-command”, aby odtworzyć Twoje środowisko.

2. interfejs wiersza poleceń Gemini

Instrukcje instalacji interfejsu wiersza poleceń Gemini znajdziesz tutaj: https://github.com/google-gemini/gemini-cli.

# Note: This requires having npm or npx installed.
npm install -g @google/gemini-cli
  1. Na Mac możesz używać brew zgodnie z oficjalną dokumentacją.
  2. W systemie Windows możesz użyć chocolatey lub po prostu pobrać plik wykonywalny ze strony https://nodejs.org/en/download.

W kroku 4 (później) musisz też mieć zainstalowane narzędzie npx. Zarówno npm, jak i npx powinny być naturalnie dostępne w ramach interfejsu wiersza poleceń Gemini. Jeśli nie, poproś o pomoc interfejs wiersza poleceń Gemini.

efade99623113f1.png

Uwierzytelnianie

Potrzebujesz projektu Google Cloud z włączoną usługą Vertex AI lub klucza interfejsu API Google AI Studio.

Opcja A (zalecana w przypadku warsztatów): wyeksportuj klucz interfejsu API:

export GOOGLE_API_KEY="your-api-key"

Opcja B (Vertex AI): uwierzytelnij się za pomocą gcloud:

export GOOGLE_CLOUD_PROJECT="YOUR_PROJECT_ID"
export GOOGLE_CLOUD_LOCATION="YOUR_PROJECT_LOCATION"
export GOOGLE_GENAI_USE_VERTEXAI=true
gcloud auth application-default login

Konfigurowanie środowiska pracy

Utworzysz WŁASNE rozwiązanie w folderze mysolution/, więc utwórzmy folder i 2 potrzebne pliki.

W tym momencie możesz otworzyć środowisko IDE (Visual Studio Code, IntelliJ, RubyMine itp.) i folder.

# 1. Find an empty directory, and download this repo.
git clone https://github.com/palladius/adk-gemini-cli-workshop
cd adk-gemini-cli-workshop/

# 2. Create your solution empty skeleton
mkdir -p mysolution/
touch mysolution/__init__.py mysolution/agent.py

# 3. This installs ADK and MCP via `uv` by reading pyproject.toml
uv init
uv sync

# 4. Call Gemini CLI
gemini  # This runs Gemini CLI under the adk-gemini-cli-workshop/ folder.
# Login with your GMail account.

Synchronizacja uv nie jest bezwzględnie wymagana, ale jeśli się nie powiedzie, oznacza to, że musisz naprawić instalację Pythona lub uv. Powinno to spowodować zainstalowanie adk i innych przydatnych skryptów w folderze ./.venv/bin/.

Aby przetestować konfigurację, możesz po prostu uruchomić make test-step1 i sprawdzić, czy nie pojawia się błąd 403 PERMISSION DENIED.

Dostępne rozwiązania

Cały kod znajduje się w folderze 📂 steps/. Możesz skopiować kod z tego miejsca.

To ćwiczenie nie dotyczy nauki pisania dobrego kodu ADK. Chodzi w nim o skonfigurowanie środowiska, aby DOBRY kod był automatycznie pisany pod Twoim kierunkiem.

  1. Instalowanie oprogramowania
  2. konfiguracja i uruchomienie,
  3. i wejście w pozytywną pętlę informacji zwrotnych.

To jest to, czego chcemy Cię tutaj nauczyć. Możesz też przetestować je wszystkie jednocześnie za pomocą $ make web-4steps.

4. Krok 1. Podstawowy agent

abfef47ab2ff0c98.png

Zacznijmy od utworzenia podstawowego agenta, który może prowadzić rozmowę.

Zmodyfikuj plik o nazwie mysolution/__init__.py, dodając do niego tę zawartość:

from .agent import root_agent

To takie proste! Dzięki temu ADK będzie wiedzieć, gdzie znajduje się Twój kod: w agent.py.

Zmodyfikuj plik o nazwie mysolution/agent.py, dodając do niego tę zawartość:

from google.adk.agents import Agent

root_agent = Agent(
    name="travel_basic",
    model="gemini-2.5-flash",
    instruction="You are a helpful travel assistant." +
    "You can help with general travel advice based on your knowledge.",
)

Testowanie agenta

Dotyczy to wszystkich kroków. ADK umożliwia testowanie agenta na 2 sposoby: za pomocą interfejsu wiersza poleceń i w interfejsie internetowym.

  • CLI najlepiej sprawdza się w przypadku szybkich i automatycznych testów.
  • Wersja internetowa jest najlepsza do wizualnego sprawdzania, co się dzieje, korzystania z mikrofonu (!) i rozwiązywania problemów.

Wskazówka: na potrzeby tego ćwiczenia, aby wykonać dowolne zadanie (z wyjątkiem testów jednostkowych), użyj internetu. To naprawdę niesamowite! Używaj interfejsu wiersza poleceń tylko do testowania automatycznego.

Dobry prompt, który prawidłowo testuje kroki 1–4, może wyglądać tak (inteligentny „prompt testowy”):

Cześć, chcę zarezerwować hotel w Paryżu na jutrzejszy wieczór dla jednej osoby, na jedną noc, w centrum Paryża. Najlepiej w pobliżu dworca Gare de Lyon. Budżet: poniżej 200 EUR za noc.

  1. Tell me which YYYYMMDD and Day of the Week is tomorrow.
  2. Powiedz mi, jakie hotele widzisz na jutro (co najmniej 3). I want to see: > price, address, some rating (in form of XX/YY, eg "4.7/5" - from Google Hotels, Booking or Airbnb), # reviews. Przedstaw je w formie TABELI. Najlepiej, aby nazwa hotelu była połączona z jakimś adresem URL hotelu (nie dodawaj kolumny z adresem URL). Upewnij się, że link jest prawidłowy (działa i prowadzi do strony z informacjami o hotelu).

Jest to inteligentny prompt, ponieważ testuje czas i hotele. Nie powiedzie się w krokach 1, 2 i 3, a powinien zakończyć się powodzeniem dopiero w kroku 4. Możesz oczywiście użyć dowolnego prompta, który Ci odpowiada.

Uruchom go z poziomu powłoki bash (interfejs wiersza poleceń):

# 1. If ADK was installed:
adk run mysolution/
# ... but if you get: -bash: adk: command not found"
# 2. Call ADK cli script through UV to avoid python install nightmares.
uv run adk run mysolution/

Spróbuj użyć powyższego promptu testowego.

Prawdopodobnie nie będzie znać konkretnych dat. Musimy nauczyć go rozpoznawać datę.

W przypadku internetu możesz wykonać te czynności:

  1. uv run adk web . : uruchamia wszystkich agentów w tym folderze. Chcesz, aby wskazywał podfolder „mysolution/”.
  2. wybierz mysolution/ w prawym górnym rogu (patrz obrazek obok).
  3. Zadaj pytanie tekstowo lub za pomocą mikrofonu, na przykład „prompt lakmusowy”.

Interfejs internetowy ADK z wynikiem biura podróży

Pamiętaj, że musisz wywołać adk web z folderu nadrzędnego, zgodnie z wersją interfejsu wiersza poleceń.

Żółty robot – wynik kroku 1 z datą i propozycjami hoteli

Oto możliwe rozwiązanie z częściowo halucynowaną datą. Zwróć uwagę, że 3 z 5 linków do rezerwacji działają. Nieźle.

5. Krok 2. Dodaj narzędzie now()

Edytor Cloud Shell z implementacją narzędzia now() w pliku agent.py

Dodaj tę funkcję do pliku agent.py tuż przed definicją root_agent:

from datetime import datetime

def now() -> dict:
    """Returns the current date and time."""
    my_datetime = ... # Ask Gemini CLI to help you!
    return {
        "status": "success",
        "current_time": my_datetime
    }

Zaktualizuj definicję agenta, aby uwzględnić narzędzie:

  # file XXX.py

  root_agent = Agent(
        name="..",
        model="..",
        instruction="..",
        tools=[now] # <== This is the only line you want to add.
    )

Uruchom go ponownie i zadaj to samo pytanie. Powinien teraz znać datę (dobrze) i być nieprecyzyjny w kwestii hoteli (źle).

Możesz też przetestować to w ten sposób:

# Let's pretend we're in Milan. This should call the tool
# and respond correctly (possibly with some TZ math issues)
echo "What time is it in Milan?" | uv run adk run mysolution/

6. Krok 3. Zajmijmy się czymś innym: google_search

google_search. Dzięki temu nasz agent może uzyskiwać dostęp do informacji z internetu w czasie rzeczywistym.

3cd72c019b8b225f.png

Twoim zadaniem jest zmodyfikowanie agenta z kroku 2. Zamiast narzędzia now zaimportujesz i użyjesz narzędzia google_search z biblioteki ADK.

# Full Code: `steps/step03_search/agent.py`
# Remember to REMOVE the now() tool here. See above why.
from google.adk.agents import Agent
from google.adk.tools import google_search

root_agent = Agent(
    name="travel_agent",
    model="gemini-2.5-flash",
    tools=[google_search],
    instruction="""You are a travel agent.
Your job is to help the user plan a trip.
You have access to a search engine.
If you don't know the answer, you can use the search engine.
When you are done, reply with "DONE".""",
)

Uruchamianie

Tak samo jak w kroku 1.

Tylko eksperci. Aby uzyskać bardziej zaawansowaną integrację (używając jednocześnie google_search i now), sprawdź kod w steps/step03b_search_and_tool/agent.py i uruchom go za pomocą make run-step3b. Jest to całkowicie opcjonalne.

7. Krok 4. Bardziej zaawansowane narzędzie: MCP

Logo ADK

Skoro omówiliśmy już narzędzia niestandardowe i wbudowane, przejdźmy do czegoś bardziej zaawansowanego: wzorca Model-as-a-Tool (model jako narzędzie) z wykorzystaniem Model Context Protocol (MCP).

Aby w tym kroku skupić się na zaawansowanych możliwościach MCP, ponownie zastąpimy poprzednie narzędzie (google_search). Ponownie wprowadzimy proste narzędzie now, które będzie działać obok narzędzia airbnb_mcp. Pokazuje, jak agent może używać wielu zgodnych narzędzi (w tym przypadku FunctionTool i MCPToolset) do wykonywania złożonych zadań.

# Full Code: steps/step04_mcp/agent.py
# ... Imports as before
from google.adk.tools.mcp_tool.mcp_toolset import MCPToolset
from google.adk.tools.mcp_tool.mcp_session_manager import StdioConnectionParams
from mcp import StdioServerParameters

def now() -> dict:
    # ... as before

# Configure the Airbnb MCP Toolset
airbnb_mcp = MCPToolset(
    connection_params=StdioConnectionParams(
        server_params=StdioServerParameters(
            command='npx',
            args=["-y", "@openbnb/mcp-server-airbnb", "--ignore-robots-txt"],
        ),
    )
)

root_agent = Agent(
    name="travel_mcp",
    model="gemini-2.5-flash",
    instruction="You are a helpful travel assistant. You can find accommodation using Airbnb, and have access to the current time.",
    tools=[now, airbnb_mcp],
)

Uruchamianie

Ten krok wymaga zainstalowania npx w systemie. Pozostałe elementy są takie same jak powyżej.

Zastrzeżenia/błędy

  1. Jeśli pojawi się błąd ograniczenia robots.txt, możesz zastosować poprawkę MCP z dyrektywą ignorowania pliku robots. Więcej informacji znajdziesz w dokumentacji: https://github.com/openbnb-org/mcp-server-airbnb.
  2. Jeśli pojawi się błąd timeout (5 sekund to za mało, aby Airbnb mogło uzyskać odpowiedzi), zapoznaj się z dokumentacją ADK, aby dowiedzieć się, jak zwiększyć limit czasu, np. do 30 sekund. Możesz też użyć interfejsu wiersza poleceń Gemini. Zwróć uwagę, że 3 grudnia 2025 r. Cloud Shell wyświetlił błąd przekroczenia limitu czasu. Naprawiłem ten błąd, ale nadal pojawiały się błędy, dopóki nie wymusiłem poprzedniej wersji: args=["-y", "@openbnb/mcp-server-airbnb@0.1.2", "--ignore-robots-txt"].

8. 🏅 Kamień milowy 1 osiągnięty.

🏅 Gratulacje! 🏅 Znasz już ADK na wylot! Udało Ci się ukończyć pierwszą część warsztatów oraz utworzyć i przetestować agentów AI z narzędziami niestandardowymi, wbudowanymi i zaawansowanymi narzędziami MCP. Możesz teraz tworzyć własnych niesamowitych agentów za pomocą pakietu Google Agent Development Kit.

Masz teraz działającego agenta biura podróży, który zna godzinę i może przeszukiwać internet. Możliwości są nieograniczone.

Teraz nadszedł czas na dodanie dodatkowej funkcji za pomocą „interfejsu wiersza poleceń Gemini”.

9. 🏅 Etap 2. Vibe coding za pomocą pakietu ADK i interfejsu wiersza poleceń Gemini

Teraz przechodzimy do najciekawszej części warsztatów.

  1. upewnij się, że kod został git commitzapisany w bezpiecznym miejscu. Możesz rozwidlić oryginalny kod lub utworzyć gałąź – nie martw się, interfejs wiersza poleceń Gemini bardzo Ci w tym pomoże.
  2. Znajdź 💡 pomysł do wdrożenia. Możesz sprawdzić pomysły poniżej, znaleźć własny lub poprosić Gemini o przejrzenie dokumentacji w rag/ i zaproponowanie kilku ciekawych pomysłów.
  3. Spełnij wymagania wstępne, aby Gemini mógł odczytywać dokumenty ADK, i gotowe.

💡 Pomysły

  1. 🟢 [easy] Are you a language polyglot? Czy chcesz przekazać go, java czy TypeScript? Refaktoryzacja istniejącego kodu jest bardzo prosta. Pamiętaj tylko, aby pobrać odpowiedni pakiet ADK i poprosić interfejs wiersza poleceń Gemini o wykonanie tłumaczenia.
  2. 🟢 [łatwe] Dodaj emotikony lub określ preferowany format danych wyjściowych (np. tabela z emotikonem hotelu, ceną i emotikonami gwiazdek od 1 do 5, przy czym można też użyć emotikonów 🌕🌕🌕🌗🌑, aby przedstawić połówki).
  3. 🟢 [łatwe] Zmień prompta, aby nauczyć go, czego konkretnie szukasz, a czego nie (przyjazne dla zwierząt, nie na parterze, ciche, blisko transportu publicznego itp.), i przetestuj go. Możesz dodać osobistą ocenę, np. „ocena TWOJE_IMIĘ w skali od 1 do 10” na podstawie powyższych informacji, i posortować według tej oceny.
  4. 🟢 [easy] Any Operator in the room? Wdróż w Cloud Run. Możesz też użyć Vertex AI Agent Engine. Czy wiesz, że możesz zintegrować tego agenta i wywoływać go bezpośrednio z nowej usługi Gemini Enterprise?
  5. 🟢 [łatwe] Zintegruj adk run z 🍌 NanoBanana MCP. Wymaga klucza interfejsu Gemini API. Tutaj możesz tworzyć obrazy, ale nie możesz ich wizualizować. Poniżej znajdziesz trudniejszy wariant.
  6. 🟡 [średni] Utwórz subagenta, który wykonuje HotelSearch, i utwórz BudgetAgent lub LocationAgent, który może podwoić wysiłki i iterować po hotelach, uwzględniając Twoje potrzeby dotyczące lokalizacji, np. „nie dalej niż X km od LOKALIZACJI”. Jeśli interfejs API na to nie pozwala, może być konieczne wykonanie kilku prób z pomocą wyszukiwarki Google. Uwaga: interfejs wiersza poleceń Gemini może Ci pomóc.
  7. 🟡 [średni] Wdróż AirbnbReviewAgent, który analizuje opinie i podsumowuje pozytywne i negatywne aspekty w kilku punktach oznaczonych kolorami, dla 1 lub N hoteli znalezionych w wyniku wyszukiwania. Masz już 2 składniki (GoogleSearch i MCP Airbnb), więc musisz połączyć je z głównym agentem i być może wymyślić jakiś protokół, który umożliwi im komunikację.
  8. 🟡 [średni] Przeprowadź integrację z A2A. Ustaw go jako agenta A2A. Możesz też poprosić o pomoc interfejs wiersza poleceń Gemini.
  9. Możesz zintegrować z Lotami lub innymi funkcjami MCP, aby stworzyć wielofunkcyjne biuro podróży.
  10. 🔴 [complex] Integrate ADK web with 🍌 NanoBanana MCP. To zadanie jest trudniejsze niż poprzednie. Kilka wskazówek znajdziesz na stronie https://github.com/palladius/ai-friendly-agents/issues/11. Autorowi zajęło to 3 godziny wymiany informacji z interfejsem wiersza poleceń Gemini i Gemini3 oraz czytania dokumentacji i kodu z rag/.

Szukasz inspiracji?

  1. Pomysły znajdziesz w oficjalnym samouczku pakietu ADK.
  2. Poproś interfejs wiersza poleceń Gemini o znalezienie pomysłów, przeglądając dokumentację w rag/. Możesz użyć prompta: Is there a feature in here which seems very succulent to you? Give me 3 proposals and let's implement together the one I choose.

Wymagania wstępne dotyczące ADK „RAG”

Aby napisać kod funkcji, zalecamy pobranie całego pakietu ADK Python ADK (uwaga: można go bardzo łatwo dostosować do ulubionego języka, takiego jak Java lub Go).

Kod znajduje się w katalogu ./rag i można go pobrać za pomocą polecenia ./download-adk.sh.

Folder rag jest wymieniony w pliku .gitignore, więc upewnij się, że plik .gemini/settings.json zawiera te informacje:

{
 "context": {
   "includeDirectories": ["rag"]
 }
}

Why? Chcemy, aby Gemini mógł odczytywać te pliki, gdy są one bezpiecznie ignorowane przez Git. Technicznie rzecz biorąc, możesz też odkryć wszystkie pliki .gitignore, ustawiając context.fileFiltering.respectGitIgnore na false, ale spowoduje to otwarcie wielu niepotrzebnych plików node_modules/ i __pycache__/, dlatego preferowaną opcją jest jawne uwzględnienie folderu.

10. Dalsze kroki

Ciekawostka: te warsztaty zostały utworzone przy pomocy interfejsu wiersza poleceń Gemini. Jeśli chcesz dowiedzieć się, jak to zrobiłem, zajrzyj do plików GEMINI.md i WORKSHOP_PLAN.md w tym folderze.

Wnioski

Wiesz już, jak sparować ADK z interfejsem wiersza poleceń Gemini.

Materiały dodatkowe

6d05afb6b8b235d8.png