fix(openai): filter function_call blocks in token counting #34396
+7
−1
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The Responses API returns messages with
function_callcontent blocks which causeget_num_tokens_from_messagesto raise aValueError: Unrecognized content block type.This occurs because the token counter internally uses the chat/completions format logic, which does not recognize these blocks.This PR updates
_format_message_contentto filter outfunction_callblocks when formatting messages for the chat/completions API (which includes the token counter). These blocks are redundant for token counting as the actual tool calls are already handled via the separatetool_callsfield, ensuring accurate counts without errors.Fixes #34378
Breaking Changes: None.