View a markdown version of this page

Report di approfondimenti ricorrenti - Amazon Bedrock AgentCore

Report di approfondimenti ricorrenti

Crea una configurazione di valutazione online con approfondimenti e una pianificazione di clustering. Il servizio esegue automaticamente l'analisi degli approfondimenti sulla cadenza configurata senza intervento manuale.

Crea la configurazione

Esempio
AgentCore CLI
agentcore add online-insights --name my_agent_insights --runtime MyAgent --insights Builtin.Insight.FailureAnalysis --sampling-rate 100 --clustering-frequency DAILY --enable-on-create --json

Quindi esegui la distribuzione tramite CloudFormation:

agentcore deploy -y --json
Interactive
  1. Esegui agentcore per aprire il TUI, quindi seleziona aggiungi e scegli Online Insights:

    Procedura guidata Insights: seleziona l'agente da monitorare
  2. Seleziona gli approfondimenti da abilitare:

    Procedura guidata Insights: seleziona approfondimenti
  3. Imposta la frequenza di campionamento:

    Procedura guidata Insights: imposta la frequenza di campionamento
  4. Scegli le frequenze di clustering:

    Procedura guidata Insights: seleziona la frequenza di clustering
  5. Inserisci un nome di configurazione:

    Procedura guidata Insights: inserisci il nome della configurazione
  6. Controlla la configurazione e premi Invio per confermare:

    Procedura guidata Insights: verifica la configurazione
AWS SDK (boto3)
import boto3 client_cp = boto3.client("bedrock-agentcore-control", region_name="us-west-2") response = client_cp.create_online_evaluation_config( onlineEvaluationConfigName="my_agent_insights", rule={ "samplingConfig": {"samplingPercentage": 100.0}, "sessionConfig": {"sessionTimeoutMinutes": 30}, }, dataSourceConfig={ "cloudWatchLogs": { "serviceNames": ["MyAgent.DEFAULT"], "logGroupNames": [ "/aws/bedrock-agentcore/runtimes/MyAgent-abc123-DEFAULT" ], } }, insights=[ {"insightId": "Builtin.Insight.FailureAnalysis"}, {"insightId": "Builtin.Insight.UserIntent"}, ], clusteringConfig={"frequencies": ["DAILY"]}, evaluationExecutionRoleArn="arn:aws:iam::123456789012:role/AgentCoreEvaluationRole", enableOnCreate=True, ) config_id = response["onlineEvaluationConfigId"] print(f"Created config: {config_id}")

Questo indica al servizio di:

  • Sessioni di esempio alla velocità configurata (100% in questo esempio: modifica --sampling-rate o samplingPercentage analizza un sottoinsieme di traffico).

  • Esegui l'analisi degli errori e l'estrazione delle intenzioni degli utenti su ogni sessione campionata.

  • Attiva un rapporto di clustering ogni giorno.

Parametri di configurazione

Parametro Tipo Campo obbligatorio Description

insights

List

Obbligatorio (si esclude a vicenda con) evaluators

Elenco dei tipi di informazioni da eseguire. Ogni voce ha uninsightId. Massimo 10.

rule.samplingConfig.samplingPercentage

Numero

No (impostazione predefinita: 100)

Percentuale di sessioni da analizzare (1—100). Utilizzate una frequenza di campionamento inferiore per gli agenti ad alto traffico per controllare i costi pur continuando a far emergere modelli di guasto.

clusteringConfig

Oggetto

No

Configura processi periodici di valutazione in batch per il clustering. Contiene un elenco. frequencies Può essere usato solo quando insights viene fornito.

clusteringConfig.frequencies

Elenco di stringhe

Sì (all'internoclusteringConfig)

Uno o più di:DAILY,WEEKLY,MONTHLY. Massimo 3 valori.

Nota

Approfondimenti e valutatori si escludono a vicenda: è necessario fornire l'uno o l'altro, non entrambi. Se desideri sia il punteggio di qualità che la valutazione degli errori per lo stesso agente, crea due configurazioni separate che puntano alla stessa fonte di dati.

Aggiorna una configurazione

Modifica gli approfondimenti o la frequenza di clustering:

client_cp.update_online_evaluation_config( onlineEvaluationConfigId=config_id, insights=[ {"insightId": "Builtin.Insight.FailureAnalysis"}, {"insightId": "Builtin.Insight.UserIntent"}, ], clusteringConfig={"frequencies": ["DAILY", "WEEKLY"]}, )

Visualizza i risultati ricorrenti dei report

I report ricorrenti producono automaticamente processi di valutazione in batch. Utilizzalo ListBatchEvaluations per trovare i report completati e quindi GetBatchEvaluation per recuperare i risultati:

client = boto3.client("bedrock-agentcore", region_name="us-west-2") # List recent batch evaluations evaluations = client.list_batch_evaluations() for eval_summary in evaluations.get("batchEvaluations", []): if eval_summary["status"] == "COMPLETED" and eval_summary.get("insights"): result = client.get_batch_evaluation( batchEvaluationId=eval_summary["batchEvaluationId"] ) print(f"Report: {eval_summary['batchEvaluationName']}") if "failureAnalysisResult" in result: failures = result["failureAnalysisResult"]["failures"] print(f" Found {len(failures)} failure categories")

Gestisci la configurazione

Esempio
AgentCore CLI

Pausa:

agentcore pause online-insights my_agent_insights --json

Curriculum:

agentcore resume online-insights my_agent_insights --json

Rimuovi:

agentcore remove online-insights --name my_agent_insights --yes --json
AWS SDK (boto3)

Metti in pausa o riprendi:

# Pause client_cp.update_online_evaluation_config( onlineEvaluationConfigId=config_id, executionStatus="DISABLED", ) # Resume client_cp.update_online_evaluation_config( onlineEvaluationConfigId=config_id, executionStatus="ENABLED", )

Elimina:

client_cp.delete_online_evaluation_config( onlineEvaluationConfigId=config_id, )
avvertimento

L'eliminazione di una configurazione non elimina i risultati precedenti della valutazione in batch. I risultati degli approfondimenti storici rimangono accessibili tramiteGetBatchEvaluation.