Para implantar o aplicativo na Vertex AI, crie uma nova instância
de ReasoningEngine
e transmita a classe do aplicativo como um parâmetro. Se você
quiser introduzir dependências de pacote no seu aplicativo, use os
seguintes parâmetros:
requirements
: uma lista de dependências de pacotes PyPI externos. Cada linha precisa ser uma única string. Para saber mais, consulte Formato do arquivo de requisitos.extra_packages
: uma lista de dependências de pacote internas. Essas dependências de pacote são arquivos ou diretórios locais que correspondem aos pacotes Python locais exigidos pelo aplicativo.
Observe as seguintes limitações da API Reasoning Engine:
- A API Reasoning Engine oferece suporte apenas a frameworks de orquestração em Python.
- A API Reasoning Engine só tem suporte na região
us-central1
.
O código a seguir demonstra como implantar um aplicativo:
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[reasoningengine,langchain]",
],
display_name=DISPLAY_NAME,
)
remote_app
Ao implantar um aplicativo no Reasoning Engine, transmita um novo objeto em vez de reutilizar um atual. Dessa forma, você evita a criação de um objeto
que inicializou dados não selecionáveis, como conexões e
serviços de banco de dados no método .set_up
.
A implantação do aplicativo leva alguns minutos para ser executada. Ela cria contêineres e ativa servidores HTTP no back-end. A latência da implantação depende do tempo total necessário para instalar os pacotes necessários.
Depois de implantado, remote_app
corresponde a uma instância do reasoning_engines.LangchainAgent
que está em execução na Vertex AI e pode ser consultada ou excluída. Ela é separada das instâncias locais de reasoning_engines.LangchainAgent
.
Cada aplicativo implantado tem um identificador exclusivo. Execute o seguinte comando para receber o identificador resource_name
do seu aplicativo:
remote_app.resource_name
resource_name
tem o seguinte formato:
"projects/PROJECT_ID/locations/LOCATION/reasoningEngines/RESOURCE_ID".