Tworzenie agentów AI za pomocą Kreatora agentów Vertex AI

Informacje o tym ćwiczeniu (w Codelabs)
schedule45 minut
subjectOstatnia aktualizacja: 7 marca 2025
account_circleAutorzy: Thu Ya Kyaw (Googler), Abhishek Sharma (GDE)

To samodzielne ćwiczenie z programowania przeprowadzi Cię przez proces tworzenia agentów AI za pomocą Kreatora agentów Vertex AI w Google Cloud. Każdy krok będzie dotyczył konkretnej funkcji w Kreatorze agentów i wyjaśni, do czego służy.

  • Jak utworzyć prostego agenta AI za pomocą Kreatora agentów Vertex AI
  • Jak zakotwiczyć utworzonego agenta przez dołączenie zbioru danych
  • Jak zintegrować agenta AI z witryną(opcjonalnie)
  • ciekawski umysł,
  • działający komputer i stabilne połączenie Wi-Fi.
  • projekt Google Cloud z dołączonym kontem rozliczeniowym,

Uwaga: jeśli nie masz jeszcze projektu Google Cloud, możesz go utworzyć, wykonując te instrukcje. Możesz też zapoznać się z bezpłatnymi usługami Google Cloud.

2. Projektowanie pierwszego agenta AI

Teraz możesz utworzyć własnego agenta AI. Zanim jednak zaczniesz rozwijać aplikację, musisz jasno określić wizję dla swojego agenta. Zadaj sobie te kluczowe pytania:

  • Jaki problem rozwiąże? Czy automatyzuje zadania, dostarcza informacje, oferuje rozrywkę lub ułatwia kreatywne eksplorowanie?
  • Jakie są jego główne funkcje? Czy będzie wykonywać zadania czy delegować je innym? Czy ma generować tekst, czy też kombinację różnych mediów?
  • Jakie są ograniczenia? Czy będzie w stanie samodzielnie wykonywać wszystkie czynności?
  • Jakie cechy powinien mieć? Czy będzie formalny, nieformalny, humorystyczny, pomocny czy informacyjny?
  • Jakie są wyznaczniki sukcesu? Jak będziesz mierzyć skuteczność agenta?

Aby przyspieszyć proces, podajemy odpowiedzi na te pytania dotyczące agenta turystycznego, którego utworzysz:

  • Jaki problem rozwiąże?
  • Planowanie podróży może być czasochłonne i przytłaczające. Biuro podróży pomoże użytkownikom odkrywać miejsca docelowe, planować podróże oraz rezerwować loty i noclegi.
  • Jakie są jego główne funkcje?
  • Przedstawiciel powinien mieć możliwość:
  • odpowiadać na pytania o miejsca docelowe, np. o wymagania wizowe;
  • planować plany podróży, które odpowiadają harmonogramom i celom użytkowników;
  • rezerwować loty i noclegi;
  • Jakie są ograniczenia?
  • Pracownik obsługi może nie być w stanie udzielić odpowiedzi na skomplikowane zapytania
  • Pracownik nie będzie mógł generować obrazów.
  • Wiedza agenta będzie ograniczona przez model podstawowy.
  • Jakie cechy powinien mieć?
  • Ten pracownik powinien być kompetentny, pomocny i entuzjastycznie nastawiony do podróżowania. Powinien on zawierać informacje w sposób przejrzysty i zwięzły.
  • Jakie są wyznaczniki sukcesu?
  • Sukces tego agenta można mierzyć na podstawie zadowolenia użytkowników z jego rekomendacji (odkrywanie, planowanie, rezerwowanie)

3. Tworzenie agenta AI za pomocą Kreatora agentów Vertex AI

Za pomocą Kreatora agentów Vertex AI można tworzyć agentów AI w zaledwie kilka kroków.

Krok 1.

  • Otwórz Kreatora agentów Vertex AI.
  • Powinna wyświetlić się strona powitalna. 833886ce0d2645ba.png
  • Kliknij przycisk PRZEJDŹ DALEJ I AKTYWUJ INTERFEJS API.

Krok 2.

  • Przekierujemy Cię na stronę tworzenia aplikacji. f2d45cc76d62edeb.png
  • Kliknij przycisk UTWÓRZ NOWĄ APLIKACJĘ.

Krok 3.

  • Wybierz Konwersacyjny agent i kliknij UTWÓRZ.

732d2cd9e10c9a79.png

Uwaga:

  1. Gdy klikniesz UTWÓRZ, otworzy się nowa karta Dialogflow Conversational Agents (Konwersacyjne agenty Dialogflow).
  2. Jeśli pojawi się prośba o wybranie projektu Google Cloud, wybierz projekt Google Cloud powiązany z właściwym kontem Gmail.
  3. Jeśli wykonujesz to ćwiczenie na nowym koncie, pojawi się prośba o włączenie interfejsu Dialogflow API. Aby to zrobić, kliknij Włącz API.

238281df06301db0.png

  • Jeśli kliknięcie przycisku nie zadziała, możesz włączyć interfejs ręcznie, przechodząc bezpośrednio na stronę interfejsu API .
  • Na nowo otwartej stronie Dialogflow kliknij Utwórz agenta.

42515e46bc63506d.png

  • Teraz zobaczysz opcje tworzenia agenta. Wybierz Utwórz własnego.

8af6bf0853f20768.png

Krok 4.

  • Wybierz wyświetlaną nazwę (np.Wspólny wyjazd).
  • W polu Lokalizacja wybierz global (dostęp globalny, dane w spoczynku w Stanach Zjednoczonych) jako Region.
  • Zachowaj inne ustawienia, domyślne
  • Kliknij przycisk UTWÓRZ.

4e0dea29e5d8acde.png

Krok 5.

  • Wybierz nazwę scenariusza (np.Info Agent).
  • Dodaj cel (np.pomaganie klientom w rozwiązywaniu problemów związanych z podróżami).
  • Zdefiniuj instrukcję (np.powitaj użytkowników i zapytaj, jak możesz im dzisiaj pomóc).
  • Gdy wszystko będzie gotowe, kliknij Zapisz.

f8bfd605ddd97cf8.png

Krok 6.

  • Kliknij ikonę Przełącz symulator 72588cbe8734f54e.png.
  • Wybierz utworzonego przez siebie agenta (np.Info Agent).
  • Wybierz model generatywnej AI, który będzie używany przez Twojego agenta (np.gemini-1. 5-flash).
  • Przetestuj agenta, rozmawiając z nim (np.wpisując coś w polu tekstowym „Wpisz dane użytkownika”).

3ac3cf54a1e2098.png

Gratulacje! Utworzyłeś(-aś) właśnie agenta AI za pomocą Kreatora agentów Vertex AI.

4. Dołączanie Datastore do agenta

Zapytaj agenta o dojazd do Wakandy (np. „Jak najlepiej dojechać do Wakandy?”). Uzyskasz odpowiedź w takiej formie:

5baa2dbabe2941a2.png

Chociaż jest to prawidłowe, zamiast po prostu stwierdzić „Nie mogę podać informacji” i zakończyć rozmowę, warto zaproponować użytkownikowi podobne miejsca. Takie podejście może spowodować, że użytkownicy faktycznie zarezerwują podróż przez agenta.

Aby agent mógł polecić podobne miejsca, możesz przekazać mu więcej informacji za pomocą Datastores. Jest to dodatkowa baza wiedzy, do której agent może się odnieść, jeśli nie może odpowiedzieć na pytania użytkownika na podstawie swojej wbudowanej wiedzy.

Uwaga: jeśli chcesz zamknąć symulator, ponownie kliknij ikonę symulatora.

Utworzenie magazynu danych jest proste. Aby to zrobić, kliknij przycisk + Magazyn danych u dołu strony Podstawy dotyczące agenta.

