Skip to content

Conversation

@dbschmigelski
Copy link
Member

Description

When a customer provides stream: False we fail with

  File ".../.venv/lib/python3.12/site-packages/strands/models/litellm.py", line 286, in stream
    async for event in response:
TypeError: 'async for' requires an object with __aiter__ method, got ModelResponse

This is because we are not respecting the stream parameter and are assuming the response will always come back as as CustomStreamWrapper instead of considering the actual return type of acompletion which is Union[ModelResponse, CustomStreamWrapper]

We can consider if we want to allow this in the future, but for now this fix is mainly targeting error messaging since it is currently broken.

Related Issues

#729

Documentation PR

N/A

Type of Change

Bug fix

Testing

How have you tested the change? Verify that the changes do not break functionality or introduce warnings in consuming repositories: agents-docs, agents-tools, agents-cli

  • I ran hatch run prepare

Checklist

  • I have read the CONTRIBUTING document
  • I have added any necessary tests that prove my fix is effective or my feature works
  • I have updated the documentation accordingly
  • I have added an appropriate example to the documentation to outline the feature, or no new docs are needed
  • My changes generate no new warnings
  • Any dependent changes have been merged and published

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

- Raise ValueError when stream is explicitly set to False
- Add unit test for stream parameter validation
@codecov
Copy link

codecov bot commented Nov 14, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@dbschmigelski dbschmigelski merged commit ded0934 into strands-agents:main Nov 17, 2025
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants