Loading...
  • Costruisci
  • Amministrazione
  • Modelli e prezzi
  • Client SDK
  • Riferimento API
Search...
⌘K
Log in
Rifiuti in streaming
Loading...
Loading...
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
  • 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
  • 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
Costruisci/Capacità del modello

Rifiuti in streaming

Scopri come gestire i rifiuti in streaming dalle API di Claude, incluso il rilevamento del stop_reason 'refusal' e le migliori pratiche per il ripristino del contesto.

A partire dai modelli Claude 4, le risposte in streaming dall'API di Claude restituiscono stop_reason: "refusal" quando i classificatori di streaming intervengono per gestire potenziali violazioni delle politiche. Questa nuova funzione di sicurezza aiuta a mantenere la conformità dei contenuti durante lo streaming in tempo reale.

Per ulteriori informazioni sui rifiuti attivati dai filtri di sicurezza dell'API per Claude Sonnet 4.5, consulta Understanding Sonnet 4.5's API Safety Filters.

Formato della risposta API

Quando i classificatori di streaming rilevano contenuti che violano le politiche di Anthropic, l'API restituisce questa risposta:

{
  "role": "assistant",
  "content": [
    {
      "type": "text",
      "text": "Hello.."
    }
  ],
  "stop_reason": "refusal"
}

Nessun messaggio di rifiuto aggiuntivo è incluso. Devi gestire la risposta e fornire messaggi appropriati rivolti all'utente.

Ripristina il contesto dopo il rifiuto

Quando ricevi stop_reason: refusal, devi ripristinare il contesto della conversazione rimuovendo o aggiornando il turno che è stato rifiutato prima di continuare. Il tentativo di continuare senza ripristinare comporterà rifiuti continui.

Le metriche di utilizzo sono ancora fornite nella risposta per scopi di fatturazione, anche quando la risposta è rifiutata.

Ti verrà addebitato per i token di output fino al rifiuto.

Se incontri frequentemente motivi di stop refusal mentre utilizzi Claude Sonnet 4.5 o Opus 4.1, puoi provare ad aggiornare le tue chiamate API per utilizzare Haiku 4.5 (claude-haiku-4-5-20251001), che ha diverse restrizioni di utilizzo. Scopri di più su understanding Sonnet 4.5's API safety filters.

Guida all'implementazione

Ecco come rilevare e gestire i rifiuti in streaming nella tua applicazione:

client = anthropic.Anthropic()
messages = []


def reset_conversation():
    """Reset conversation context after refusal"""
    global messages
    messages = []
    print("Conversation reset due to refusal")


try:
    with client.messages.stream(
        max_tokens=1024,
        messages=messages + [{"role": "user", "content": "Hello"}],
        model="claude-sonnet-4-6",
    ) as stream:
        for event in stream:
            # Check for refusal in message delta
            if hasattr(event, "type") and event.type == "message_delta":
                if event.delta.stop_reason == "refusal":
                    reset_conversation()
                    break
except Exception as e:
    print(f"Error: {e}")

Tipi di rifiuto attuali

L'API attualmente gestisce i rifiuti in tre modi diversi:

Tipo di rifiutoFormato della rispostaQuando si verifica
Rifiuti del classificatore di streamingstop_reason: refusalDurante lo streaming quando il contenuto viola le politiche
Validazione dell'input API e del copyrightCodici di errore 400Quando l'input non supera i controlli di validazione
Rifiuti generati dal modelloRisposte di testo standardQuando il modello stesso decide di rifiutare

Le versioni future dell'API espanderanno il modello stop_reason: refusal per unificare la gestione dei rifiuti in tutti i tipi.

Migliori pratiche

  • Monitora i rifiuti: Includi controlli stop_reason: refusal nella gestione degli errori
  • Ripristina automaticamente: Implementa il ripristino automatico del contesto quando vengono rilevati rifiuti
  • Fornisci messaggi personalizzati: Crea messaggi user-friendly per una migliore UX quando si verificano rifiuti
  • Traccia i modelli di rifiuto: Monitora la frequenza dei rifiuti per identificare potenziali problemi con i tuoi prompt

Note sulla migrazione

  • I modelli futuri espanderanno questo modello ad altri tipi di rifiuto
  • Pianifica la gestione degli errori per adattarsi all'unificazione futura delle risposte di rifiuto

Was this page helpful?

  • Formato della risposta API
  • Ripristina il contesto dopo il rifiuto
  • Guida all'implementazione
  • Tipi di rifiuto attuali
  • Migliori pratiche
  • Note sulla migrazione