Overview
When implementing a conversational bot using the ResponsesAPI, we’ve identified a phenomenon where a single API request returns multiple message
items with identical or very similar content. This duplication or similarity of messages in responses negatively impacts the user experience.
Steps to Reproduce
- Use the
gpt-4.5-preview
model to call the ResponsesAPI - Send a normal conversation request
Observed Behavior
A single API call response may contain multiple message
objects with similar but slightly different content.
Example of Similar Messages
{
"output": [
{
"id": "msg_abc123",
"type": "message",
"role": "assistant",
"content": [
{
"type": "output_text",
"text": "Climate change refers to long-term shifts in the Earth's climate system. The main cause is greenhouse gas emissions from burning fossil fuels. This leads to an increase in the Earth's average temperature, resulting in sea level rise and more frequent extreme weather events."
}
]
},
{
"id": "msg_def456",
"type": "message",
"role": "assistant",
"content": [
{
"type": "output_text",
"text": "Climate change refers to long-term alterations in Earth's climate patterns. Human activities that produce greenhouse gases are the primary cause, resulting in global warming, rising sea levels, and increased extreme weather events. Solutions include transitioning to renewable energy and promoting energy efficiency."
}
]
}
]
}
Issues
- Multiple messages with similar content on the same topic may be returned
- Depending on implementation, this could lead to confusing content being concatenated and displayed to the user
- It’s difficult to determine whether these are intentional rephrasing or system-generated duplications
- The ResponsesAPI documentation does not mention this behavior of returning multiple similar messages
Expected Behavior
- A single API request should provide a consistent, single response
- If multiple messages are returned, each message should have a clearly different role or purpose
- Clear explanation of the conditions under which similar messages occur and the reason for this behavior
I would appreciate information on whether this similar message phenomenon is an intentional design or a bug, and any details on future handling of this issue.