Expand description
§rs-genai
Full Rust equivalent of Google’s @google/genai SDK.
Wire protocol, transport, types, auth, plus REST API modules (feature-gated).
§Layers
- Protocol: Wire-format types mapping 1:1 to the API (
protocol/) - Transport: WebSocket connection with reconnection and flow control (
transport/) - Session: Session handle with command/event channels and phase FSM (
session/) - Buffer: Lock-free SPSC ring buffer and adaptive jitter buffer (
buffer/) - VAD: Voice activity detection with adaptive noise floor (
vad/) - Flow: Barge-in detection and turn detection (
flow/) - Telemetry: OTel spans, structured logging, Prometheus metrics (
telemetry/)
Re-exports§
pub use client::Client;pub use quick::quick_connect;pub use quick::quick_connect_vertex;
Modules§
- buffer
- Lock-free audio buffers for the hot path.
- client
- Unified Gemini API client — wraps both Live (WebSocket) and REST API access.
- flow
- Conversation flow control — barge-in handling and turn detection.
- prelude
- Convenient re-exports for wire-level usage.
- protocol
- Wire-format types mapping one-to-one to the Gemini Multimodal Live API.
- quick
- Quick-start convenience functions for connecting to the Gemini Multimodal Live API.
- session
- Session orchestration — the central coordination layer.
- telemetry
- Observability layer — OpenTelemetry tracing, structured logging, Prometheus metrics.
- transport
- WebSocket transport layer — connection, full-duplex messaging, flow control.
- vad
- Client-side Voice Activity Detection (VAD).