Déployer l'application

Notez les limites suivantes pour l'API Reasoning Engine:

  • L'API Reasoning Engine ne permet de déployer que du code Python.
  • L'API Reasoning Engine n'est disponible que dans la région us-central1.

Avant de commencer

Avant d'exécuter ce tutoriel, veillez à suivre la procédure suivante :

  1. Configurez votre environnement.
  2. Développer une application

Créer une instance ReasoningEngine

Pour déployer l'application sur Vertex AI, utilisez ReasoningEngine.create et transmettez l'objet en tant que paramètre. Pour introduire des dépendances de package pour l'application, utilisez les paramètres suivants :

  • requirements : liste des dépendances de packages PyPI externes. Chaque ligne doit être une chaîne unique. Pour en savoir plus, consultez la section Format de fichier des exigences.
  • extra_packages : liste des dépendances de packages internes. Ces dépendances de package sont des fichiers ou des répertoires locaux qui correspondent aux packages Python locaux requis par l'application.

Le code suivant montre comment déployer une application :

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

Le déploiement de l'application prend quelques minutes. Il crée des conteneurs et active les serveurs HTTP sur le backend. La latence de déploiement dépend du temps total nécessaire à l'installation des packages requis.

Une fois déployé, remote_app correspond à une instance de reasoning_engines.LangchainAgent qui s'exécute sur Vertex AI et peut être interrogée ou supprimée. Il est distinct des instances locales de reasoning_engines.LangchainAgent.

Chaque application déployée possède un identifiant unique. Exécutez la commande suivante pour obtenir l'identifiant resource_name de votre application :

remote_app.resource_name

resource_name a le format suivant : "projects/PROJECT_ID/locations/LOCATION/reasoningEngines/RESOURCE_ID".

Bonnes pratiques

  1. Épinglez vos versions de package (pour les builds reproductibles). Les packages courants à suivre sont les suivants : google-cloud-aiplatform, cloudpickle, langchain, langchain-core, langchain-google-vertexai et pydantic.
  2. Minimisez le nombre de dépendances dans votre application. Cela réduit le nombre de modifications destructives lors de la mise à jour de vos dépendances et facilite la mise à jour de votre application au fil du temps pour ajouter de nouvelles fonctionnalités.

Étape suivante