Implementa l'applicazione

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:

  1. Configura l'ambiente.
  2. Sviluppare un'applicazione.

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

  1. 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 e pydantic.
  2. 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à.

Passaggi successivi