[Frontend] Fixes anthropic streaming message_start usage nesting (#30266)

Signed-off-by: bbartels <benjamin@bartels.dev>
This commit is contained in:
Benjamin Bartels 2025-12-12 16:28:54 +00:00 committed by GitHub
parent 9c0ee995a8
commit f3237f3f6b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 12 additions and 9 deletions

View File

@ -79,9 +79,12 @@ async def test_anthropic_streaming(client: anthropic.AsyncAnthropic):
assert chunk_count > 0 assert chunk_count > 0
assert first_chunk is not None, "message_start chunk was never observed" assert first_chunk is not None, "message_start chunk was never observed"
assert first_chunk.usage is not None, "first chunk should include usage stats" assert first_chunk.message is not None, "first chunk should include message"
assert first_chunk.usage["output_tokens"] == 0 assert first_chunk.message.usage is not None, (
assert first_chunk.usage["input_tokens"] > 5 "first chunk should include usage stats"
)
assert first_chunk.message.usage.output_tokens == 0
assert first_chunk.message.usage.input_tokens > 5
@pytest.mark.asyncio @pytest.mark.asyncio

View File

@ -324,12 +324,12 @@ class AnthropicServingMessages(OpenAIServingChat):
id=origin_chunk.id, id=origin_chunk.id,
content=[], content=[],
model=origin_chunk.model, model=origin_chunk.model,
), usage=AnthropicUsage(
usage=AnthropicUsage( input_tokens=origin_chunk.usage.prompt_tokens
input_tokens=origin_chunk.usage.prompt_tokens if origin_chunk.usage
if origin_chunk.usage else 0,
else 0, output_tokens=0,
output_tokens=0, ),
), ),
) )
first_item = False first_item = False