6c3ef19fefc46af7.png

Podaj te informacje:

  • Nazwa narzędzia: Alternative Location
  • Typ: magazyn danych
  • Opis: użyj tego narzędzia, jeśli prośba użytkownika zawiera nieistniejącą lokalizację.

Gdy skończysz, kliknij Zapisz.

W ten sposób tworzysz narzędzie bazy danych, które umożliwia agentowi komunikację z bazą danych, ale nadal musisz utworzyć rzeczywistą bazę danych zawierającą informacje. Aby to zrobić, kliknij Dodaj magazyny danych i utwórz magazyn danych.

65c790a87de8fba8.png

7648d478a6f35cf0.png

Po kliknięciu Utwórz nowy magazyn danych nastąpi przekierowanie na stronę kreatora agentów Vertex AI, która wygląda tak:

Wybieranie opcji w Cloud Storage

bff5455fac531509.png

Gdy skończysz,

  • kliknij PLIK (to bardzo ważne, ponieważ w przeciwnym razie import się nie powiedzie);
  • wpisz ai-workshops/agents/data/wakanda.txt
  • kliknij DALEJ.

d1983baa579eb78c.png

Jeśli chcesz, możesz sprawdzić zawartość przesłanego pliku tekstowego:

Places that are similar to Wakanda

- Oribi Gorge in South Africa: The rock formations here are reminiscent of the Warrior Falls in Wakanda.

- Iguazu Falls: Located on the border of Argentina and Brazil, these massive waterfalls were a major inspiration for the Warrior Falls.

- Immerse yourself in Wakandan culture: Read the Black Panther comics, watch the movies, and explore online resources to learn more about Wakandan culture, language, and technology.

- Visit a Disney theme park: While there isn't a dedicated Wakanda land yet, you might be able to meet Black Panther at Disneyland or on a Marvel Day at Sea Disney cruise.

Na następnej stronie nadaj nazwę magazynowi danych (np. Wakanda Alternative) i kliknij UTWÓRZ.

93eb71e8d019ae24.png

W ostatnim kroku WYBIERZ utworzone źródło danych i kliknij UTWÓRZ. Aby sprawdzić postęp importowania magazynu danych, kliknij ten magazyn.**

de1ac9256cc96f29.png

Uwaga: importowanie danych wymaga czasu, więc w tym czasie możesz zapoznać się z dodatkowymi opcjami magazynu danych dostępnymi dla Twojego agenta Vertex AI tutaj.

9b5c4a2831728a6b.png

Jeśli wszystko poszło dobrze, wróć do karty Dialogflow i kliknij odśwież. Powinieneś zobaczyć utworzony magazyn danych na stronie Dostępne magazyny danych.

a44373b78bd95ff0.png

Aby zapobiec halucynacjom, w konfiguracji uziemienia magazynu danych ustaw ustawienie na Bardzo niskie, które nakłada na Agenta bardziej rygorystyczne ograniczenia dotyczące wymyślania rzeczy. Na razie pozostaw domyślne ustawienie, ale w każdej chwili możesz je zmienić.

c1605bd076258050.png

Teraz wybierz dodaną lokalizację danych, kliknij Potwierdź, a następnie kliknij Zapisz.

40082aebe8b82d7c.png

Wróć na stronę Podstawy dotyczące agenta. U dołu konfiguracji scenariusza zobaczysz nowo utworzony magazyn danych (np. „Alternatywna lokalizacja”). Zaznacz go, a następnie kliknij przycisk Zapisz u góry strony.

1b6b82fd7f30a598.png

e09af18697b0fd7f.png

Już niewiele brakuje. Ostatnim krokiem jest uwzględnienie narzędzia „Alternatywna lokalizacja” w instrukcjach dla agenta. Dodaj wiersz - Użyj opcji ${TOOL: Alternative Location} (Alternatywna lokalizacja) w przypadku, gdy prośba użytkownika zawiera lokalizację, która nie istnieje, zgodnie z instrukcjami pracownika obsługi klienta, a następnie kliknij Zapisz.

