Skip to main content

Module normalize

Module normalize 

Source
Expand description

Message normalization and validation utilities.

Ensures messages conform to API requirements before sending:

  • Tool use / tool result pairing
  • Content block ordering
  • Empty message handling

Functions§

cap_document_blocks
Cap oversized document blocks to prevent context blowout.
ensure_tool_result_pairing
Ensure every tool_use block has a matching tool_result in the subsequent user message. Orphaned tool_use blocks cause API errors.
merge_consecutive_user_messages
Merge consecutive user messages into a single message. The API requires strict user/assistant alternation.
remove_empty_messages
Remove empty messages (messages with no content blocks after stripping).
strip_empty_blocks
Remove empty text blocks from messages.
validate_alternation
Validate that the message sequence alternates correctly (user/assistant/user/assistant…) as required by the API.