

# Genera una raccomandazione dai risultati degli approfondimenti
<a name="insights-generate-recommendation"></a>

Dopo aver esaminato i risultati delle analisi, puoi utilizzare le stesse tracce degli agenti per generare un prompt di sistema migliorato. `StartRecommendation`Indicate la valutazione in batch completata che ha prodotto i risultati delle vostre analisi.

**Nota**  
La generazione di raccomandazioni è attualmente supportata solo per gli `Builtin.Insight.FailureAnalysis` approfondimenti e oggi vengono fornite solo raccomandazioni tempestive di sistema.

**Topics**
+ [Avvia una raccomandazione del prompt di sistema](#insights-recommendation-start)
+ [Recupera il prompt consigliato](#insights-recommendation-retrieve)
+ [Fonti di traccia alternative](#insights-recommendation-trace-sources)

## Avvia una raccomandazione del prompt di sistema
<a name="insights-recommendation-start"></a>

Fornite il prompt di sistema corrente e fate riferimento alla valutazione del batch che contiene le tracce:

**Example**  
Genera una raccomandazione a partire da un'analisi approfondita completata:  

```
agentcore run recommendation --from-insights <id> --type system-prompt --bundle-name my_bundle --json
```
Oppure fai riferimento direttamente a un ARN di valutazione in batch:  

```
agentcore run recommendation --batch-evaluation-arn <arn> --type system-prompt --bundle-name my_bundle --json
```

1. **Esegui `agentcore` per aprire il TUI, quindi seleziona **Esegui** e scegli Raccomandazione:**  
![Menu Esegui: seleziona Raccomandazione](http://docs.aws.amazon.com/it_it/bedrock-agentcore/latest/devguide/images/tui/insights-run-select.png)

   La procedura guidata guida l'utente nella selezione di una fonte di traccia (insights run o batch evaluation ARN), del tipo di raccomandazione e del pacchetto di configurazione.

```
import boto3
import uuid

client = boto3.client("bedrock-agentcore", region_name="us-west-2")

response = client.start_recommendation(
    name=f"fix-rate-limiting-{uuid.uuid4().hex[:8]}",
    type="SYSTEM_PROMPT_RECOMMENDATION",
    recommendationConfig={
        "systemPromptRecommendationConfig": {
            "systemPrompt": {
                "text": "You are a helpful customer support assistant. Help users with their orders and returns."
            },
            "agentTraces": {
                "batchEvaluation": {
                    "batchEvaluationArn": "arn:aws:bedrock-agentcore:us-west-2:123456789012:batch-evaluate/insights-run-ABC1234567"
                }
            },
        }
    },
    clientToken=str(uuid.uuid4()),
)

recommendation_id = response["recommendationId"]
print(f"Started recommendation: {recommendation_id}")
```

## Recupera il prompt consigliato
<a name="insights-recommendation-retrieve"></a>

Esegui il sondaggio fino al completamento, quindi recupera il risultato:

```
import time

while True:
    rec = client.get_recommendation(recommendationId=recommendation_id)
    if rec["status"] in ("COMPLETED", "FAILED"):
        break
    time.sleep(15)

if rec["status"] == "COMPLETED":
    result = rec["recommendationResult"]["systemPromptRecommendationResult"]
    print(f"Recommended prompt:\n{result['recommendedSystemPrompt']}")
    print(f"\nExplanation:\n{result['explanation']}")
```

## Fonti di traccia alternative
<a name="insights-recommendation-trace-sources"></a>

Invece di fare riferimento a una valutazione in batch, puoi anche fornire tracce tramite CloudWatch Logs:

```
"agentTraces": {
    "cloudwatchLogs": {
        "logGroupArns": [
            "arn:aws:logs:us-west-2:123456789012:log-group:/aws/bedrock-agentcore/runtimes/MyAgent-abc123-DEFAULT"
        ],
        "serviceNames": ["MyAgent.DEFAULT"],
        "startTime": "2026-05-27T00:00:00Z",
        "endTime": "2026-06-03T00:00:00Z",
    }
}
```