Anwendung bereitstellen

Beachten Sie die folgenden Einschränkungen für die Reasoning Engine API:

  • Die Reasoning Engine API unterstützt nur das Bereitstellen von Python-Code.
  • Die Reasoning Engine API wird nur in der Region us-central1 unterstützt.

Vorbereitung

Bevor Sie mit dieser Anleitung beginnen, müssen Sie Folgendes tun:

  1. Richten Sie die Umgebung ein.
  2. Entwickeln Sie eine LangChain-Anwendung oder entwickeln Sie eine LangGraph-Anwendung.

ReasoningEngine-Instanz erstellen

Verwenden Sie ReasoningEngine.create, um die Anwendung in Vertex AI bereitzustellen, und übergeben Sie das Objekt als Parameter. Wenn Sie Paketabhängigkeiten für die 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:

LangChain

remote_app = reasoning_engines.ReasoningEngine.create(
    reasoning_engines.LangchainAgent(
        model=model,
        tools=[get_exchange_rate],
        model_kwargs=model_kwargs,
    ),
    requirements=[
        "google-cloud-aiplatform[reasoningengine,langchain]",
    ],
    display_name="DISPLAY_NAME",  # Optional.
)
remote_app

LangGraph

remote_app = reasoning_engines.ReasoningEngine.create(
    reasoning_engines.LanggraphAgent(
        model=model,
        tools=[get_exchange_rate],
        model_kwargs=model_kwargs,
    ),
    requirements=[
        "google-cloud-aiplatform[reasoningengine,langchain]",
    ],
    display_name="DISPLAY_NAME",  # Optional.
)
remote_app

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.

LangChain

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

LangGraph

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

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".

Best Practices

  1. Paketversionen anpinnen (für reproduzierbare Builds) Zu den gängigen Paketen, die Sie im Blick behalten sollten, gehören: google-cloud-aiplatform, cloudpickle, langchain, langchain-core, langchain-google-vertexai, langgraph und pydantic.
  2. Minimieren Sie die Anzahl der Abhängigkeiten in Ihrer Anwendung. Dadurch wird die Anzahl der funktionsgefährdenden Änderungen beim Aktualisieren Ihrer Abhängigkeiten reduziert und es wird einfacher, Ihre Anwendung im Laufe der Zeit auf neuere Funktionen zu aktualisieren.

Nächste Schritte