googleapis / googleapis/python-genai

Expose a transport-level `cancel`/`close` handle on async streaming responses (so they can be cancelled from another task)

Open
#2,425 1 comment 0 reactions 1 assignee Claimed by @Venkaiahbabuneelam View on GitHub
priority: p3 type: feature request
Dominant language
Python
Stars
4k
Forks
1k
Avg merge
2d 11h
Merged PRs (30d)
40

Description

While working on https://github.com/pydantic/pydantic-ai/issues/1524 I hit: generate_content_stream only exposes the generator, so cancelling it from another task while we're iterating raises `RuntimeError`: `aclose(): asynchronous generator is already running`.

**Describe the solution you'd like**
A transport handler we could close with or cancel with would be great

**Describe alternatives you've considered**
There are some things we could do to maybe mimic this but given that most SDKs have this it would be nice if `genai` did too

**Additional context**
I have just added a small warning for now.
https://pydantic.dev/docs/ai/models/google/#streaming-cancellation

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.