Avant de commencer
Ce tutoriel suppose que vous avez lu et suivi les instructions de :
- Créez un agent LlamaIndexQueryPipeline : pour créer
agenten tant qu'instance deLlamaIndexQueryPipelineAgent. - Authentification de l'utilisateur pour s'authentifier en tant qu'utilisateur afin d'interroger l'agent.
- Importez et initialisez le SDK pour initialiser le client afin d'obtenir une instance déployée (si nécessaire).
Obtenir une instance d'un agent
Pour interroger un LlamaIndexQueryPipelineAgent, vous devez d'abord créer une instance ou obtenir une instance existante.
Pour obtenir le LlamaIndexQueryPipelineAgent correspondant à un ID de ressource spécifique :
SDK Agent Platform
Exécutez le code suivant :
import agentplatform
client = agentplatform.Client( # For service interactions via client.runtimes
project="PROJECT_ID",
location="LOCATION",
)
agent = client.runtimes.get(name="projects/PROJECT_ID/locations/LOCATION/reasoningEngines/RESOURCE_ID")
print(agent)
Où :
PROJECT_IDcorrespond à l'ID de projet Google Cloud sous lequel vous créerez et déploierez des agents.LOCATIONdésigne l'une des régions compatibles.RESOURCE_IDest l'ID de l'agent déployé en tant que ressourcereasoningEngine.
Bibliothèque de requêtes Python
Exécutez le code suivant :
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()}",
},
)
API REST
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_IDLorsque vous utilisez le SDK Agent Platform, l'objet agent correspond à une classe AgentRuntime qui contient les éléments suivants :
agent.api_resourcecontenant des informations sur l'agent déployé. Vous pouvez également appeleragent.operation_schemas()pour renvoyer la liste des opérations compatibles avecagent. Pour en savoir plus, consultez Opérations compatibles.agent.api_clientqui permet des interactions de service synchronesagent.async_api_clientqui permet des interactions de service asynchrones
Le reste de cette section suppose que vous disposez d'une instance AgentRuntime nommée agent.
Opérations prises en charge
Les opérations suivantes sont acceptées pour LlamaIndexQueryPipelineAgent :
query: pour obtenir une réponse à une requête de manière synchrone.
Interroger l'agent
Pour interroger l'agent, utilisez la méthode .query :
agent.query(input="What is Paul Graham's life in college?")
équivaut à ce qui suit (sous forme complète) :
agent.query(input={"input": "What is Paul Graham's life in college?"})
Pour personnaliser le dictionnaire d'entrée, consultez Personnaliser le modèle de prompt.
Vous pouvez également personnaliser le comportement de l'agent au-delà de input en transmettant des arguments de mots clés supplémentaires à query().
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)
Consultez le code QueryPipeline.run pour obtenir la liste complète des paramètres disponibles.