Server
The vanling server is built with Rust + axum, implementing the Xiaozhi smart speaker protocol with real-time voice conversation capabilities.
Reading order: core architecture first (Session and Round lifetimes), then components and the pipeline (how one turn's data flows), then VAD/turn detection, dialogue flow and protocol details; deployment is for reference as needed.
| Page | Description |
|---|---|
| Core Architecture | Overall architecture, Session state machine, Round lifecycle, filters and construction entry points |
| Components and Module Layout | Core skeleton hierarchy, dual-layer components, the ling special node |
| Unified Pipeline | Node contract, chain assembly and release, event-stream conventions |
| VAD and Turn Detection | Speech onset/offset criteria, the two silence gates, turn-termination paths, parameter reference |
| Dialogue Flow | Handshake and communication sequence diagrams, listen modes, empty-input behaviour |
| WebSocket Protocol | Protocol field definitions and binary format |
| Models and Deployment | AI model specs, config system, asset installation, CUDA deployment |
There is exactly one backlog: the Roadmap. Positioning and technology references are in Positioning and Trade-off Reference; for why the old TODO was split up, see the server records.