Tieni presente le seguenti limitazioni per l'API Reasoning Engine:
- L'API Reasoning Engine supporta il deployment solo di codice Python.
- L'API Reasoning Engine è supportata solo nella regione
us-central1
.
Prima di iniziare
Prima di eseguire questo tutorial, assicurati di seguire:
Crea un'istanza ReasoningEngine
Per eseguire il deployment dell'applicazione su Vertex AI, utilizza ReasoningEngine.create
e passare l'oggetto come parametro. per introdurre dipendenze dei pacchetti
l'applicazione, utilizza i seguenti parametri:
requirements
: un elenco di pacchetti PyPI esterni delle dipendenze. Ogni riga deve essere una singola stringa. Per saperne di più, vedi Formato file dei requisiti.extra_packages
: un elenco di dipendenze dei pacchetti interni. Questi pacchetti Le dipendenze sono file o directory locali che corrispondono i pacchetti Python richiesti dall'applicazione.
Il codice seguente mostra come eseguire il deployment di un'applicazione:
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
L'esecuzione del deployment dell'applicazione richiede alcuni minuti. Consente di creare container e attivare i server HTTP sul backend. La latenza del deployment dipende tempo totale necessario per installare i pacchetti richiesti.
Una volta eseguito il deployment, remote_app
corrisponde a un'istanza di reasoning_engines.LangchainAgent
in esecuzione su Vertex AI e può essere sottoposto a query o eliminato. È distinta dalle istanze locali di reasoning_engines.LangchainAgent
.
Ogni applicazione di cui è stato eseguito il deployment ha un identificatore univoco. Esegui questo comando
per ottenere l'identificatore resource_name
per la tua applicazione:
remote_app.resource_name
resource_name
ha il seguente formato:
"projects/PROJECT_ID/locations/LOCATION/reasoningEngines/RESOURCE_ID".
Best practice
- Blocca le versioni del pacchetto (per build riproducibili). Pacchetti comuni da conservare
traccia di include:
google-cloud-aiplatform
,cloudpickle
,langchain
,langchain-core
,langchain-google-vertexai
epydantic
. - Riduci al minimo il numero di dipendenze nell'applicazione. Questo riduce numero di modifiche che provocano un errore durante l'aggiornamento delle dipendenze, il che semplifica per aggiornare l'applicazione nel tempo per ottenere nuove funzionalità.