1. Wprowadzenie
W tym module skorzystasz z Gemini Code Assist, opartej na AI usługi wspomagającej w Google Cloud. Dowiesz się, jak korzystać z Gemini Chat i pomocy w kodowaniu w tekście, aby generować kod, rozumieć go i wykonywać inne zadania związane z kodowaniem przy użyciu AI.
Co musisz zrobić...
- Za pomocą środowiska IDE Cloud Shell pobierzesz istniejący szablon kodu aplikacji internetowej.
- Będziesz używać Gemini Chat w środowisku IDE Cloud Shell, aby zadawać ogólne pytania dotyczące Google Cloud.
- Będziesz używać Gemini Code Assist – pomocy przy kodowaniu w wierszu w środowisku IDE Cloud Shell do generowania, podsumowywania i uzupełniania kodu.
Czego się nauczysz...
- Jak korzystać z Gemini Code Assist w przypadku różnych zadań programistycznych, takich jak generowanie, uzupełnianie i streszczanie kodu.
- Jak korzystać z Cloud Assist, aby dowiedzieć się więcej o Google Cloud.
Co będzie Ci potrzebne...
- przeglądarki Chrome,
- konto Gmail,
- Projekt w chmurze z włączonymi płatnościami
- Usługa Gemini Code Assist jest włączona w Twoim projekcie w Cloud
Ten moduł jest przeznaczony dla deweloperów na wszystkich poziomach zaawansowania, w tym dla początkujących. Chociaż przykładowa aplikacja jest napisana w języku Python, nie musisz znać tego języka, aby zrozumieć, co się dzieje. Skupimy się na zapoznaniu się z możliwościami Gemini Code Assist dla programistów.
2. Konfiguracja
W tej sekcji znajdziesz wszystko, co musisz zrobić, aby rozpocząć ten moduł.
Włączanie Cloud Assist w projekcie Google Cloud
Teraz włączymy Cloud Assist w projekcie Google Cloud. Wykonaj te czynności:
- Otwórz https://console.cloud.google.com i upewnij się, że masz wybrany projekt Google Cloud, w którym chcesz pracować w tym module. Kliknij ikonę Otwórz Gemini w prawym górnym rogu.

- Po prawej stronie konsoli otworzy się okno czatu Cloud Assist. Kliknij przycisk Włącz, jak pokazano poniżej. Jeśli nie widzisz przycisku Włącz, a zamiast niego widzisz interfejs czatu, prawdopodobnie masz już włączoną funkcję Cloud Assist w projekcie i możesz przejść bezpośrednio do następnego kroku.

- Po włączeniu tej funkcji możesz przetestować Cloud Assist, zadając 1–2 pytania. Wyświetlonych jest kilka przykładowych zapytań, ale możesz też wypróbować zapytanie
What is Cloud Run?.

Cloud Assist odpowie na Twoje pytanie. Aby zamknąć okno czatu Cloud Assist, w prawym górnym rogu kliknij ikonę
.
Włączanie Gemini Code Assist w środowisku IDE Cloud Shell
W pozostałej części tego samouczka będziemy używać Cloud Shell IDE, w pełni zarządzanego środowiska programistycznego opartego na Code OSS. Musimy włączyć i skonfigurować Code Assist w środowisku IDE Cloud Shell. Poniżej znajdziesz instrukcje:
- Otwórz stronę ide.cloud.google.com. Wyświetlenie środowiska IDE może zająć trochę czasu, więc uzbrój się w cierpliwość.
- Na pasku stanu u dołu kliknij przycisk Cloud Code – zaloguj się, jak pokazano na ilustracji. Autoryzuj wtyczkę zgodnie z instrukcjami. Jeśli na pasku stanu widzisz „Cloud Code – brak projektu”, wybierz tę opcję, a następnie wybierz z listy projekt Google Cloud, z którym chcesz pracować.

