Sviluppare ed eseguire il deployment di agenti su Agent Engine

Questa pagina mostra come creare ed eseguire il deployment di un agente che restituisce il cambio tra due valute in una data specificata.

Prima di iniziare

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Vertex AI and Cloud Storage APIs.

    Enable the APIs

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the Vertex AI and Cloud Storage APIs.

    Enable the APIs

Per ottenere le autorizzazioni necessarie per utilizzare Agent Engine, chiedi all'amministratore di concederti i seguenti ruoli IAM nel progetto:

Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.

Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

Installa e inizializza l'SDK Vertex AI per Python

  1. Esegui il seguente comando per installare l'SDK Vertex AI Python e altri pacchetti richiesti:

    LangGraph

    pip install --upgrade --quiet google-cloud-aiplatform[agent_engines,langchain]

    LangChain

    pip install --upgrade --quiet google-cloud-aiplatform[agent_engines,langchain]

    AG2

    pip install --upgrade --quiet google-cloud-aiplatform[agent_engines,ag2]
  2. Autenticazione come utente

    Colab

    Esegui questo codice:

    from google.colab import auth
    
    auth.authenticate_user(project_id="PROJECT_ID")
    

    Cloud Shell

    Non occorre alcun intervento.

    Shell locale

    Esegui questo comando:

    gcloud auth application-default login
  3. Esegui il seguente codice per importare Agent Engine e inizializzare l'SDK:

    import vertexai
    from vertexai import agent_engines
    
    vertexai.init(
        project="PROJECT_ID",               # Your project ID.
        location="LOCATION",                # Your cloud region.
        staging_bucket="gs://BUCKET_NAME",  # Your staging bucket.
    )
    

Sviluppare un agente

Innanzitutto, sviluppa uno strumento:

def get_exchange_rate(
    currency_from: str = "USD",
    currency_to: str = "EUR",
    currency_date: str = "latest",
):
    """Retrieves the exchange rate between two currencies on a specified date."""
    import requests

    response = requests.get(
        f"https://api.frankfurter.app/{currency_date}",
        params={"from": currency_from, "to": currency_to},
    )
    return response.json()

Poi, crea un'istanza di un agente:

LangGraph

from vertexai.preview.reasoning_engines import LanggraphAgent

agent = LanggraphAgent(
    model="gemini-1.5-flash-001",
    tools=[get_exchange_rate],
    model_kwargs={
        "temperature": 0.28,
        "max_output_tokens": 1000,
        "top_p": 0.95,
    },
)

LangChain

from vertexai.preview.reasoning_engines import LangchainAgent

agent = LangchainAgent(
    model="gemini-1.5-flash-001",
    tools=[get_exchange_rate],
    model_kwargs={
        "temperature": 0.28,
        "max_output_tokens": 1000,
        "top_p": 0.95,
    },
)

AG2

from vertexai.preview.reasoning_engines import AG2Agent

agent = AG2Agent(
    model="gemini-1.5-flash-001",
    runnable_name="Get Exchange Rate Agent",
    tools=[get_exchange_rate],
)

Infine, testa l'agente localmente:

LangGraph

agent.query(input={"messages": [
    ("user", "What's the exchange rate from US dollars to Swedish currency?"),
]})

LangChain

agent.query(
    input="What's the exchange rate from US dollars to Swedish currency?"
)

AG2

agent.query(
    input="What's the exchange rate from US dollars to Swedish currency?"
)

Esegui il deployment di un agente

Per eseguire il deployment dell'agente:

LangGraph

remote_agent = agent_engines.create(
    agent,
    requirements=["google-cloud-aiplatform[agent_engines,langchain]"],
)

LangChain

remote_agent = agent_engines.create(
    agent,
    requirements=["google-cloud-aiplatform[agent_engines,langchain]"],
)

AG2

remote_agent = agent_engines.create(
    agent,
    requirements=["google-cloud-aiplatform[agent_engines,ag2]"],
)

Viene creata una risorsa reasoningEngine in Vertex AI.

Utilizzare un agente

Testa l'agente di cui è stato eseguito il deployment inviando una query:

LangGraph

remote_agent.query(input={"messages": [
    ("user", "What's the exchange rate from US dollars to Swedish currency?"),
]})

LangChain

remote_agent.query(
    input="What's the exchange rate from US dollars to Swedish currency?"
)

AG2

remote_agent.query(
    input="What's the exchange rate from US dollars to Swedish currency?"
)

Esegui la pulizia

Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questa pagina, segui questi passaggi.

remote_agent.delete()

Passaggi successivi