google / google/adk-python

RemoteA2aAgent resets A2AClientFactory

Đang mở
#3,158 2 bình luận 0 reaction 1 người được giao Được giao cho @seanzhou1023 Xem trên GitHub
a2a needs review
Ngôn ngữ chính
Python
Star
21.5k
Fork
4k
Merge trung bình
1 ngày 14 giờ
Pull request đã merge (30 ngày)
37

Mô tả

`class RemoteA2aAgent(BaseAgent):` takes in an `a2a_client_factory: Optional[A2AClientFactory] = None` but within:
```
async def _ensure_httpx_client(self) -> httpx.AsyncClient:
```
it overwrites it:
```python
self._a2a_client_factory = A2AClientFactory(
config=dataclasses.replace(
self._a2a_client_factory._config,
httpx_client=self._httpx_client,
)
)
```
which means I can't sub-class it. This is an issue because I need to override the `create` of `A2AClientFactory`.

**Describe the solution you'd like**
Allow the user to provide an `A2AClientFactory` that will be called to create the `A2AClient`.

**Describe alternatives you've considered**
For now I've resolved to monkey patching, which is far from ideal.

**Additional context**
This is needed in the context of the A2A <> x402 implementation, to get `RemoteA2aAgent` working with the `x402` spec over `A2A`.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.