- Kliknij przycisk Gemini w prawym dolnym rogu, jak pokazano, i jeszcze raz wybierz właściwy projekt w chmurze Google. Jeśli pojawi się prośba o włączenie interfejsu Gemini for Google Cloud API, zrób to i przejdź dalej.
- Po wybraniu projektu Google Cloud sprawdź, czy jest on widoczny w komunikacie o stanie Cloud Code na pasku stanu oraz czy po prawej stronie na pasku stanu masz włączoną funkcję Code Assist, jak pokazano poniżej:

Usługa Gemini Code Assist jest gotowa do użycia.
Opcjonalnie: jeśli nie widzisz Gemini na pasku stanu w prawym dolnym rogu, musisz włączyć Gemini w Cloud Code. Zanim to zrobisz, upewnij się, że Gemini jest włączony w IDE. W tym celu otwórz rozszerzenie Cloud Code → Ustawienia, a następnie wpisz tekst Gemini, jak pokazano poniżej. Sprawdź, czy pole wyboru jest zaznaczone. Należy ponownie załadować IDE.Włączy to Gemini w Cloud Code, a ikona Gemini na pasku stanu pojawi się w IDE.

3. Tworzenie przykładowej aplikacji
Utworzymy przykładową aplikację (aplikację Flask w języku Python), której użyjemy do poznania funkcji Gemini Code Assist.
Wykonaj te czynności:
- Na pasku stanu poniżej kliknij nazwę projektu Google Cloud.

- Pojawi się lista opcji. Na liście poniżej kliknij Nowa aplikacja.

- Wybierz aplikację Cloud Run.
- Wybierz szablon aplikacji Python (Flask): Cloud Run.
- Zapisz nową aplikację w wybranej lokalizacji.
- Pojawi się powiadomienie potwierdzające utworzenie aplikacji, a w nowym oknie otworzy się aplikacja, jak pokazano poniżej. Otworzy się plik
README.md. Możesz na razie zamknąć ten widok.

4. Czat z Gemini
Zacznijmy od nauki czatowania z Gemini. Gemini jest dostępny jako asystent czatu w środowisku IDE Cloud Shell w ramach rozszerzenia Cloud Code w VS Code. Aby go otworzyć, kliknij przycisk Gemini na pasku nawigacyjnym po lewej stronie. Na pasku narzędzi nawigacyjnych po lewej stronie znajdź ikonę Gemini
i kliknij ją.
Spowoduje to wyświetlenie panelu Czat: Gemini w środowisku IDE Cloud Shell. Możesz czatować z Gemini, aby uzyskać pomoc dotyczącą Google Cloud.

Użyjmy panelu rozmowy z Gemini, aby wpisać prompta i wyświetlić odpowiedź Gemini. Wpisz ten prompt:
What is Cloud Run?
Gemini powinien odpowiedzieć, podając szczegóły dotyczące Cloud Run. Prompty to pytania lub stwierdzenia opisujące, w czym potrzebujesz pomocy. Prompty mogą zawierać kontekst z istniejącego kodu, który Google Cloud analizuje, aby udzielać bardziej przydatnych lub pełniejszych odpowiedzi. Więcej informacji o pisaniu promptów, które generują dobre odpowiedzi, znajdziesz w artykule Pisanie lepszych promptów dla Gemini w Google Cloud.
Wypróbuj te prompty lub dowolne inne, aby zadawać pytania o Google Cloud:
What is the difference between Cloud Run and Cloud Functions?What services are available on Google Cloud to run containerized workloads?What are the best practices to optimize costs while working with Google Cloud Storage?
U góry zobaczysz ikonę kosza na śmieci – to sposób na zresetowanie kontekstu historii czatu Code Assist. Pamiętaj też, że ta rozmowa na czacie jest powiązana z plikami, nad którymi pracujesz w IDE.
5. Wyjaśnienie kodu
Aby zwiększyć Twoją produktywność i ograniczyć przełączanie kontekstu, Gemini Code Assist udostępnia inteligentne działania oparte na AI bezpośrednio w edytorze kodu. Po wybraniu kodu w edytorze kodu możesz wyświetlić listę działań odpowiednich w danym kontekście i wybrać z niej odpowiednie działanie.
Gemini Code Assist może pomóc Ci zrozumieć fragmenty kodu aplikacji. Wróć do aplikacji utworzonej w poprzednim kroku i użyj Gemini Code Assist, aby wyjaśnić pliki i kod dostępne w IDE.
- Jeśli pliki nie są widoczne, na pasku aktywności IDE kliknij Eksplorator (
). - W panelu Eksplorator wybierz Dockerfile.
- Możesz wybrać dowolną część zawartości pliku, kliknąć żarówkę (
), a następnie kliknąć Gemini: wyjaśnij to. Na przykład wybierz wiersz rozpoczynający się od ENTRYPOINT, kliknij żarówkę (
), a następnie kliknij Gemini: wyjaśnij to. Gemini wygeneruje wyjaśnienie w języku naturalnym dotyczące konkretnej sekcji pliku Dockerfile, o której chcesz dowiedzieć się więcej. Gemini odpowiada szczegółami instrukcji ENTRYPOINT. Dowiadujesz się, że dzięki tej instrukcji Docker uruchomi plik app.pypo uruchomieniu kontenera. - Aby wyświetlić zawartość pliku
app.py, na pasku aktywności kliknij Eksplorator (
), a następnie wybierz app.py. - W definicji funkcji hello() możesz wybrać wiersze, o których chcesz dowiedzieć się więcej. Następnie kliknij ikonę żarówki (
) i wybierz Gemini : wyjaśnij to. W naszym przykładzie wybraliśmy te 2 wiersze kodu, a następnie wywołaliśmy działanie Gemini: wyjaśnij.