3134d9eadca34e21.png

Wszystko gotowe. Otwórz ponownie symulator przełączników i zadaj te same pytania (np. „Jak najlepiej dostać się do Wakandy?”).

6cdee598391fc82a.png

Gratulacje! Twój agent będzie teraz polecać miejsca na podstawie informacji z pliku tekstowego.

To już wszystko. Skończyliśmy tworzyć naszego własnego agenta AI w narzędzie do tworzenia agentów. Jeśli chcesz dowiedzieć się więcej o dostosowywaniu agenta, aby uzyskać lepsze wrażenia, zapoznaj się z poniżej wymienionymi dodatkowymi czynnościami.

5. Dodatkowe działania – uruchomienie agenta AI

W poprzednich krokach opracowaliśmy agenta AI i wypełniliśmy go odpowiednimi danymi referencyjnymi. W następnej sekcji znajdziesz odpowiedź na kluczowe pytanie, jak umieścić tego agenta w witrynie, aby umożliwić interakcję z użytkownikami w czasie rzeczywistym.

Istnieje wiele sposobów na ujawnienie swojego agenta. Możesz go wyeksportować lub opublikować bezpośrednio. Aby dowiedzieć się więcej o możliwych opcjach, zapoznaj się z tą dokumentacją.

W prawym górnym rogu karty Dialogflow kliknij kolejno Menu zasobówOpublikuj bota.

a1b109fa9d7cb51d.png

Zachowaj całą konfigurację jako Domyślna i kliknij Włącz interfejs API bez uwierzytelniania.

Uwaga: włączenie nieautoryzowanego interfejsu API jest przeznaczone tylko do celów demonstracyjnych. Nie zalecamy używania tej konfiguracji w przypadku obciążenia produkcyjnego. Jeśli chcesz publikować treści w bezpieczny sposób, zapoznaj się z tą dokumentacją.

ef0f24db780a185e.png

Po kliknięciu zobaczysz mały fragment kodu CSS:

c40d12f6207bf5b4.png

Wystarczy skopiować fragment kodu. Ten fragment kodu zintegrujesz później z witryną.

Aby utworzyć stronę internetową, użyjesz środowiska Cloud Editor. Aby otworzyć edytor Cloud:

  1. Otwórz konsolę Google Cloud w innej karcie.
  2. W prawym górnym rogu kliknij przycisk Cloud Shell.
  3. Kliknij przycisk Otwórz edytor.

Jeśli pojawi się monit o autoryzację Cloud Shell, kliknij Autoryzuj, aby kontynuować.

d23192eca480f00c.png

W następnej sekcji użyjesz Gemini Code Assist do utworzenia przykładowej aplikacji internetowej opartej na Pythonie i flasku, która zostanie zintegrowana z fragmentem kodu agenta.

Gdy otworzy się edytor Cloud Shell, kliknij Gemini Code Assist i zaloguj się w projekcie Google Cloud. Jeśli pojawi się prośba o włączenie interfejsu API, kliknij Włącz.

93112cce3e8d963b.png

Gdy to zrobisz, poproś Gemini Code Assist o utworzenie aplikacji Flask i zintegruj z nią fragment kodu agenta AI.

Oto przykładowy prompt, którego możesz użyć

Here is my Travel buddy Vertex AI agent builder agent publish code snippet,

<REPLACE IT WITH YOUR AI AGENT PUBLISH CODE SNIPPET>

can you create a sample flask app to use it

Uwaga: w tym zadaniu prosimy o użycie aplikacji Python Flask. Jeśli wolisz inny język programowania lub inną platformę, możesz ich użyć. Gemini Code Assist może generować kod w różnych językach programowania. Więcej informacji znajdziesz w artykule Obsługiwane języki, środowiska IDE i interfejsy.

