Loading...
    • Guida per sviluppatori
    • Riferimento API
    • MCP
    • Risorse
    • Note di rilascio
    Search...
    ⌘K
    Primi passi
    Introduzione a ClaudeAvvio rapido
    Modelli e prezzi
    Panoramica dei modelliScelta di un modelloNovità in Claude 4.5Migrazione a Claude 4.5Deprecazioni dei modelliPrezzi
    Costruisci con Claude
    Panoramica delle funzionalitàUtilizzo dell'API MessagesFinestre di contestoBest practice per i prompt
    Capacità
    Prompt cachingModifica del contestoExtended thinkingSforzoStreaming di messaggiElaborazione batchCitazioniSupporto multilingueConteggio dei tokenEmbeddingsVisioneSupporto PDFAPI FilesRisultati di ricercaOutput strutturatiComponente aggiuntivo Google Sheets
    Strumenti
    PanoramicaCome implementare l'uso degli strumentiUso efficiente dei token con gli strumentiStreaming granulare degli strumentiStrumento BashStrumento di esecuzione del codiceChiamata programmatica degli strumentiStrumento Computer useStrumento Editor di testoStrumento Web fetchStrumento Web searchStrumento MemoryStrumento Tool search
    Agent Skills
    PanoramicaAvvio rapidoBest practiceUtilizzo di Skills con l'API
    Agent SDK
    PanoramicaTypeScript SDKPython SDKGuida alla migrazione
    Guide
    Streaming InputGestione dei permessiGestione delle sessioniOutput strutturati nell'SDKHosting dell'Agent SDKModifica dei prompt di sistemaMCP nell'SDKStrumenti personalizzatiSubagent nell'SDKSlash Commands nell'SDKAgent Skills nell'SDKTracciamento dei costi e dell'utilizzoElenchi di attivitàPlugin nell'SDK
    MCP nell'API
    Connettore MCPServer MCP remoti
    Claude su piattaforme di terze parti
    Amazon BedrockMicrosoft FoundryVertex AI
    Prompt engineering
    PanoramicaGeneratore di promptUsa modelli di promptMiglioratore di promptSii chiaro e direttoUsa esempi (multishot prompting)Lascia che Claude pensi (CoT)Usa tag XMLDai a Claude un ruolo (prompt di sistema)Precompila la risposta di ClaudeConcatena prompt complessiSuggerimenti per il contesto lungoSuggerimenti per extended thinking
    Test e valutazione
    Definisci i criteri di successoSviluppa casi di testUtilizzo dello strumento di valutazioneRiduzione della latenza
    Rafforza i guardrail
    Riduci le allucinazioniAumenta la coerenza dell'outputMitiga i jailbreakStreaming dei rifiutiRiduci la perdita di promptMantieni Claude nel personaggio
    Amministrazione e monitoraggio
    Panoramica dell'Admin APIAPI di utilizzo e costiAPI Claude Code Analytics
    Console
    Log in
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...

    Solutions

    • AI agents
    • Code modernization
    • Coding
    • Customer support
    • Education
    • Financial services
    • Government
    • Life sciences

    Partners

    • Amazon Bedrock
    • Google Cloud's Vertex AI

    Learn

    • Blog
    • Catalog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Company

    • Anthropic
    • Careers
    • Economic Futures
    • Research
    • News
    • Responsible Scaling Policy
    • Security and compliance
    • Transparency

    Learn

    • Blog
    • Catalog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Help and security

    • Availability
    • Status
    • Support
    • Discord

    Terms and policies

    • Privacy policy
    • Responsible disclosure policy
    • Terms of service: Commercial
    • Terms of service: Consumer
    • Usage policy
    Guide

    Input in Streaming

    Comprendere le due modalità di input per Claude Agent SDK e quando utilizzare ciascuna

    Panoramica

    Il Claude Agent SDK supporta due modalità di input distinte per interagire con gli agenti:

    • Modalità Input in Streaming (Predefinita e Consigliata) - Una sessione persistente e interattiva
    • Input Messaggio Singolo - Query one-shot che utilizzano lo stato della sessione e la ripresa

    Questa guida spiega le differenze, i vantaggi e i casi d'uso per ciascuna modalità per aiutarti a scegliere l'approccio giusto per la tua applicazione.

    Modalità Input in Streaming (Consigliata)

    La modalità input in streaming è il modo preferito per utilizzare il Claude Agent SDK. Fornisce accesso completo alle capacità dell'agente e abilita esperienze ricche e interattive.

    Consente all'agente di operare come un processo di lunga durata che riceve input dell'utente, gestisce interruzioni, presenta richieste di permesso e gestisce la gestione delle sessioni.

    Come Funziona

    Vantaggi

    Caricamento Immagini

    Allega immagini direttamente ai messaggi per analisi visiva e comprensione

    Messaggi in Coda

    Invia più messaggi che si elaborano sequenzialmente, con possibilità di interrompere

    Integrazione Strumenti

    Accesso completo a tutti gli strumenti e server MCP personalizzati durante la sessione

    Supporto Hook

    Utilizza hook del ciclo di vita per personalizzare il comportamento in vari punti

    Feedback in Tempo Reale

    Vedi le risposte mentre vengono generate, non solo i risultati finali

    Persistenza del Contesto

    Mantieni il contesto della conversazione attraverso più turni naturalmente

    Esempio di Implementazione

    import { query } from "@anthropic-ai/claude-agent-sdk";
    import { readFileSync } from "fs";
    
    async function* generateMessages() {
      // Primo messaggio
      yield {
        type: "user" as const,
        message: {
          role: "user" as const,
          content: "Analizza questo codebase per problemi di sicurezza"
        }
      };
      
      // Aspetta condizioni o input dell'utente
      await new Promise(resolve => setTimeout(resolve, 2000));
      
      // Seguito con immagine
      yield {
        type: "user" as const,
        message: {
          role: "user" as const,
          content: [
            {
              type: "text",
              text: "Rivedi questo diagramma dell'architettura"
            },
            {
              type: "image",
              source: {
                type: "base64",
                media_type: "image/png",
                data: readFileSync("diagram.png", "base64")
              }
            }
          ]
        }
      };
    }
    
    // Elabora risposte in streaming
    for await (const message of query({
      prompt: generateMessages(),
      options: {
        maxTurns: 10,
        allowedTools: ["Read", "Grep"]
      }
    })) {
      if (message.type === "result") {
        console.log(message.result);
      }
    }

    Input Messaggio Singolo

    L'input messaggio singolo è più semplice ma più limitato.

    Quando Utilizzare l'Input Messaggio Singolo

    Utilizza l'input messaggio singolo quando:

    • Hai bisogno di una risposta one-shot
    • Non hai bisogno di allegati immagine, hook, ecc.
    • Devi operare in un ambiente stateless, come una funzione lambda

    Limitazioni

    La modalità input messaggio singolo non supporta:

    • Allegati immagine diretti nei messaggi
    • Accodamento dinamico dei messaggi
    • Interruzione in tempo reale
    • Integrazione hook
    • Conversazioni multi-turno naturali

    Esempio di Implementazione

    import { query } from "@anthropic-ai/claude-agent-sdk";
    
    // Query one-shot semplice
    for await (const message of query({
      prompt: "Spiega il flusso di autenticazione",
      options: {
        maxTurns: 1,
        allowedTools: ["Read", "Grep"]
      }
    })) {
      if (message.type === "result") {
        console.log(message.result);
      }
    }
    
    // Continua conversazione con gestione sessione
    for await (const message of query({
      prompt: "Ora spiega il processo di autorizzazione",
      options: {
        continue: true,
        maxTurns: 1
      }
    })) {
      if (message.type === "result") {
        console.log(message.result);
      }
    }
    • Panoramica
    • Modalità Input in Streaming (Consigliata)
    • Come Funziona
    • Vantaggi
    • Esempio di Implementazione
    • Input Messaggio Singolo
    • Quando Utilizzare l'Input Messaggio Singolo
    • Limitazioni
    • Esempio di Implementazione