• Messages
  • Managed Agents
  • Admin

Search...
⌘K
Erste Schritte
Einführung in ClaudeSchnellstart
Entwickeln mit Claude
FunktionsübersichtVerwendung der Messages APIStoppgründe und FallbackAblehnungen und FallbackFallback-Guthaben
Modellfähigkeiten
Erweitertes DenkenAdaptives DenkenEffortAufgabenbudgets (Beta)Schnellmodus (Forschungsvorschau)Strukturierte AusgabenZitateStreaming von NachrichtenBatch-VerarbeitungSuchergebnisseStreaming von AblehnungenMehrsprachige UnterstützungEmbeddings
Tools
ÜbersichtFunktionsweise der Tool-NutzungTutorial: Einen Tool-nutzenden Agenten erstellenTools definierenTool-Aufrufe verarbeitenParallele Tool-NutzungTool Runner (SDK)Strikte Tool-NutzungTool-Nutzung mit Prompt-CachingServer-ToolsFehlerbehebungWebsuche-ToolWeb-Fetch-ToolCodeausführungs-ToolAdvisor-ToolMemory-ToolBash-ToolComputer-Use-ToolTexteditor-Tool
Tool-Infrastruktur
Tool-ReferenzTool-Kontext verwaltenTool-KombinationenTool-SucheProgrammatische Tool-AufrufeFeingranulares Tool-Streaming
Kontextverwaltung
KontextfensterKompaktierungKontextbearbeitungPrompt-CachingSystemnachrichten während der KonversationEinen Orchestrierungsmodus erstellenCache-Diagnose (Beta)Token-Zählung
Arbeiten mit Dateien
Files APIPDF-UnterstützungBilder und Vision
Skills
ÜbersichtSchnellstartBest PracticesSkills für UnternehmenSkills in der API
MCP
Remote-MCP-ServerMCP-Connector
Claude auf Cloud-Plattformen
Amazon BedrockAmazon Bedrock (Legacy)Claude Platform auf AWSMicrosoft FoundryVertex AI

Log in
Streaming von Ablehnungen
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

  • Claude on AWS
  • 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
Messages/Modellfähigkeiten

Streaming-Ablehnungen

Ab den Claude 4-Modellen geben Streaming-Antworten von Claudes API stop_reason: "refusal" zurück, wenn Streaming-Klassifikatoren eingreifen, um potenzielle Richtlinienverstöße zu behandeln. Diese neue Sicherheitsfunktion hilft dabei, die Einhaltung von Inhaltsrichtlinien während des Echtzeit-Streamings zu gewährleisten.



Um mehr über Ablehnungen zu erfahren, die durch API-Sicherheitsfilter für Claude Sonnet 4.5 ausgelöst werden, siehe Understanding Sonnet 4.5's API Safety Filters.

API-Antwortformat

Wenn Streaming-Klassifikatoren Inhalte erkennen, die gegen die Richtlinien von Anthropic verstoßen, gibt die API diese Antwort zurück:

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

Es wird keine zusätzliche Ablehnungsnachricht mitgeliefert. Du musst die Antwort selbst verarbeiten und eine geeignete benutzerseitige Nachricht bereitstellen.

Kontext nach Ablehnung zurücksetzen

Wenn du stop_reason: refusal erhältst, musst du den Konversationskontext zurücksetzen, bevor du fortfährst. Du kannst den Turn, der die Ablehnung ausgelöst hat, entfernen oder umformulieren, oder den Konversationsverlauf vollständig löschen. Wenn du versuchst, ohne Zurücksetzen fortzufahren, führt dies zu weiteren Ablehnungen.



Nutzungsmetriken werden weiterhin in der Antwort bereitgestellt, auch wenn die Antwort abgelehnt wird.

Wenn eine Ablehnung eintrifft, bevor Claude eine Ausgabe generiert, wird dir die Anfrage über die Claude API nicht in Rechnung gestellt, und die Nutzungszahlen in dieser Antwort dienen nur zur Information. Wenn Claude vor der Ablehnung eine Ausgabe generiert, wird dir diese Anfrage in Rechnung gestellt.



Wenn du bei der Verwendung von Claude Sonnet 4.5 oder Opus 4.1 (veraltet) häufig auf refusal-Stop-Reasons stößt, kannst du versuchen, deine API-Aufrufe auf Haiku 4.5 (claude-haiku-4-5-20251001) umzustellen, das andere Nutzungsbeschränkungen hat. Erfahre mehr über die API-Sicherheitsfilter von Sonnet 4.5.

Implementierungsleitfaden

So erkennst und behandelst du Streaming-Ablehnungen in deiner Anwendung:

Aktuelle Ablehnungstypen

Die API behandelt Ablehnungen derzeit auf drei verschiedene Arten:

AblehnungstypAntwortformatWann es auftritt
Ablehnungen durch Streaming-Klassifikatorenstop_reason: refusalWährend des Streamings, wenn Inhalte gegen Richtlinien verstoßen
API-Eingabe- und Urheberrechtsvalidierung400-FehlercodesWenn die Eingabe die Validierungsprüfungen nicht besteht
Vom Modell generierte AblehnungenStandard-TextantwortenWenn das Modell selbst entscheidet, abzulehnen


Zukünftige API-Versionen werden das stop_reason: refusal-Muster erweitern, um die Behandlung von Ablehnungen über alle Typen hinweg zu vereinheitlichen.

Best Practices

  • Auf Ablehnungen überwachen: Füge Prüfungen auf stop_reason: refusal in deine Fehlerbehandlung ein
  • Automatisch zurücksetzen: Implementiere ein automatisches Zurücksetzen des Kontexts, wenn Ablehnungen erkannt werden
  • Benutzerdefinierte Nachrichten bereitstellen: Erstelle benutzerfreundliche Nachrichten für eine bessere UX, wenn Ablehnungen auftreten
  • Ablehnungsmuster verfolgen: Überwache die Häufigkeit von Ablehnungen, um potenzielle Probleme mit deinen Prompts zu identifizieren

Migrationshinweise

  • Zukünftige Modelle werden dieses Muster auf andere Ablehnungstypen ausweiten
  • Plane deine Fehlerbehandlung so, dass sie eine zukünftige Vereinheitlichung von Ablehnungsantworten berücksichtigt

Was this page helpful?

  • API-Antwortformat
  • Kontext nach Ablehnung zurücksetzen
  • Implementierungsleitfaden
  • Aktuelle Ablehnungstypen
  • Best Practices
  • Migrationshinweise
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-opus-4-8",
    ) as stream:
        for event in stream:
            # Prüfe auf Ablehnung im Message-Delta
            if event.type == "message_delta":
                if event.delta.stop_reason == "refusal":
                    reset_conversation()
                    break
except Exception as e:
    print(f"Error: {e}")