- Gemini odpowiada szczegółowym wyjaśnieniem tych 2 zmiennych środowiskowych Cloud Run (
K_SERVICE, K_REVISION) i sposobu ich użycia w kodzie aplikacji. Pamiętaj, że Gemini, dzięki swojej wiedzy o Google Cloud i usługach takich jak Cloud Run, nie tylko wyjaśnił kod Pythona, ale także podał kontekst, w jakim te zmienne są używane w Cloud Run.
Wypróbuj te dodatkowe sposoby uzyskiwania wyjaśnień kodu:
- Pozostaw app.py jako aktualnie otwarty plik w IDE. Otwórz panel rozmowy z Gemini na pasku nawigacyjnym po lewej stronie w VS Code i wpisz prompt Wyjaśnij ten plik. Uwzględni cały plik i wyjaśni go.
- Możesz też wybrać dowolną część pliku, a następnie użyć panelu rozmowy z Gemini po lewej stronie i wpisać prompt Wyjaśnij to. Wyjaśniona zostanie tylko wybrana część pliku. To tak, jakby kliknąć żarówkę
, a następnie Gemini: wyjaśnij to. - Możesz też zaznaczyć część tekstu i kliknąć Gemini: inteligentne działania w prawym górnym rogu IDE, jak pokazano poniżej, aby wyświetlić listę działań, które można wykonać na zaznaczonym tekście. Jedną z tych opcji będzie działanie Wyjaśnij to:

6. Generowanie kodu za pomocą promptów
W tej sekcji dowiesz się, jak używać Gemini Code Assist do generowania kodu na podstawie komentarzy.
Wypróbujmy te funkcje. Wykonaj te czynności:
- Utwórz nowy plik o nazwie
utils.py. - W nowym pliku z kodem w nowym wierszu wpisz
# Function to print a list of blobs in a Google Cloud Storage bucket, a następnie naciśnijEnter(w systemach Windows i Linux) lubReturn(w systemie macOS). Gemini może próbować generować kod podczas pisania, ale nie akceptuj go. W następnym kroku wywołamy generowanie kodu. - Aby wywołać generowanie kodu, naciśnij
Control+Enter(w systemach Windows i Linux) lubControl+Return(w systemie macOS). Obok tekstu prompta w pliku Pythona Gemini Code Assist wygeneruje kod w postaci szarego tekstu. Wyświetli on co najmniej jedną sugestię kodu z paskiem narzędzi, za pomocą którego możesz przechodzić między sugestiami (jeśli jest ich więcej). Możesz nawet zaakceptować dowolną z sugerowanych opcji kodu za pomocą paska narzędzi. Jeśli nie widzisz paska narzędzi lub zniknął, najedź kursorem na wygenerowany kod, aby ponownie się pojawił. - Opcjonalnie: aby zaakceptować wygenerowany kod, naciśnij
Tab. Jeśli jest kilka sugestii, możesz nacisnąćTabkilka razy, aby przechodzić między sugerowanymi fragmentami kodu.
Spowoduje to wstawienie zaakceptowanego kodu do pliku utils.py. Przykładowy zrzut ekranu znajdziesz poniżej. Kod, który otrzymasz, może się różnić od kodu pokazanego poniżej. Jeśli wygenerowane zostaną dodatkowe metody, możesz je usunąć po zaakceptowaniu kodu.

