AWS ha introdotto due strumenti significativi nel secondo semestre del 2026 che stanno rivoluzionando lo sviluppo degli agenti su Bedrock: l'AWS Strands Agents SDK, ora alla versione 1.59.0, e il nuovo modello open-weight Strands Decider 2B, rilasciato il 1° ottobre 2026. Questi strumenti, sebbene non abbiano ricevuto molta copertura mainstream, stanno guadagnando popolarità tra gli sviluppatori, con "strands sdk" che registra circa 1.000 ricerche mensili negli Stati Uniti e il repository GitHub del core SDK che ha superato gli 8.800 stelle.

Cos'è l'AWS Strands Agents SDK e perché è importante ora

Strands Agents è il framework open-source di AWS per la creazione di agenti AI in Python e TypeScript. Lanciato in anteprima a maggio 2025, ha raggiunto una versione 1.0 pronta per la produzione due mesi dopo, con oltre 2.000 stelle su GitHub e 150.000 download da PyPI in quel periodo iniziale. Entro ottobre 2026, il progetto aveva superato gli 8.800 stelle nel suo repository principale sdk-python, e AWS aveva aggiunto un SDK di livello superiore chiamato "Harness SDK", accessibile tramite una singola chiamata `create_harness()` per le squadre che desiderano un agente pre-ottimizzato.

