Przepływy Firebase Genkit możesz wdrożyć jako usługi internetowe za pomocą Cloud Run. Ta strona, przeprowadzi Cię przez proces wdrażania domyślnej próbki przepływu danych.
Zainstaluj interfejs wiersza poleceń Google Cloud, jeśli z którego już nie korzystasz.
Utwórz nowy projekt Google Cloud za pomocą Cloud Console lub wybierz istniejącą. Projekt musi być połączony z kontem rozliczeniowym.
Gdy utworzysz lub wybierzesz projekt, skonfiguruj Google Cloud CLI do :
gcloud auth login
gcloud init
Utwórz katalog dla przykładowego projektu Genkit:
mkdir -p ~/tmp/genkit-cloud-project
cd ~/tmp/genkit-cloud-project
Jeśli zamierzasz używać IDE, otwórz je w tym katalogu.
Zainicjuj moduł Go w katalogu projektu:
go mod init example/cloudrun
Zainicjuj Genkit w swoim projekcie:
genkit init
Wybierz dostawcę modelu, którego chcesz użyć.
W pozostałych promptach zaakceptuj wartości domyślne. Narzędzie
genkit
utworzy przykładowego pliku źródłowego, który pomoże Ci rozpocząć tworzenie własnych przepływów AI. Jednak w pozostałej części tego samouczka wdrożysz tylko przykładowy przepływ.Zmodyfikuj przykładowy plik (
main.go
lubgenkit.go
), aby jednoznacznie określić port, na którym ma nasłuchiwać serwer przepływu:if err := genkit.Init(ctx, &genkit.Options{FlowAddr: ":3400"}, // Add this parameter. ); err != nil { log.Fatal(err) }
Udostępnij dane logowania do interfejsu API wdrożonej funkcji. Wykonaj jedną z tych czynności: w zależności od wybranego dostawcy modelu:
Gemini (AI od Google)
Upewnij się, że AI od Google dostępne w Twoim regionie.
Wygeneruj klucz interfejsu API dla platformy Gemini API za pomocą Google AI Studio.
Udostępnij klucz interfejsu API w środowisku Cloud Run:
- W konsoli Cloud włącz Interfejs Secret Manager API.
- Dzień Usługa Secret Manager utwórz nowy obiekt tajny zawierający klucz interfejsu API.
- Po utworzeniu obiektu tajnego na tej samej stronie przyznaj domyślne dostępu konta usługi Compute do obiektu tajnego za pomocą Rola Uzyskujący dostęp do obiektów tajnych w usłudze Secret Manager. (Możesz wyszukać nazwę domyślnego konta usługi Compute na stronie Uprawnienia).
W jednym z późniejszych kroków podczas wdrażania usługi konieczne będzie odwołują się do nazwy tego obiektu tajnego.
Gemini (Vertex AI)
W konsoli Google Cloud Włączanie interfejsu Vertex AI API do swojego projektu.
W Uprawnieniach sprawdź, czy przyznano domyślne konto usługi Compute. rolę Użytkownik Vertex AI.
Jedynym obiektem tajnym, który musisz skonfigurować na potrzeby tego samouczka, jest model ale z reguły należy zrobić coś podobnego w przypadku każdej usługi używane przez przepływ.
Opcjonalnie: spróbuj wykonać opisane niżej czynności w interfejsie dewelopera:
Skonfiguruj środowisko lokalne dla wybranego dostawcy modelu:
Gemini (AI od Google)
export GOOGLE_GENAI_API_KEY=<your API key>
Gemini (Vertex AI)
export GCLOUD_PROJECT=<your project ID>
export GCLOUD_LOCATION=us-central1
gcloud auth application-default login
Uruchom interfejs:
genkit start
W interfejsie programisty (http://localhost:4000/) uruchom ten proces:
Kliknij menusuggestionFlow.
Na karcie Input JSON (Dane wejściowe) podaj temat modelu:
"banana"
Kliknij Wykonaj.
Jeśli na razie wszystko działa zgodnie z oczekiwaniami, możesz skompilować i wdrożyć przepływ:
Gemini (AI od Google)
gcloud run deploy --port 3400 \ --update-secrets=GOOGLE_GENAI_API_KEY=<your-secret-name>:latest
Gemini (Vertex AI)
gcloud run deploy --port 3400 \ --set-env-vars GCLOUD_PROJECT=<your-gcloud-project> \ --set-env-vars GCLOUD_LOCATION=us-central1
GCLOUD_LOCATION
konfiguruje region interfejsu Vertex API, którego chcesz używać.Gdy pojawi się pytanie o zezwolenie na nieuwierzytelnione wywołania, wybierz
N
. OdpowiedźN
spowoduje, że usługa będzie wymagać danych logowania uprawnień. Zobacz Uwierzytelnianie w dokumentacji Cloud Run.
Po zakończeniu wdrażania narzędzie wyświetli adres URL usługi. Możesz przetestować
go za pomocą funkcji curl
:
curl -X POST https://<service-url>/menuSuggestionFlow \
-H "Authorization: Bearer $(gcloud auth print-identity-token)" \
-H "Content-Type: application/json" -d '"banana"'