W kodzie mogą się pojawić lub nie pojawić faliste linie. Jeśli tak jest, to cytowanie kodu działa prawidłowo. Jeśli najedziesz kursorem na dowolną linię, wyświetli się atrybucja kodu i inne istotne informacje dotyczące licencji. Przykład znajdziesz poniżej:

Możesz zignorować ostrzeżenie o cytowaniu, klikając Szybka poprawka…. Wyświetli się sugestia szybkiej poprawki, której przykładowa wersja jest pokazana poniżej:

Jeśli akceptujesz licencję kodu, możesz kliknąć Ignore Citation Warning (Zignoruj ostrzeżenie o cytowaniu).
(Opcjonalnie) Oto kilka innych sugestii dotyczących generowania kodu:
- Możesz też użyć funkcji rozmowy z Gemini, aby zadać ten sam prompt i uzyskać odpowiedź w oknie czatu. W interfejsie Google Chat pojawią się opcje skopiowania kodu lub wstawienia go do bieżącego pliku.
- Wypróbuj własne prompty, aby uzyskać przykładowy kod, który Cię interesuje. Poniżej znajdziesz kilka sugestii (zakładamy, że jesteś w jednym z plików Pythona): lub wybierz jedną z poniższych podpowiedzi:
- Pisanie kodu w Pythonie do publikowania wiadomości w Google Cloud Pub/Sub
- Napisz kod w Pythonie, aby zainicjować klienta BigQuery
- Pisanie kodu w Pythonie, aby połączyć aplikację z Cloud SQL
7. Otrzymuj sugestie kodu podczas pisania
Podczas pisania kodu Gemini Code Assist wyświetla sugestie dotyczące kodu w tekście, które możesz zaakceptować lub zignorować. Aby wypróbować tę funkcję, zmodyfikujemy plik utils.py utworzony w poprzedniej sekcji :
- Otwórz plik
utils.pyjako bieżący plik w środowisku IDE Cloud Shell. - Możemy na przykład dodać do wygenerowanego kodu prawidłowe instrukcje
import, jeśli ich tam nie ma. - Zacznij pisać słowo
import, a Gemini Code Assist powinien zaproponować kod w formie tekstu widma. Aby zaakceptować sugestię kodu od Gemini Code Assist, naciśnijTab. Aby zignorować sugestię, naciśnijEsclub kontynuuj pisanie kodu. Na przykładowym ekranie poniżej sugeruje się zaimportowanie klasystorage, ponieważ jest ona używana w kodzie. Aby zaakceptować sugerowany kod, naciśnijTab. Jest to również sugerowaneimport os, ale ponieważ nie jest to konieczne, możemy je usunąć.

