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à.
Automatizza la generazione di eventi di test Lambda utilizzando Amazon Bedrock AgentCore
Ishita Gupta e Kriti Gupta, Amazon Web Services
Riepilogo
Questo modello offre un AI-powered approccio per la generazione automatica di casi di test completi per le AWS Lambda funzioni utilizzando le funzionalità di intelligenza artificiale generativa di Amazon Bedrock. Questo modello implementa un'architettura a tre agenti (Analyzer, Generator e Validator) distribuita su Amazon Bedrock AgentCore che analizza il codice della funzione Lambda effettivo per estrarre input/output modelli e genera scenari di test positivi, negativi e limite con dati realistici.
L'architettura stabilisce un flusso di lavoro intelligente in cui l'Analyzer Agent recupera e analizza il codice Lambda utilizzando Amazon Bedrock, il Generator Agent crea casi di test basati su modelli appresi e il Validator Agent garantisce la qualità attraverso la deduplicazione e il ranking. Un archivio di DynamoDB-based memoria Amazon consente l'apprendimento continuo dal feedback degli utenti, migliorando la precisione della generazione dei test nel tempo. Amazon Cognito fornisce un'autenticazione utente sicura con autorizzazione API basata su JSON Web Token (JWT). Amazon Bedrock Guardrails fornisce un rapido filtraggio degli attacchi, la redazione delle informazioni sensibili e l'applicazione della sicurezza dei contenuti su tutte le chiamate API Amazon Bedrock. Funzionalità chiave:
Multi-Language Supporto: funzioni Python, Java, C# e Ruby Lambda JavaScript/TypeScript
Intelligent Code Chunking: divide automaticamente le basi di codice di grandi dimensioni in blocchi gestibili per l'analisi
Elaborazione parallela: chiamate simultanee all'API Amazon Bedrock per una generazione di test più rapida (5 lavoratori simultanei per l'analisi del codice, generazione parallela di test per blocco)
Target-Specific Analisi: concentrati su funzioni, classi o file specifici all'interno del codice Lambda
Pattern Learning: Amazon DynamoDB-based memory store con storage di pattern specifico per l'obiettivo e globale
Prevenzione del rifiuto: impara dai test case rifiutati per evitare gli errori più comuni
Meccanismo di continuazione: gestisce le risposte incomplete di Amazon Bedrock con continuazione automatica.
Ignora i modelli: escludi dall'analisi i file di test, le dipendenze e i file non di codice.
Distribuzione serverless: viene eseguita su Amazon Bedrock con autenticazione AgentCore Cognito-based
Security Guardrails: Amazon Bedrock Guardrails per il rapido filtraggio degli attacchi, la redazione delle informazioni di identificazione personale (PII), la sicurezza dei contenuti e il blocco degli argomenti negati su tutte le chiamate AI
Questo modello è ideale per i team di sviluppo e le organizzazioni che desiderano accelerare i test Lambda, migliorare la copertura dei test e mantenere un'elevata qualità del codice attraverso la generazione di test. AI-assisted Questo modello utilizza i servizi gestiti di AWS per semplificare la creazione di test, migliorare la qualità attraverso l'apprendimento e scalare per soddisfare le esigenze di test in evoluzione.
Prerequisiti e limitazioni
Prerequisiti
Per implementare correttamente questo modello, assicurati che siano presenti i seguenti elementi:
Un account AWS attivo: un account AWS con autorizzazioni per accedere alle funzioni Lambda, richiamare modelli Amazon Bedrock, creare tabelle DynamoDB, gestire pool di utenti Cognito e distribuire agenti Amazon Bedrock. AgentCore
Accesso al modello Amazon Bedrock: Anthropic Claude Sonnet 4 (us.anthropic.claude-sonnet-4-6) abilitato nella tua regione AWS. Per le istruzioni di configurazione, consulta Model Access nella documentazione di Amazon Bedrock.
Un ambiente di sviluppo composto da:
- Python 3.11 o versioni successive
- AWS CLI installato e configurato
- Git
per la clonazione del repository Funzioni AWS Lambda: almeno una funzione Lambda distribuita con codice sorgente accessibile per l'analisi. La funzione deve includere file sorgente (.py, .js, .java, .cs, .rb) nel pacchetto di distribuzione, non solo bytecode compilato.
Runtime Lambda supportati:
- Python 3.x (tutte le versioni)
- Node.js (JavaScript/TypeScript)
- Java 8, 11, 17, 21 (richiede i file sorgente .java nel pacchetto di distribuzione)
- .NET Core/.NET 6+ (C#) (richiede file sorgente .cs nel pacchetto di distribuzione)
- Ruby 2.7, 3.2
Limitazioni
Ciò richiede l'accesso al modello Amazon Bedrock nella regione us-east-1 per Claude Sonnet 4.6. Le funzioni AWS Lambda possono essere presenti in qualsiasi regione.
I dati dei pattern in Amazon DynamoDB scadono dopo 90 giorni (configurabili tramite Time to Live (TTL)) per mantenere la pertinenza e controllare i costi.
Le funzioni Java e C# Lambda devono includere file sorgente (.java, .cs) nei pacchetti di distribuzione. Compiled-only i pacchetti (.class, .dll) non possono essere analizzati.
Il sistema implementa la limitazione della frequenza in memoria per utente (5 richieste ogni 60 secondi). Per le implementazioni distribuite con più AgentCore istanze, la limitazione della velocità dovrebbe essere spostata su DynamoDB o Redis per motivi di coerenza.
Alcuni servizi AWS non sono disponibili in tutte le regioni AWS. Per la disponibilità delle regioni, consulta i servizi AWS per regione
. Per endpoint specifici, consulta la pagina Endpoint e quote del servizio e scegli il link per il servizio.
Versioni del prodotto
Claude Sonnet antropico 4 (us.anthropic.claude-sonnet-4-6)
bedrock-agentcore 1.4.7 o successivo
bedrock-agentcore-starter-toolkit 0.3.3 o successivo
Architecture
Architettura di destinazione
Il diagramma seguente mostra l'architettura e il flusso di lavoro per questo modello:

In questo flusso di lavoro:
L'utente fornisce input: lo sviluppatore interagisce con Streamlit UI (app.py) in esecuzione localmente, fornisce il nome della funzione Lambda, istruzioni personalizzate opzionali per la generazione dei test, un filtro di destinazione per concentrarsi su functions/classes /files specifici e ignora i pattern per escludere file di test o dipendenze.
Autenticazione Cognito: l'applicazione autentica la richiesta con Cognito e restituisce JWT (token) a Streamlit. ID/Access
AgentCore Richiamo API: Streamlit richiama l' AgentCore API con Bearer Token + payload (nome della funzione, filtri, istruzioni, ignora i modelli).
Convalida JWT: AgentCore l'API convalida JWT utilizzando la firma del token Cognito.
Routing delle richieste: l'AgentCore API indirizza la richiesta al flusso di lavoro Lambda Test Generator (Runtime). AgentCore
Richiesta di analisi del codice: Analyzer Agent avvia una richiesta per recuperare il codice e i metadati della funzione Lambda di destinazione.
AWS Authentication for Lambda Access: Boto3 si autentica con AWS utilizzando il ruolo di esecuzione, richiedendo le autorizzazioni di accesso in lettura. AgentCore
Recupero ed elaborazione del codice AWS Lambda: il ruolo IAM autorizza l'accesso e recupera il codice della funzione Lambda come file ZIP, estrae i file sorgente, filtra le dipendenze (node_modules, venv, ecc.) e i file non di codice, applica modelli di ignoramento definiti dall'utente e suddivide il codice in parti gestibili.
Autenticazione Amazon Bedrock: il client Amazon Bedrock Boto3 esegue l'autenticazione con AWS IAM per l'accesso ad Amazon Bedrock, richiedendo l'invocazione delle autorizzazioni del modello per utilizzare Anthropic Claude Sonnet 4.6.
AI-Powered Analisi del codice: il ruolo IAM autorizza e invia blocchi di codice ad Amazon Bedrock (us-east-1) utilizzando Anthropic Claude Sonnet 4 (us.anthropic.claude-sonnet-4-6) con Amazon Bedrock Guardrail applicato per il filtro degli attacchi tempestivi e la sicurezza dei contenuti. Amazon Bedrock esegue un'analisi avanzata Regex + LLM per estrarre dal codice i pattern di input effettivi (ad esempio, event ['body'], headers ['Authorization']), i pattern di output (ad esempio, StatusCode, struttura del corpo della risposta), le dipendenze, i modelli di gestione degli errori e i casi limite.
I risultati dell'analisi sono impacchettati: Analyzer Agent impacchetta i risultati dell'analisi in un AnalysisResult oggetto contenente blocchi di codice, pattern di input, pattern di output, dipendenze, pattern di errore e metadati, quindi li passa al Generator Agent.
Inizia il processo di generazione dei test: Generator Agent riceve i risultati dell'analisi e avvia una richiesta per generare casi di test, interrogando innanzitutto l'archivio di memoria DynamoDB alla ricerca di modelli storici da cui imparare.
Amazon DynamoDB Authentication for Memory Access: il client Boto3 DynamoDB si autentica con AWS IAM per ottenere le autorizzazioni di accesso in lettura per recuperare i pattern memorizzati.
I pattern storici vengono recuperati dal database: il ruolo IAM autorizza e interroga la tabella di archiviazione della memoria DynamoDB (lambda-testcase-memory) per recuperare i pattern precedentemente accettati e i pattern rifiutati (test falliti con motivi di rifiuto) per la specifica funzione Lambda.
Autenticazione Amazon Bedrock per la generazione di test: il client Amazon Bedrock Boto3 si autentica nuovamente con AWS IAM per l'accesso ad Amazon Bedrock per generare casi di test.
Generazione di casi di test AI: il ruolo IAM autorizza e invia i risultati delle analisi combinati con i modelli di memoria ad Amazon Bedrock. Amazon Bedrock genera schemi di test case con eventi di input realistici basati su modelli di codice effettivi, creando test positivi (35%), test negativi (35%) e casi limite (30%). La generazione avviene per blocco in parallelo per garantire l'efficienza, applica i modelli appresi dalla memoria, evita i modelli rifiutati e la generazione di blocchi, se necessario, per basi di codice di grandi dimensioni. Tutte le chiamate converse () di Bedrock includono GuardrailConfig per il rapido filtraggio degli attacchi, la redazione delle informazioni personali e l'imposizione degli argomenti negati.
Inizia la convalida del test: Generator Agent passa i candidati al test case generati al Validator Agent per il controllo di qualità, la deduplicazione e la selezione finale.
Il processo di convalida è configurato: Validator Agent riceve i candidati al test e avvia il processo di convalida, richiedendo l'accesso all'archivio di memoria DynamoDB per il punteggio e la convalida.
Autenticazione DynamoDB per la convalida: il client DynamoDB Boto3 si autentica con AWS IAM per l'accesso in lettura ai pattern di memoria delle query per il calcolo dei punteggi di convalida.
La qualità dei test viene valutata: il ruolo IAM autorizza e utilizza l'archivio di memoria DynamoDB per valutare i casi di test in base alle percentuali di successo dei pattern precedenti, alla copertura delle funzioni e alla complessità del codice. Validator esegue la convalida strutturale, la deduplicazione mediante pattern hashing, l'assegnazione di punteggi di qualità con sicurezza per le funzioni di gestione e la gestione degli errori, la selezione della diversità per coprire diversi blocchi e tipi di test e seleziona i primi N casi di test più diversi e di più alta qualità.
Casi di test finali restituiti a AgentCore: Validator Agent restituisce i test case convalidati finali con metadati (punteggi di confidenza, descrizioni, eventi di input, categorie) all'orchestrator principale, che li formatta e li restituisce all' AgentCore API Amazon Bedrock
Risultati inviati all'interfaccia utente: l' AgentCore API restituisce i test generati all'interfaccia utente di Streamlit per la visualizzazione con il riepilogo dell'analisi, i metadati di generazione e i dettagli del test case.
Esamina gli utenti e fornisce feedback: lo sviluppatore esamina i casi di test visualizzati nell'interfaccia utente di Streamlit, valuta ogni test per qualità e pertinenza, accetta casi di test validi o rifiuta quelli scadenti con motivi di rifiuto specifici (missing_auth_headers, wrong_status_code, unrealistic_data, missing_required_fields, incorrect_event_source, ecc.) e note personalizzate opzionali che spiegano il rifiuto, quindi subemette un feedback.
Il feedback viene inviato al sistema: Streamlit UI invia il feedback raccolto (accepted/rejected stato, motivi del rifiuto, note personalizzate) all' AgentCore API (save_feedback).
AgentCore indirizza il feedback: AgentCore l'API chiama l'agente Validator che contiene la logica per archiviare il feedback in DynamoDB.
Inizia il processo di archiviazione del feedback: Validator Agent avvia il processo di archiviazione del feedback.
L'accesso in scrittura di DynamoDB è autenticato: il client Boto3 DynamoDB si autentica con AWS IAM (ruolo di AgentCore esecuzione) per ottenere le autorizzazioni di accesso in scrittura per memorizzare i modelli di feedback.
I modelli di apprendimento vengono archiviati: il ruolo IAM autorizza e memorizza il feedback degli utenti nella tabella di memoria di DynamoDB. Ogni modello viene archiviato con una chiave di partizione composita (function_name #target_function o function_name #GLOBAL), una chiave di ordinamento composita (FEEDBACK# accepted/rejected #PATTERN #hash), un pattern hash per la deduplicazione, il tipo di test, la struttura del modello di input, lo stato del feedback, il motivo del rifiuto (se rifiutato), note personalizzate, conteggio degli utilizzi, percentuale di successo, timestamp e TTL di 90 giorni per la pulizia automatica. Questi dati memorizzati consentono al sistema di apprendere dal feedback degli utenti e migliorare la generazione futura dei test.
Automazione e scalabilità
Questo modello si ridimensiona automaticamente utilizzando i servizi gestiti di AWS. Amazon Bedrock gestisce l'inferenza AI su richiesta con una finestra di contesto di 200.000 token e un output di 64.000 token per chiamata, mentre Amazon DynamoDB utilizza la fatturazione su richiesta che si adatta automaticamente ai modelli di traffico. Il sistema utilizza l'elaborazione parallela per aumentare la velocità, Analyzer Agent effettua 5 chiamate Bedrock simultanee per analizzare blocchi di codice (ThreadPoolExecutor con max_workers=5), mentre Generator Agent elabora i blocchi in parallelo con 5 lavoratori simultanei. Un meccanismo di continuazione gestisce le risposte incomplete riprovando automaticamente le richieste. La limitazione della velocità (5 richieste ogni 60 secondi per utente) previene l'abuso dei costi dovuto a chiamate eccessive alle API Bedrock.
L'ottimizzazione dei costi include la TTL-based pulizia che rimuove i pattern più vecchi di 90 giorni, le query a chiave composita con begins_with () per ricerche istantanee senza scansioni delle tabelle e BatchWriteItem le operazioni che riducono le operazioni di scrittura di DynamoDB di circa il 90%. Le prestazioni dipendono dalle dimensioni della funzione, le funzioni piccole (meno di 10 file) generano 10 casi di test in 30-60 secondi, le funzioni medie (10-50 file) richiedono 1-3 minuti e le funzioni grandi (oltre 50 file) richiedono 3-5 minuti, sebbene l'utilizzo di filtri di destinazione per concentrarsi su sezioni di codice specifiche riduca i tempi del 50-70%.
Tools (Strumenti)
Servizi AWS
Amazon Bedrock
: fornisce funzionalità di intelligenza artificiale generativa tramite Anthropic Claude Sonnet 4 per l'analisi del codice, la generazione di test, la convalida e il riepilogo del rifiuto. Utilizza sempre la regione us-east-1 per l'accesso ai modelli. Amazon Bedrock AgentCore : fornisce un runtime di agenti serverless per la distribuzione e l'hosting del backend di generazione di test con scalabilità, autorizzazione e osservabilità automatiche. OAuth-based CloudWatch
Amazon Bedrock Guardrails
: fornisce filtri di ML-based sicurezza su tutte le chiamate API Bedrock, incluso il rilevamento tempestivo degli attacchi (HIGH strength), il filtraggio dei contenuti, l'anonimizzazione delle PII (email, telefono, nome), il blocco dei keys/private keys/JWT token di accesso AWS e l'applicazione negata degli argomenti (generazione di codice exploit, output di codice sorgente non elaborato). Distribuito tramite. CloudFormation AWS CloudFormation
: automatizza il provisioning completo dell'infrastruttura, tra cui tabella DynamoDB, Cognito User Pool, Amazon Bedrock Guardrail con controllo delle versioni e ruolo di esecuzione IAM per. AgentCore Amazon Cognito: fornisce l'autenticazione degli utenti con registrazione tramite e-mail, emissione di token JWT e autorizzazione API sicura per il backend. AgentCore
Amazon DynamoDB
: memorizza i modelli di test accettati e rifiutati con statistiche di utilizzo per l'apprendimento e il miglioramento continui. Utilizza chiavi composite (function_target, pattern_sk) per query a scansione zero e archiviazione di pattern specifici per la destinazione. AWS Lambda
: fonte del codice funzionale per l'analisi, l'API recupera codice e configurazione. GetFunction Lo strumento supporta i runtime Python, Java Node.js, .NET e Ruby.
Altri strumenti
Python 3.11+
— Ambiente di runtime per l'orchestrazione di applicazioni e agenti. Streamlit
: interfaccia Web-based utente per l'autenticazione, la generazione di test, la raccolta di feedback e il monitoraggio dello stato del sistema. Boto3 — SDK AWS per Python per interagire con i servizi Lambda, Amazon Bedrock, DynamoDB e Cognito.
Repository di codice
Il codice per questo pattern è disponibile in Github - Lambda Test Event Generator.
Best practice
Questo modello implementa le seguenti best practice:
Utilizza politiche IAM con privilegi minimi per l'accesso ad AWS Lambda (sola lettura), Amazon Bedrock (invoke), Amazon DynamoDB () e Amazon Cognito (autenticazione). query/write
Implementa l'apprendimento di modelli specifici per obiettivi con fallback globale per una maggiore precisione dei test.
Abilita DynamoDB TTL per la pulizia automatica dei vecchi pattern (90 giorni) per controllare i costi di archiviazione.
Usa le query zero-scan con tasti compositi (function_target, pattern_sk) per un rapido recupero dei pattern.
Applica i pattern di ignoramento per escludere dall'analisi file di test, dipendenze e file non di codice.
Usa la suddivisione in più lingue del codice con l'analisi Abstract Syntax Tree (AST) (Python) e i pattern regex (Java, C#, JS, Ruby).
Memorizza i modelli con valori effettivi (non solo con la struttura) per una vera deduplicazione.
Implementa il backend su Amazon Bedrock AgentCore per scalabilità senza server e infrastruttura gestita.
Autentica gli utenti tramite Amazon Cognito con la convalida del token JWT su ogni richiesta API.
Applica Amazon Bedrock Guardrails a tutte le chiamate converse () per filtrare tempestivamente gli attacchi, cancellare le informazioni personali, bloccare i dati sensibili (chiavi AWS, chiavi private, JWT) e imporre argomenti negati.
Pulisci i risultati delle analisi prima di restituirli agli utenti: tutti i frammenti di codice sorgente non elaborato vengono rimossi dalle risposte, assicurando che il codice sorgente Lambda non esca mai dai limiti di runtime. AgentCore
Convalida tutti gli input dell'API con modelli regex e limiti di lunghezza (nome della funzione max 170 caratteri, istruzioni personalizzate max 2000 caratteri, max 50 pattern di ignoramento) per prevenire iniezioni e abusi.
Implementa la limitazione della frequenza per utente (5 richieste ogni 60 secondi) per prevenire l'abuso dei costi dovuto a chiamate eccessive alle API Bedrock.
Pulisci i messaggi di errore prima di restituirli agli utenti: i percorsi interni dei file, i dettagli dell'SDK AWS e le informazioni sull'infrastruttura non vengono mai esposti nelle risposte agli errori.
Considera le seguenti best practice aggiuntive:
Fornisci motivi di feedback specifici quando rifiuti i casi di test per migliorare l'accuratezza dell'apprendimento.
Genera test in modo iterativo (2-3 volte) per la stessa funzione per consentire al sistema di apprendere e migliorare.
Fornisci istruzioni personalizzate quando hai bisogno di scenari di test o formati di dati specifici.
Abilita IAM Access Analyzer per monitorare le autorizzazioni delle risorse e identificare gli accessi non intenzionali.
Inizia con piccole funzioni Lambda per comprendere il sistema prima di analizzare basi di codice di grandi dimensioni.
Rivedi regolarmente le policy IAM e rimuovi le autorizzazioni non utilizzate.
Utilizza politiche di password complesse e abilita Cognito AdvancedSecurityMode per il rilevamento delle minacce.
Epiche
| Operazione | Description | Competenze richieste |
|---|---|---|
Clonare il repository. | Clona il GitHub repository sul tuo sistema locale e vai alla directory del progetto:
Questo repository contiene l'applicazione Python, il CloudFormation modello e i file di configurazione. | Sviluppatore di app |
Configura le credenziali AWS. | Configura le tue credenziali AWS per consentire all'AWS CLI di interagire con il tuo account AWS e per consentire all'applicazione di accedere alle funzioni Lambda che desideri testare. Puoi farlo usando il comando di configurazione AWS CLI:
Quando viene richiesto, fornire le seguenti informazioni:
| Sviluppatore di app |
| Operazione | Description | Competenze richieste |
|---|---|---|
Implementa l'infrastruttura utilizzando CloudFormation. |
Cosa viene creato:
NotaLo stack crea tutte le risorse necessarie. Assicurati che il CloudFormation modello sia completato correttamente prima di procedere alla fase successiva. | Sviluppatore di app |
Esporta le variabili di configurazione. | Esporta tutti i valori dagli output CloudFormation dello stack come variabili di ambiente:
Queste variabili vengono utilizzate nei passaggi successivi per la AgentCore configurazione e la creazione di file .env. | Amministratore AWS |
| Operazione | Description | Competenze richieste |
|---|---|---|
Crea un ambiente virtuale. |
| Sviluppatore di app |
Configurazione e distribuzione. AgentCore |
| Sviluppatore di app |
Crea un file .env per lo sviluppo locale. | Crea un file .env nella directory principale del progetto con tutti i valori di configurazione:
Verifica la connettività ai servizi AWS:
Entrambi i comandi dovrebbero restituire risposte corrette. Se riscontri errori di autorizzazione, verifica che le policy IAM siano configurate correttamente. | Sviluppatore di app |
| Operazione | Description | Competenze richieste |
|---|---|---|
Crea un nuovo utente Cognito. | Il pool di utenti Cognito è configurato con la creazione di utenti solo come amministratore per motivi di sicurezza, quindi gli utenti non possono registrarsi automaticamente. Crea un utente tramite l'interfaccia a riga di comando di AWS utilizzando l'ID del pool di Cognito e l'ID client esportati dagli output dello stack. CloudFormation Crea un nuovo utente (sostituiscilo
Imposta una password permanente (minimo 8 caratteri, deve includere lettere maiuscole, minuscole e un numero):
Usa queste credenziali per accedere tramite l'interfaccia utente di Streamlit nel passaggio successivo. | Sviluppatore di app |
| Operazione | Description | Competenze richieste |
|---|---|---|
Avvia l'interfaccia utente Streamlit. | Avvia l'applicazione:
L'interfaccia utente si aprirà nel browser predefinito all'indirizzo Accedi con le credenziali create nel passaggio precedente | Sviluppatore di app |
Configura le opzioni di generazione | Nell'interfaccia utente, configura le seguenti opzioni:
| Sviluppatore di app |
Genera casi di test. | Fai clic sul pulsante «Genera casi di test». Il sistema consentirà di:
| Sviluppatore di app |
Rivedi i test generati. | Esamina ogni test case generato, che include:
| DevOps ingegnere, sviluppatore di app |
Fornisci feedback. | Per ogni test case, fornisci un feedback: Per accettare un test case:
Per rifiutare un test case:
| Tecnico collaudatore |
Salva il feedback in memoria. | Dopo aver esaminato tutti i casi di test:
| Tecnico collaudatore |
Iterate per migliorare. | Genera test altre 2-3 volte per la stessa funzione per migliorare la qualità:
NotaIl sistema di apprendimento diventa più efficace con un uso ripetuto. Ogni ciclo di feedback aiuta l'IA a comprendere le tue preferenze di test e a generare casi di test più pertinenti per le tue funzioni Lambda. | Sviluppatore di app |
| Operazione | Description | Competenze richieste |
|---|---|---|
Richiama direttamente AgentCore l'API. | Per l'automazione e l'integrazione, richiama il AgentCore backend direttamente utilizzando le chiamate API con l'autenticazione Cognito. Ottieni un token Cognito:
Richiama la generazione del test:
O usando curl:
| Sviluppatore di app |
| Operazione | Description | Competenze richieste |
|---|---|---|
Monitora i modelli DynamoDB e tieni traccia dei costi. |
NotaIl monitoraggio regolare aiuta a identificare le opportunità di ottimizzazione dei costi e garantisce che il sistema continui a imparare in modo efficace. La configurazione TTL sulla tabella DynamoDB elimina automaticamente i vecchi schemi, aiutando a gestire i costi di storage nel tempo. | Amministratore AWS |
| Operazione | Description | Competenze richieste |
|---|---|---|
Eliminare le risorse distribuite. | Per rimuovere tutte le risorse distribuite: Eliminare l' AgentCore agente:
Elimina lo CloudFormation stack (elimina la tabella DynamoDB, il pool di utenti Cognito e il ruolo IAM):
| Amministratore AWS |
Risoluzione dei problemi
| Problema | Soluzione |
|---|---|
Errore «Accesso negato» durante il recupero del codice Lambda |
|
«Errori di scrittura in DynamoDB» |
|
Nessun caso di test generato | Possibili cause e soluzioni:
|
Java/C# Lambda mostra «Nessun codice sorgente trovato» | Java e C# Lambdas richiedono i file sorgente nel pacchetto di distribuzione: Java (Maven):
C# (.NET):
|
Errori di scrittura in DynamoDB |
|
Generazione lenta dei test | Ottimizza la velocità di generazione:
|
AgentCore: «Agente non trovato» | Verifica che l'agente sia installato:
|
AgentCore: «Autorizzazione negata» in fase di esecuzione | Verifica che il ruolo di esecuzione abbia le politiche corrette:
|
Cognito: «Nome utente o password non validi» | Verifica che le tue credenziali siano corrette. Puoi creare un nuovo utente utilizzando il flusso «Crea account» dell'interfaccia utente di Streamlit o tramite l'interfaccia a riga di comando di AWS:
|
Avviso «Bedrock Guardrail non configurato» nei log | Le variabili di verifica Controlla gli CloudFormation output:
|
Errore «Limite di frequenza superato» | Il sistema limita a 5 richieste ogni 60 secondi per utente. Attendi il tempo indicato prima di riprovare. Per l'uso in produzione con esigenze di produttività più elevate, aggiustate |
Risorse correlate
Documentazione AWS