LlamaIndex Query Pipeline-Agent verwenden

Hinweis

In diesem Tutorial wird davon ausgegangen, dass Sie die Anleitung in den folgenden Artikeln gelesen und befolgt haben:

Instanz eines Agenten abrufen

Wenn Sie einen LlamaIndexQueryPipelineAgent abfragen möchten, müssen Sie zuerst eine neue Instanz erstellen oder eine vorhandene Instanz abrufen.

So rufen Sie den LlamaIndexQueryPipelineAgent ab, der einer bestimmten Ressourcen-ID entspricht:

Agent Platform SDK

Führen Sie den folgenden Code aus:

import vertexai

client = vertexai.Client(  # For service interactions via client.agent_engines
    project="PROJECT_ID",
    location="LOCATION",
)

agent = client.agent_engines.get(name="projects/PROJECT_ID/locations/LOCATION/reasoningEngines/RESOURCE_ID")

print(agent)

Dabei gilt:

Python-Bibliothek für Anfragen

Führen Sie den folgenden Code aus:

from google import auth as google_auth
from google.auth.transport import requests as google_requests
import requests

def get_identity_token():
    credentials, _ = google_auth.default()
    auth_request = google_requests.Request()
    credentials.refresh(auth_request)
    return credentials.token

response = requests.get(
f"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/RESOURCE_ID",
    headers={
        "Content-Type": "application/json; charset=utf-8",
        "Authorization": f"Bearer {get_identity_token()}",
    },
)

REST API

curl \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/RESOURCE_ID

Wenn Sie das Agent Platform SDK verwenden, entspricht das agent Objekt einer AgentEngine Klasse, die Folgendes enthält:

  • agent.api_resource mit Informationen zum bereitgestellten Agenten. Sie können auch agent.operation_schemas() aufrufen, um die Liste der Vorgänge zurückzugeben , die vom agent unterstützt werden. Weitere Informationen finden Sie unter Unterstützte Vorgänge.
  • agent.api_client , der synchrone Dienstinteraktionen ermöglicht
  • agent.async_api_client , der asynchrone Dienstinteraktionen ermöglicht

Im Rest dieses Abschnitts wird davon ausgegangen, dass Sie eine AgentEngine-Instanz mit dem Namen agent haben.

Unterstützte Vorgänge

Die folgenden Vorgänge werden für LlamaIndexQueryPipelineAgent unterstützt:

  • query: zum synchronen Abrufen einer Antwort auf eine Anfrage.

Agent abfragen

Verwenden Sie die .query Methode, um den Agenten abzufragen:

agent.query(input="What is Paul Graham's life in college?")

entspricht Folgendem (in vollständiger Form):

agent.query(input={"input": "What is Paul Graham's life in college?"})

Informationen zum Anpassen des Eingabewörterbuchs finden Sie unter Promptvorlage anpassen.

Sie können das Verhalten des Agenten auch über input hinaus anpassen, indem Sie zusätzliche Keyword-Argumente an query() übergeben.

response = agent.query(
    input={
      "input": [
        "What is Paul Graham's life in college?",
        "How did Paul Graham's college experience shape his career?",
        "How did Paul Graham's college experience shape his entrepreneurial mindset?",
      ],
    },
    batch=True  # run the pipeline in batch mode and pass a list of inputs.
)
print(response)

Eine vollständige Liste der verfügbaren Parameter finden Sie im QueryPipeline.run Code.

Nächste Schritte