- Przejdź na koniec pliku
utils.pyi dodaj wiersz, aby wywołać funkcję, jeśli nie jest on podany. W tym przypadku jest to funkcjaprint_blobs. Możesz po prostu zacząć wpisywać nazwę funkcji, a funkcja uzupełniania kodu pomoże Ci dokończyć instrukcję. - Musisz podać nazwę zasobnika. Możesz użyć tej publicznej nazwy zasobnika :
gemini-codeassist-bucket. Poniżej znajdziesz przykładowe wywołanie funkcji. Pamiętaj, że mogą występować niewielkie różnice w nazwach funkcji itp.
print_blobs(bucket_name="gemini-codeassist-bucket")
(Opcjonalnie) Uruchom przykładowy kod
Ponieważ napisaliśmy kod do wyświetlania listy obiektów blob w zasobniku Google Cloud Storage, musimy zainstalować bibliotekę Pythona google-cloud-storage.
Otwórz plik requirements.txt i dodaj nowy wiersz z zależnością google-cloud-storage, jak pokazano poniżej. Poniżej znajduje się przykładowy plik requirements.txt.
Flask==2.3.3 requests==2.31.0 debugpy # Required for debugging. google-cloud-storage
Zapisz plik requirements.txt.
Aby zobaczyć działanie kodu, musimy uruchomić nową sesję terminala w edytorze Cloud Shell, klikając ikonę menu w lewym górnym rogu. Kliknij ikonę menu, a następnie Terminal → Nowy terminal, jak pokazano poniżej:

W sesji terminala zainstaluj zależności Pythona za pomocą tego polecenia:
pip3 install -r requirements.txt
Na koniec możesz uruchomić plik utils.py za pomocą tego polecenia:
python utils.py
Powinny się wyświetlić obiekty blob znajdujące się w publicznym zasobniku Cloud Storage. W danych wyjściowych powinny się wyświetlić 2 obiekty blob (file1.txt i file2.txt).
Rozwiązywanie problemów
Jeśli podczas wyświetlania obiektów w powyższym publicznym zasobniku pojawi się błąd „access”, możesz utworzyć własny zasobnik Google Cloud Storage i używać go zamiast gemini-codeassist-bucket. W następnej sekcji dowiesz się, jak to zrobić.
(Opcjonalnie) Tworzenie własnego zasobnika Cloud Storage
Poprośmy Gemini o podanie poleceń umożliwiających utworzenie zasobnika, ustawienie go jako dostępnego publicznie i przesłanie do niego przykładowych obiektów.
Zacznij od tego prompta: „Jakie jest polecenie gcloud do utworzenia publicznego zasobnika w Google Cloud Storage?”
Powinno to spowodować wyświetlenie polecenia gcloud do utworzenia zasobnika. Dokładne polecenie znajdziesz poniżej:
gcloud storage buckets create gs://<BUCKET_NAME>
Wybierz unikalną nazwę dla <BUCKET_NAME> i wykonaj polecenie w terminalu.
Utworzyliśmy już zasobnik i chcemy, aby był on publicznie dostępny. Zapytajmy Gemini o polecenie, które to umożliwi, używając tego promptu: „Jak udostępnić zasobnik Google Cloud Storage publicznie?”
Powinno to dać polecenie gcloud, które umożliwi publiczny dostęp. Odpowiedź powinna wyglądać mniej więcej tak:
gcloud storage buckets add-iam-policy-binding gs://<BUCKET_NAME> --member=allUsers --role=roles/storage.objectViewer
Zastąp <BUCKET_NAME> nazwą zasobnika, której używasz, i wykonaj polecenie.
Na koniec prześlemy do zasobnika kilka przykładowych plików. Uruchom w terminalu te polecenia (pamiętaj, aby zastąpić zmienną <BUCKET_NAME> nazwą swojego zasobnika):
touch f1.txt touch f2.txt gcloud storage cp f1.txt gs://<BUCKET_NAME> gcloud storage cp f2.txt gs://<BUCKET_NAME>
Możesz teraz wykonać plik utils.py, używając nazwy <BUCKET_NAME> zamiast gemini-codeassist-bucket.
Czyszczenie
Jeśli masz własny zasobnik Cloud Storage, zdecydowanie zalecamy jego usunięcie, aby uniknąć opłat i potencjalnych zagrożeń dla bezpieczeństwa.
Zasobnik możesz usunąć za pomocą tego polecenia:
gcloud storage buckets delete gs://<BUCKET_NAME>
8. Gratulacje!
Gratulacje! Udało Ci się skorzystać z Gemini Code Assist w projekcie przykładowym, aby dowiedzieć się, jak może on pomagać w generowaniu, uzupełnianiu i podsumowywaniu kodu oraz w uzyskiwaniu odpowiedzi na pytania dotyczące Google Cloud.