Sie können Firebase Genkit-Abläufe als Webdienste mit jedem Dienst bereitstellen, der eine Go-Binärdatei hosten kann. Auf dieser Seite werden Sie beispielhaft durch den allgemeinen Prozess zum Bereitstellen des Standardbeispielablaufs geführt und sehen, wo Sie anbieterspezifische Aktionen ausführen müssen.
Erstellen Sie ein Verzeichnis für das Genkit-Beispielprojekt:
mkdir -p ~/tmp/genkit-cloud-project
cd ~/tmp/genkit-cloud-project
Wenn Sie eine IDE verwenden, öffnen Sie sie in diesem Verzeichnis.
Initialisieren Sie ein Go-Modul in Ihrem Projektverzeichnis:
go mod init example/cloudrun
Initialisieren Sie Genkit in Ihrem Projekt:
genkit init
Wählen Sie den gewünschten Modellanbieter aus.
Akzeptieren Sie für die restlichen Prompts die Standardeinstellungen. Das
genkit
-Tool erstellt eine Beispielquelle, mit der Sie Ihre eigenen KI-Abläufe entwickeln können. Im Rest dieser Anleitung stellen Sie jedoch nur den Beispielablauf bereit.Bearbeiten Sie die Beispieldatei (
main.go
odergenkit.go
), um den Port anzugeben, auf dem der Flow-Server überwachen soll:if err := genkit.Init(ctx, &genkit.Options{FlowAddr: ":3400"}, // Add this parameter. ); err != nil { log.Fatal(err) }
Wenn Ihr Anbieter es verlangt, dass Sie einen bestimmten Port beobachten, müssen Sie Genkit entsprechend konfigurieren.
Implementieren Sie eine Form der Authentifizierung und Autorisierung, um den Zugriff auf die von Ihnen geplanten Abläufe zu steuern.
Da die meisten Dienste mit generativer KI bepreist werden, sollten Sie wahrscheinlich keinen offenen Zugriff auf Endpunkte zulassen, die sie aufrufen. Einige Hosting-Dienste bieten eine Authentifizierungsebene als Frontend für darauf bereitgestellte Apps, die Sie für diesen Zweck verwenden können.
Stellen Sie API-Anmeldedaten für Ihre bereitgestellte Funktion bereit. Führen Sie je nach ausgewähltem Modellanbieter einen der folgenden Schritte aus:
Gemini (Google AI)
Prüfen Sie, ob Google AI in Ihrer Region verfügbar ist.
Generiere einen API-Schlüssel für die Gemini API mit Google AI Studio.
Stellen Sie den API-Schlüssel in der bereitgestellten Umgebung bereit.
Die meisten Anwendungshosts bieten ein System für die sichere Handhabung von Secrets wie API-Schlüsseln. Häufig sind diese Secrets Ihrer App in Form von Umgebungsvariablen verfügbar. Wenn Sie Ihren API-Schlüssel der Variablen
GOOGLE_GENAI_API_KEY
zuweisen können, wird er von Genkit automatisch verwendet. Andernfalls müssen Sie dengoogleai.Init()
-Aufruf ändern, um den Schlüssel explizit festzulegen. (Betten Sie den Schlüssel aber nicht direkt in den Code ein. Verwenden Sie die von Ihrem Hostanbieter bereitgestellte Secrets-Verwaltungsanlage.)
Gemini (Vertex AI)
Aktivieren Sie in der Cloud Console die Vertex AI API für Ihr Projekt.
Erstellen Sie auf der Seite IAM ein Dienstkonto für den Zugriff auf die Vertex AI API, falls Sie noch keines haben.
Weisen Sie dem Konto die Rolle Vertex AI-Nutzer zu.
Richten Sie Standardanmeldedaten für Anwendungen in Ihrer Hostingumgebung ein.
Konfigurieren Sie das Plug-in mit Ihrer Google Cloud-Projekt-ID und dem Vertex AI API-Standort, den Sie verwenden möchten. Dazu können Sie entweder die Umgebungsvariablen
GCLOUD_PROJECT
undGCLOUD_LOCATION
in Ihrer Hostingumgebung oder in Ihremvertexai.Init()
-Aufruf festlegen.
Für diese Anleitung müssen Sie nur ein Secret für den Modellanbieter einrichten. Im Allgemeinen müssen Sie jedoch für jeden Dienst, den Ihr Flow verwendet, etwas Ähnliches tun.
Optional: Probieren Sie den Ablauf auf der Entwickler-UI aus:
Richten Sie Ihre lokale Umgebung für den ausgewählten Modellanbieter ein:
Gemini (Google AI)
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
Benutzeroberfläche starten:
genkit start
Führen Sie den Ablauf in der Entwickler-Benutzeroberfläche (http://localhost:4000/) aus:
Klicken Sie auf menuSuggestionFlow.
Geben Sie auf dem Tab JSON-Eingabe einen Betreff für das Modell an:
"banana"
Klicken Sie auf Ausführen.
Wenn bisher alles wie erwartet funktioniert, können Sie den Ablauf mit den Tools Ihres Anbieters erstellen und bereitstellen.