Skip to main content
Every labeler on the other pages takes text. To label other modalities, change the input argument and the model. The schema and the output_schema pattern stay the same.

Input argument per modality

All four classes accept url, filepath, or raw bytes via content. The cookbook fetches audio and video bytes first.

Bounding boxes

For region detection, return normalized coordinates so the result is resolution-independent.
The per-field description on x, y, width, and height is load-bearing. Without it, and without the [0, 1] convention spelled out in the instructions, models return degenerate boxes (all-zero or whole-image). Spell out the coordinate system in both places.

Transcription and diarization

Audio extraction covers transcription, speaker diarization, and timestamped segments. Each is a schema change, not a different API.

Model choice

gemini-3.5-flash handles text, image, audio, video, and PDF natively, so the cookbook uses it across every modality. Agno is model-agnostic, so you can swap in any model that supports the modality.

Next steps

Developer Resources