Il concetto è semplice: definisci un prompt di sistema, un set di funzioni Python decorate come strumenti e un provider di modelli, poi lascia che Strands esegua il loop dell'agente. Questo loop (chiamare il modello, analizzare le chiamate degli strumenti, eseguire gli strumenti, reimmetttere i risultati, ripetere) è lo stesso schema che ogni framework di agenti implementa, ma Strands lo mantiene insolitamente sottile e agnostico rispetto al modello. L'SDK include supporto integrato per Amazon Bedrock, Anthropic, OpenAI (inclusa l'API Responses), Google Gemini, Cohere, Mistral AI, Ollama, llama.cpp, LiteLLM, SageMaker e Writer, ciascuno dietro la propria classe provider, rendendo facile passare da un modello Claude a un checkpoint Llama self-hosted con una sola riga di codice.

Ci sono anche motivi strutturali per cui Strands è cresciuto così tanto. La maggior parte dei framework di agenti sceglie una parte presto: alcuni ti bloccano in un singolo fornitore di modelli, altri ottimizzano per la complessità del flusso di lavoro basato su grafici a scapito di una curva di apprendimento ripida. Strands cerca di rimanere neutrale su entrambi. La classe Agent principale non si cura se il modello sottostante è un modello Nova ospitato su Bedrock, un checkpoint Llama self-hosted dietro Ollama o un'API di frontiera da Anthropic o OpenAI.

Incontra Strands Decider 2B: Un Modello Costruito per Prendere Decisioni, Non Saggi

Strands Decider 2B è un modello open-weight progettato specificamente per prendere decisioni rapide e piccole che un agente deve fare dozzine di volte per compito. Con un tempo di decisione di 115 millisecondi, è ottimizzato per l'efficienza e la velocità, rendendolo ideale per l'integrazione con l'AWS Strands Agents SDK.

Prerequisiti: Versioni, Account e Strumenti di cui hai bisogno prima

Prima di iniziare, assicurati di avere i seguenti prerequisiti:

    • Python 3.9 o superiore
    • Un account AWS con accesso a Bedrock
    • AWS CLI configurato
    • Git
    • Docker (opzionale, per il deployment)

Passaggio 1: Crea e Attiva un Ambiente Virtuale Python Pulito

Apri il tuo terminale e crea un nuovo ambiente virtuale Python:

```bash

python -m venv strands-env

source strands-env/bin/activate

```

Passaggio 2: Installa l'AWS Strands Agents SDK e il Pacchetto degli Strumenti Companion

Con l'ambiente virtuale attivato, installa l'SDK e il pacchetto degli strumenti companion:

```bash

pip install strands-agents-sdk strands-tools

```

Passaggio 3: Configura le Credenziali AWS per l'Accesso a Bedrock

Configura le tue credenziali AWS utilizzando l'AWS CLI:

```bash

aws configure

```

Inserisci le tue credenziali AWS quando richiesto.

Passaggio 4: Scegli e Configura il Tuo Provider di Modelli

Strands Agents SDK supporta una vasta gamma di provider di modelli. Scegli quello che preferisci e configuralo. Ad esempio, per utilizzare Amazon Bedrock:

```python

from strands_agents import BedrockProvider

provider = BedrockProvider(model_id="anthropic.claude-v2")

```

Passaggio 5: Scrivi ed Esegui il Tuo Primo Agente Strands

Crea un nuovo file Python e scrivi il tuo primo agente Strands:

```python

from strands_agents import Agent

agent = Agent(system_prompt="Sei un assistente utile.", provider=provider)

response = agent.run("Ciao, come stai?")

print(response)

```

Passaggio 6: Allegare Strumenti Personalizzati con il Decoratore @tool

Puoi allegare strumenti personalizzati al tuo agente utilizzando il decoratore @tool:

```python

from strands_agents import tool

@tool

def get_weather(location):

return f"Il meteo a {location} è soleggiato."

agent = Agent(systemprompt="Sei un assistente utile.", provider=provider, tools=[getweather])

response = agent.run("Qual è il meteo a New York?")

print(response)

```

Passaggio 7: Installa ed Esegui Strands Decider 2B in Locale

Per eseguire Strands Decider 2B in locale, segui questi passaggi:

```bash

git clone https://github.com/aws/strands-decider-2b.git

cd strands-decider-2b

pip install -r requirements.txt

python decider.py

```

Passaggio 8: Inoltra le Decisioni dell'Agente Attraverso Strands Decider

Configura il tuo agente per utilizzare Strands Decider per le decisioni:

```python

from strands_agents import Decider

decider = Decider()

agent = Agent(system_prompt="Sei un assistente utile.", provider=provider, decider=decider)

```

Passaggio 9: Trasmettere le Risposte dell'Agente in Tempo Reale

Per trasmettere le risposte dell'agente in tempo reale, puoi utilizzare il seguente codice:

```python

for chunk in agent.stream("Qual è il meteo a New York?"):

print(chunk, end="", flush=True)

```

Passaggio 10: Scambia i Provider di Modelli Senza Riscrivere il Tuo Agente

Uno dei vantaggi di Strands Agents SDK è la possibilità di scambiare i provider di modelli senza dover riscrivere il tuo agente. Ad esempio, per passare da Amazon Bedrock a Ollama:

```python

from strands_agents import OllamaProvider

provider = OllamaProvider(model_name="llama2")

agent = Agent(system_prompt="Sei un assistente utile.", provider=provider)

```

Passaggio 11: Costruisci un Progetto Completamente Funzionante, un Agente Assistente di Ricerca

Per costruire un progetto completamente funzionante, come un agente assistente di ricerca, segui questi passaggi:

    • Definisci il prompt di sistema
    • Allega strumenti personalizzati
    • Configura il provider di modelli
    • Esegui l'agente

Passaggio 12: Distribuisci l'Agente su AWS Lambda

Per distribuire il tuo agente su AWS Lambda, segui questi passaggi:

    • Crea una funzione Lambda
    • Configura le autorizzazioni
    • Carica il codice dell'agente
    • Testa la funzione Lambda

Passaggio 13: Distribuisci su Scala con Amazon Bedrock AgentCore

Per distribuire il tuo agente su scala con Amazon Bedrock AgentCore, segui questi passaggi:

    • Crea un agente AgentCore
    • Configura le autorizzazioni
    • Carica il codice dell'agente
    • Testa l'agente AgentCore

Proteggi il Tuo Agente Strands: Ambito IAM e Gestione delle Credenziali

Per proteggere il tuo agente Strands, assicurati di configurare correttamente l'ambito IAM e la gestione delle credenziali. Utilizza le politiche IAM per limitare l'accesso alle risorse necessarie e gestisci le credenziali in modo sicuro.

Pitfalls Comuni Durante la Configurazione degli Agenti Strands

Ecco alcuni pitfalls comuni da evitare durante la configurazione degli agenti Strands:

    • Non configurare correttamente le credenziali AWS
    • Utilizzare versioni obsolete dell'SDK
    • Non allegare strumenti personalizzati correttamente
    • Non gestire le credenziali in modo sicuro

Guida alla Risoluzione dei Problemi: Errori che Probabilmente Incontrerai e Come Risolverli

Ecco alcuni errori comuni e come risolverli:

    • Errore di autenticazione: Assicurati di aver configurato correttamente le credenziali AWS.
    • Errore di versione: Assicurati di utilizzare la versione più recente dell'SDK.
    • Errore di strumento: Verifica che gli strumenti siano allegati correttamente.

Consigli Avanzati: Orchestrazione Multi-Agente e Osservabilità

Per orchestrare più agenti e migliorare l'osservabilità, considera l'uso di strumenti come AWS Step Functions e Amazon CloudWatch.

Strands Agents SDK vs Altri Framework di Agenti

Ecco un confronto tra Strands Agents SDK e altri framework di agenti:

    • LangChain: Offre una vasta gamma di funzionalità ma può essere complesso.
    • CrewAI: Semplice da usare ma limitato in termini di flessibilità.
    • Claude Agent SDK: Potente ma legato a un singolo fornitore di modelli.

Dove Strands e Decider Si Inseriscono nei Pipeline di Agenti Reali

Strands e Decider si inseriscono nei pipeline di agenti reali fornendo un framework flessibile e potente per la creazione di agenti AI. Possono essere utilizzati per una vasta gamma di applicazioni, dalla ricerca assistita alla gestione dei progetti.

Domande Frequenti

L'AWS Strands Agents SDK è gratuito da usare?

Sì, l'AWS Strands Agents SDK è open-source e gratuito da usare.

Ho bisogno di un account AWS per usare Strands Agents?

Sì, è necessario un account AWS per utilizzare Strands Agents, specialmente per l'accesso a Bedrock.

Qual è la differenza tra Strands Agents e Strands Decider?

Strands Agents è un framework per la creazione di agenti AI, mentre Strands Decider è un modello progettato specificamente per prendere decisioni rapide e piccole.

Strands Decider può essere eseguito su un laptop senza GPU?

Sì, Strands Decider può essere eseguito su un laptop senza GPU, anche se potrebbe essere più lento.

Strands Agents supporta TypeScript o solo Python?

Strands Agents supporta sia Python che TypeScript.

Come è diverso dall'uso diretto dell'API Bedrock?

Strands Agents fornisce un framework più alto livello per la creazione di agenti AI, rendendo più facile l'integrazione di modelli e strumenti.

Cosa è successo alla vecchia anteprima degli agenti Strands del 2025?

L'anteprima degli agenti Strands del 2025 è stata sostituita dalla versione 1.0 pronta per la produzione.

Bedrock AgentCore è necessario per distribuire un agente Strands?

No, Bedrock AgentCore non è necessario, ma fornisce un modo gestito per distribuire agenti su scala.