Nozioni di base
È possibile utilizzare il cablaggio tramite la AgentCore CLI o direttamente AWS con SDK come. boto3 La CLI è il percorso più veloce per la maggior parte degli sviluppatori; gli SDK possono essere utilizzati a livello di programmazione dalla propria applicazione.
Prerequisiti
Nozioni di base
Esempio
- AWS CLI/boto3
-
Crea l'harness con un nome e un ruolo di esecuzione:
aws bedrock-agentcore-control create-harness \
--harness-name "MyHarness" \
--execution-role-arn "arn:aws:iam::123456789012:role/MyHarnessRole"
Sondaggio fino al. get-harness "status": "READY" Prendere nota dell'ID arn nella risposta.
aws bedrock-agentcore-control get-harness \
--harness-id "MyHarness-XyZ123"
Invoca da Python. Se non specifichi un modello, il cablaggio predefinito è Anthropic Claude Sonnet 4.6 su Amazon Bedrock:
import boto3
client = boto3.client("bedrock-agentcore", region_name="us-west-2")
response = client.invoke_harness(
harnessArn="arn:aws:bedrock-agentcore:us-west-2:123456789012:harness/MyHarness-XyZ123", # Replace with your harness ARN
runtimeSessionId="1234abcd-12ab-34cd-56ef-1234567890ab",
messages=[{
"role": "user",
"content": [{"text": "Research three tropical vacation options under $3k."}]
}],
)
for event in response["stream"]:
if "contentBlockDelta" in event:
delta = event["contentBlockDelta"].get("delta", {})
if "text" in delta:
print(delta["text"], end="", flush=True)
elif "runtimeClientError" in event:
print(f"\nError: {event['runtimeClientError']['message']}")
- AgentCore CLI
-
Installa la AgentCore CLI:
npm install -g @aws/agentcore
Crea un progetto di cablaggio in modo non interattivo con le bandiere:
agentcore create --name myresearchagent --model-provider bedrock
Distribuisci e richiama:
agentcore deploy
agentcore invoke --harness myresearchagent \
--session-id "$(uuidgen)" \
"Research three tropical vacation options under $3k, within five hours of NYC."
La risposta arriva al tuo terminale. Riutilizza la stessa --session-id in tutte le invocazioni per continuare la conversazione nello stesso ambiente.
Per aggiungere altri cablaggi a un progetto esistente, usa. agentcore add harness Per generare uno script di invoca Python autonomo, aggiungi. --with-invoke-script
Bandiere utili:
-
--no-browser(-b) - utilizza il terminale TUI anziché l'ispettore del browser
-
--logs(-l) - viene eseguito in modalità non interattiva con log su stdout
-
--port <port>(-p) - imposta la porta del server di sviluppo (impostazione predefinita 8080)
-
--no-traces- disabilita la raccolta di tracce OTEL locale
- Interactive
-
Installa la AgentCore CLI:
npm install -g @aws/agentcore
Esegui agentcore create senza bandiere per avviare la procedura guidata interattiva:
agentcore create
-
Inserisci il nome del tuo progetto:
-
Seleziona Harness come tipo di progetto:
-
Scegli il fornitore del tuo modello:
-
Scegli il tuo ambiente (predefinito, URI del contenitore o Dockerfile):
-
Configura la memoria:
-
Configura facoltativamente le impostazioni avanzate (strumenti, autenticazione, rete, ciclo di vita, limiti, troncamento, archiviazione della sessione):
-
Rivedi la tua configurazione e conferma:
Dopo la conferma, la procedura guidata consolida il tuo progetto. Distribuisci con, quindi richiama conagentcore deploy. agentcore invoke
Controlla lo stato del progetto in qualsiasi momento con: agentcore status
Se vuoi testare l'harness nel tuo ambiente locale, puoi eseguire il server di sviluppo:
agentcore dev
Quando eseguiagentcore dev, la CLI distribuisce innanzitutto le tue risorse di cablaggio AWS, creando il ruolo IAM, l'harness e qualsiasi memoria o credenziale configurata nel tuo progetto:
Una volta completata l'implementazione, avvia un server locale e apre l'Agent Inspector nel browser, dove è possibile chattare con l'harness, ispezionare le tracce e sfogliare le risorse del progetto:
Espandi le impostazioni del cablaggio per visualizzare e sovrascrivere la configurazione del cablaggio per la sessione corrente:
È tutto ciò che serve per far funzionare un'imbracatura. Le seguenti sezioni coprono tutto ciò che è possibile configurare.
runtimeSessionIdDeve contenere almeno 33 caratteri. Usa un UUID o un identificatore simile. Riutilizza lo stesso ID di sessione tra le chiamate per continuare una conversazione nello stesso ambiente.
Documentazione API
Per ulteriori dettagli, consulta l'API Reference:
InvokeHarnessrestituisce un flusso di eventi. I principali tipi di eventi sono:
-
messageStart- inizio di un nuovo messaggio (includerole)
-
contentBlockStart- inizio di un blocco di contenuto (testo otoolResult) toolUse
-
contentBlockDelta- contenuto incrementale (text, toolUse input,reasoningContent)
-
contentBlockStop- fine di un blocco di contenuto
-
messageStop- fine del messaggio (includestopReason)
-
metadata- metriche relative all'utilizzo dei token e alla latenza
-
runtimeClientError- errore durante l'esecuzione
L'stopReasonin messageStop indica il motivo per cui l'agente si è fermato:
-
end_turn- l'agente ha terminato normalmente
-
tool_use- l'agente sta chiamando una funzione in linea e attende un risultato sul lato client
-
max_tokens- è stato raggiunto il limite di token per turno del modello
-
max_iterations_exceeded- il maxIterations limite è stato raggiunto
-
timeout_exceeded- il timeoutSeconds limite è stato raggiunto
-
max_output_tokens_exceeded- il maxTokens budget era esaurito