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 :
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
- É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
etpydantic
. - 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.