Anwendung entwickeln

Erstellen Sie zum Bereitstellen der Anwendung in Vertex AI eine neue Instanz von ReasoningEngine und übergeben Sie die Anwendungsklasse als Parameter. Wenn Sie Paketabhängigkeiten für Ihre Anwendung einführen möchten, verwenden Sie die folgenden Parameter:

  • requirements: Eine Liste externer PyPI. Jede Zeile muss ein einzelner String sein. Weitere Informationen finden Sie unter Dateiformat für Anforderungen.
  • extra_packages: Eine Liste der internen Paketabhängigkeiten. Diese Paketabhängigkeiten sind lokale Dateien oder Verzeichnisse, die den für die Anwendung erforderlichen lokalen Python-Paketen entsprechen.

Der folgende Code zeigt, wie Sie eine Anwendung bereitstellen können:

DISPLAY_NAME = "Demo Langchain Application"

remote_app = reasoning_engines.ReasoningEngine.create(
    reasoning_engines.LangchainAgent(
        model=model,
        tools=[get_exchange_rate],
        model_kwargs=model_kwargs,
    ),
    requirements=[
        "google-cloud-aiplatform",
        "langchain",
        "langchain-core",
        "langchain-google-vertexai",
        "requests==2.*",
    ],
    display_name=DISPLAY_NAME,
)
remote_app

Wenn Sie eine Anwendung in Reasoning Engine bereitstellen, übergeben Sie ein neues Objekt, anstatt ein vorhandenes Objekt zu verwenden. Auf diese Weise vermeiden Sie das Erstellen eines Objekts, das in der Methode .set_up nicht Pickle-fähige Daten wie Datenbankverbindungen und Dienste initialisiert hat.

Die Bereitstellung der Anwendung dauert mehrere Minuten. Es erstellt Container und aktiviert HTTP-Server im Back-End. Die Bereitstellungslatenz hängt von der Gesamtzeit ab, die für die Installation der erforderlichen Pakete benötigt wird.

Nach der Bereitstellung entspricht remote_app einer Instanz von CLASS_NAME, die auf Vertex AI ausgeführt wird und abgefragt oder gelöscht werden kann. Es ist getrennt von lokalen Instanzen von CLASS_NAME.

Jede bereitgestellte Anwendung hat eine eindeutige Kennung. Führen Sie den folgenden Befehl aus, um die resource_name-ID für Ihre Anwendung abzurufen:

remote_app.resource_name

resource_name hat das folgende Format: "projects/PROJECT_ID/locations/LOCATION/reasoningEngines/RESOURCE_ID".

Nächste Schritte