Live Mode is missing usage_metadata and telemetry tracing
- Langage dominant
- Python
- Étoiles
- 21.5k
- Forks
- 4k
- Merge moyen
- 1 j 14 h
- PR mergées (30 j)
- 37
Description
**Describe the bug**
When using ADK with Gemini Live API, the `usage_metadata` field is always `None` in Event objects, making it impossible to track token usage for cost monitoring and observability. Additionally, telemetry tracing doesn't work properly for live events, with token usage data being lost instead of creating individual spans for each event.
**To Reproduce**
Steps to reproduce the behavior:
1. Install `google-adk`
2. Create a voice agent using `gemini-live-2.5-flash` model:
```python
from google.adk.agents import Agent
agent = Agent(
name="voice_assistant_agent",
model="gemini-live-2.5-flash", # or any other live model
tools=[some_tool]
)
```
3. Run the agent and process live events:
```python
async for event in live_events:
print(f"Usage metadata: {event.usage_metadata}") # Always None
```
4. CheckOpenTelemetry traces for token usage
5. Observe that token usage is not tracked in telemetry spans
**Expected behavior**
- `event.usage_metadata` should contain actual token usage data from the Gemini Live API response
- Each live event should create a separate OpenTelemetry span with token usage metrics (`gen_ai.usage.input_tokens`, `gen_ai.usage.output_tokens`, `gen_ai.usage.total_tokens`)
Guide de contribution
Ouvrir le guide de contribution
Évaluation
Cette issue n'a pas encore été évaluée.