Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Risoluzione dei problemi relativi alla distribuzione diretta del codice
Problemi e soluzioni comuni quando si inizia a utilizzare la distribuzione AgentCore diretta del codice di Amazon Bedrock. Per ulteriori informazioni sulla risoluzione dei problemi, consulta Risoluzione dei problemi di Amazon Bedrock Runtime. AgentCore
AccessDenied: Autorizzazioni S3 insufficienti
Quando ciò si verifica: durante la creazione o l'aggiornamento dell'agente con artefatto compresso in S3 tramite console, SDK o CLI
Perché ciò accade: il ruolo utilizzato per chiamare non Create/UpdateAgentRuntime dispone delle GetObject autorizzazioni s3: sull'uri S3 passate nell'input dell'API.
Soluzione: aggiungere l'GetObject autorizzazione s3: nel ruolo utilizzato per chiamare l'API Agentcore Runtime. create/update
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::your-bucket-name/*" } ] }
AccessDenied: accesso agli oggetti S3 crittografato con CMK
Quando ciò si verifica: durante la creazione dell'agente con oggetti CMK-encrypted S3, quando il ruolo di esecuzione non dispone delle autorizzazioni di decrittografia KMS.
Perché ciò accade: il ruolo utilizzato per chiamare non Create/UpdateAgentRuntime dispone delle autorizzazioni KMS:Decrypt sulla CMK utilizzata per crittografare l'oggetto S3 contenente il codice dell'agente.
Soluzione: aggiungi l'autorizzazione KMS:Decrypt al ruolo per il CMK specifico:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject", "kms:Decrypt" ], "Resource": [ "arn:aws:s3:::your-bucket-name/*", "arn:aws:kms:us-west-2:your-account:key/your-cmk-key-id" ] } ] }
CREATE_FAILED: compatibilità del pacchetto di codice
Quando ciò si verifica: durante la creazione o l'aggiornamento dell'agente con pacchetti di codice incompatibili (architettura, versione linguistica o formato del pacchetto errati).
Perché ciò accade: il file ZIP caricato contiene file binari compilati per un'architettura errata (ARM64 vs x86_64), una versione linguistica incompatibile o una struttura del pacchetto errata che non soddisfa i requisiti di Runtime. AgentCore
Soluzione::
Per risolvere il problema:
-
Assicurati che il codice sia compilato per arm64.
-
Usa una versione linguistica compatibile (controlla le versioni supportate da AgentCore Runtime).
-
Verifica che la struttura ZIP contenga i punti di ingresso e le dipendenze corretti.
-
Ricostruisci i pacchetti in un ambiente di runtime compatibile.
Indicatori di errore:
-
Stato dell'agente: CREATE_FAILED o errori di runtime
-
Errori di importazione o messaggi «impossibile eseguire file binari» nei log di Cloudwatch
-
Errori di mancata corrispondenza dell'architettura quando si verificano. AgentRuntimeEndpoint
Incompatibilità binaria ARM64
Quando ciò si verifica: durante la creazione dell'agente quando lo ZIP contiene file binari nativi compilati per un'architettura non ARM64.
Perché questo accade: AgentCore Runtime supporta solo l'architettura del set di istruzioni arm64. Il servizio analizza tutti i file binari nativi presenti nel pacchetto di distribuzione (file per Python ed entrambi e .so file per) e convalida le relative .so .node intestazioni ELF per Node.js verificarne la compatibilità con ARM64. Se viene compilato un file binario per x86_64, macOS () o un'altra architettura, la convalida ha esito negativo. Mach-O
Soluzione::
-
Python: da usare per scaricare ruote compatibili con arm64.
uv pip install --python-platform aarch64-manylinux2014 --only-binary=:all: -
Node.js: installa o usa i moduli nativi su una macchina arm64.
npm install --arch=arm64 --platform=linux -
In alternativa, crea le tue dipendenze su un'istanza AWS Graviton-based Amazon EC2 per garantire la compatibilità con arm64.
Indicatore di errore: "Your artifact contains binary files that are incompatible with Linux ARM64."
Punto di ingresso mancante
Quando ciò si verifica: durante la creazione dell'agente quando il file del punto di ingresso specificato non esiste nel file ZIP.
Perché ciò accade: il percorso del file del punto di ingresso specificato nella entryPoint configurazione non corrisponde a nessun file nel pacchetto di distribuzione. Ciò può verificarsi se il file non è incluso nello ZIP, se il percorso è stato digitato in modo errato o la struttura dello ZIP è diversa da quella prevista.
Soluzione::
-
Verifica che il file del punto di ingresso esista nel tuo ZIP:
unzip -l deployment_package.zip | grep app.js -
Assicurati che il percorso in
entryPointcorrisponda al percorso del file all'interno dello ZIP (incluse eventuali sottodirectory comesrc/app.jso)dist/index.js -
Per gli agenti Python, il punto di ingresso deve terminare con
.py; per Node.js gli agenti, deve terminare con.js
Indicatore di errore: "The specified entrypoint could not be found or accessed in your artifact."
Node.js Dichiarazione engines.node non compatibile
Quando ciò si verifica: durante la creazione Node.js dell'agente quando l'utente package.json o una dipendenza comune dichiara un engines.node intervallo che esclude la versione di destinazione. Node.js
Perché ciò accade: AgentCore Runtime controlla il engines.node campo nella radice package.json e nelle dipendenze comuni. Se l'intervallo di versioni esclude la Node.js versione di destinazione (ad esempio, <18 o >=14 <18 durante la distribuzione a Node.js 22), la creazione dell'agente ha esito negativo.
Soluzione::
-
Aggiorna il
engines.nodecampo nel tuopackage.jsonper includere la Node.js versione di destinazione (ad esempio,)">=18" -
Aggiorna eventuali dipendenze incompatibili a una versione che supporti la versione di destinazione Node.js
-
Rimuovi il
enginescampo se non è obbligatorio
Indicatore di errore: "Your artifact contains dependencies with engines.node declarations incompatible with the target Node.js version."
Node.js Pacchetto OTEL mancante
Quando ciò si verifica: durante la creazione Node.js dell'agente quando si specifica opentelemetry-instrument nel punto di ingresso ma il pacchetto ADOT non è incluso nello ZIP.
Perché ciò accade: quando si utilizza"entryPoint": ["opentelemetry-instrument", "app.js"], AgentCore Runtime si aspetta che il pacchetto @aws/aws-distro-opentelemetry-node-autoinstrumentation npm sia presente node_modules/ all'interno del pacchetto di distribuzione.
Soluzione::
Installa il pacchetto ADOT prima di impacchettare il tuo ZIP:
npm install @aws/aws-distro-opentelemetry-node-autoinstrumentation zip -r deployment_package.zip app.js node_modules/ package.json
In alternativa, rimuovi il opentelemetry-instrument prefisso dal punto di ingresso se non hai bisogno di una strumentazione automatica.
Indicatore di errore: "OpenTelemetry instrumentation executable not found. The ZIP file requires open-telemetry dependencies, but none are present."