Ten en cuenta las siguientes limitaciones de la API de Reasoning Engine:
- La API de Reasoning Engine solo admite la implementación de código de Python.
- La API de Reasoning Engine solo se admite en la región
us-central1
.
Antes de comenzar
Antes de ejecutar este instructivo, asegúrate de seguir estos pasos:
Crear una instancia de ReasoningEngine
Para implementar la aplicación en Vertex AI, usa ReasoningEngine.create
y pasa el objeto como parámetro. Para ingresar dependencias de paquetes para la aplicación, usa los siguientes parámetros:
requirements
: Es una lista de dependencias de paquetes externos de PyPI. Cada línea debe ser una sola string. Para obtener más información, consulta el Formato de archivo de requisitos.extra_packages
: Es una lista de dependencias de paquetes internas. Estas dependencias de paquetes son archivos locales o directorios que corresponden a los paquetes locales de Python que requiere la aplicación.
En el siguiente código, se muestra cómo puedes implementar una aplicación:
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
La implementación de la aplicación tarda unos minutos en ejecutarse. Compila contenedores y activa servidores HTTP en el backend. La latencia de implementación depende del tiempo total que lleva instalar los paquetes obligatorios.
Una vez implementado, remote_app
corresponde a una instancia de reasoning_engines.LangchainAgent
que se ejecuta en Vertex AI y que se puede consultar o borrar. Es independiente de las instancias locales de reasoning_engines.LangchainAgent
.
Cada aplicación implementada tiene un identificador único. Ejecuta el comando siguiente a fin de obtener el identificador resource_name
para tu aplicación:
remote_app.resource_name
resource_name
tiene el siguiente formato: “projects/PROJECT_ID/locations/LOCATION/reasoningEngines/RESOURCE_ID”.
Prácticas recomendadas
- Fija las versiones de tus paquetes (para compilaciones reproducibles). Entre los paquetes comunes de los que debes hacer un seguimiento, se incluyen
google-cloud-aiplatform
,cloudpickle
,langchain
,langchain-core
,langchain-google-vertexai
ypydantic
. - Minimiza la cantidad de dependencias en tu aplicación. Esto reduce la cantidad de cambios drásticos cuando actualizas tus dependencias y facilita la actualización de tu aplicación con el tiempo para obtener funciones más nuevas.