Zobaczysz, że podany fragment kodu jest już zintegrowany z agentem AI. Aby sprawdzić, czy podany kod jest prawidłowy i działa zgodnie z oczekiwaniami, możesz postępować zgodnie z instrukcjami dotyczącymi uruchamiania sekcji kodu w odpowiedzi wyjściowej, które znajdziesz w Gemini Code Assist.

Przykładowy fragment kodu odpowiedzi wyjściowej –

from flask import Flask, render_template_string

app = Flask(__name__)

# HTML template string with the provided Dialogflow Messenger code

html_template = """

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<meta name="viewport" content="width=device-width, initial-scale=1.0">

<title>Travel Buddy Chatbot</title>

<link rel="stylesheet" href="https://www.gstatic.com/dialogflow-console/fast/df-messenger/prod/v1/themes/df-messenger-default.css">

<script src="https://www.gstatic.com/dialogflow-console/fast/df-messenger/prod/v1/df-messenger.js"></script>

<style>

df-messenger {

z-index: 999;

position: fixed;

--df-messenger-font-color: #000;

--df-messenger-font-family: Google Sans;

--df-messenger-chat-background: #f3f6fc;

--df-messenger-message-user-background: #d3e3fd;

--df-messenger-message-bot-background: #fff;

bottom: 16px;

right: 16px;

}

body {

font-family: sans-serif;

margin: 20px;

}

</style>

</head>

<body>

<h1>Welcome to Travel Buddy!</h1>

<p>Start chatting with our AI Travel buddy, in the bottom right corner.</p>

<df-messenger

project-id="<SAMPLE>"

agent-id="<SAMPLE>"

language-code="en"

max-query-length="-1">

<df-messenger-chat-bubble

chat-title="Travel Buddy">

</df-messenger-chat-bubble>

</df-messenger>

</body>

</html>

"""

@app.route("/")

def index():

"""Renders the HTML template with the Dialogflow Messenger."""

return render_template_string(html_template)

if __name__ == "__main__":

app.run(debug=True)

3dd3246c5fceb1d4.png

Zgodnie z podanymi instrukcjami

  1. Skopiuj podany przykładowy fragment kodu aplikacji Flask:
  2. Utwórz nowy plik o nazwie app.py i zapisz go.

4e58cfcf95f65d38.png

W następnym kroku pojawia się prośba o zainstalowanie flaska, aby uruchomić ten fragment kodu. Na razie nie jest to wymagane, ponieważ Cloud Shell ma już zainstalowane wszystkie najczęściej używane narzędzia.

b657b535710fd8f3.png

Zapisz plik (Ctrl + S lub Cmd + S), a następnie kliknij Otwórz terminal, w którym uruchomisz podany kod.

W terminalu uruchom to polecenie:

python app.py

Uwaga: upewnij się, że jesteś w odpowiednim folderze, w którym znajduje się plik app.py.

Aplikacja Python Flask będzie działać na porcie 5000. Aby wyświetlić podgląd tej aplikacji internetowej, kliknij ikonę Podgląd w przeglądarce w chmurze. Następnie możesz kliknąć Zmień port, wpisać 5000 i kliknąć Zmień i wyświetl podgląd,aby zapisać.

59ed7b08133b82bf.png

Pojawi się przykładowa witryna, na której będzie już dostępny agent AI. Wystarczy, że klikniesz agenta AI i zaczniesz z nim rozmawiać.

35a4b5abdd299efe.png

Możesz go przetestować z różnymi promptami. Możesz też poprosić Gemini Code Assist o upiększenie witryny lub dodanie do agenta AI więcej danych, aby zwiększyć jego zasoby.

Gdy wszystko będzie gotowe, możesz spróbować hostować tego agenta AI w Google Cloud, aby był on dostępny dla każdego, gdziekolwiek się znajduje. W ramach tego ćwiczenia w ramach tego CodeLab wdrożysz przykładową aplikację Flask w Cloud Run jako kontener.

Uwaga: nie dotyczy to tylko usługi cloud run (jeśli nie wiesz, czym jest cloud run, możesz to sprawdzić). Możesz poprosić o pomoc asystenta gemini code, aby wdrożyć to w Google Cloud lub dowolnym miejscu z zaleceniami, które mogą Ci pomóc.

Wróć do terminala Cloud Shell i naciśnij Ctrl + C, aby zatrzymać proces. Ponownie kliknij Otwórz edytor i poproś Gemini Code Assist o pomoc w skonteneryzowaniu aplikacji i wdrożeniu jej w cloud run.

Can you help me deploy this sample flask app to cloud run service

Zawiera on instrukcje i polecenia, które należy wykonać, aby hostować aplikację w usłudze Cloud Run. Postępuj zgodnie z tymi instrukcjami.

Oto przykładowa odpowiedź

Kroki wdrażania w Cloud Run

  1. Wymagania wstępne:
  • Konto Google Cloud: musisz mieć konto Google Cloud z włączonym rozliczaniem.
  • gcloud CLI: zainstaluj i zainicjuj pakiet Google Cloud SDK (interfejs wiersza poleceń gcloud) na komputerze lokalnym. Będziesz z niego korzystać do interakcji z Google Cloud.
  • Docker: zainstaluj Dockera na komputerze lokalnym. Cloud Run używa Dockera do konteneryzacji aplikacji.
  • Konfiguracja projektu: upewnij się, że w interfejsie wiersza poleceń gcloud masz wybrany projekt Google Cloud. Możesz sprawdzić gcloud config list project i ustawić gcloud config set project YOUR_PROJECT_ID

Uwaga: ponieważ wykonujemy całą tę czynność w powłoce Cloud Shell, nie trzeba konfigurować projektów.

  1. Utwórz **requirements.txt****:**
  • Ten plik zawiera listę wszystkich pakietów Pythona, których potrzebuje aplikacja. W katalogu projektu (gdzie znajduje się plik main.py) utwórz plik o nazwie requirements.txt i dodaj w nim następujący wiersz:
  1. Utwórz **Dockerfile****:**
  • Plik Dockerfile określa sposób kompilowania obrazu Dockera dla aplikacji. W katalogu projektu utwórz plik o nazwie Dockerfile (bez rozszerzenia) i dodaj do niego ten kod:

# Use an official Python runtime as a parent imageFROM python:3.9-slim-buster

# Set the working directory to /appWORKDIR /app

# Copy the current directory contents into the container at /app

COPY . /app

# Install any needed packages specified in requirements.txt

RUN pip install --no-cache-dir -r requirements.txt

# Make port 5000 available to the world outside this container

EXPOSE 5000

# Define environment variable

ENV NAME World

# Run app.py when the container launches

CMD ["python", ".py"]

  1. Kompilowanie obrazu Dockera:
  • Otwórz terminal, przejdź do katalogu projektu i uruchom:

gcloud builds submit –tag gcr.io/bgr-workshop-23rd/travel-buddy

  1. Wdróż w Cloud Run:
  • Po utworzeniu i przesłaniu obrazu wdróż go w Cloud Run za pomocą tego polecenia:

gcloud run deploy travel-buddy --image gcr.io/bgr-workshop-23rd/travel-buddy --region us-central1

Gdy wykonasz te czynności, Twoja aplikacja z zintegrowanym agentem AI będzie dostępna dla użytkowników.

Gratulujemy i życzymy owocnej nauki.

6. Czyszczenie

Aby uniknąć obciążenia konta Google Cloud opłatami za zasoby wykorzystane w tym ćwiczeniu, wykonaj te czynności:

  1. W konsoli Google Cloud otwórz stronę Zarządzanie zasobami.
  2. Na liście projektów wybierz projekt do usunięcia, a potem kliknij Usuń.
  3. W oknie wpisz identyfikator projektu i kliknij Wyłącz, aby usunąć projekt.
  4. Możesz też przejść w konsoli do Cloud Run, wybrać właśnie wdrożony zasób i usunąć go.