An Azure service that integrates speech processing into apps and services.
Hi Azure Support Team,
Do we have any other Azure service available to full fill same use case supporting speech to speech+Avatar+RAG ?
Thanks
This browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
Hi Azure Support Team,
We are planning to use Azure Voice Live API for an use case:
Voice → Voice Live → RAG → grounded response with citations → Voice with Avatar
Could you please confirm:
Please also clarify which parts are provided natively by Azure Voice Live and which need to be implemented in our application/orchestration layer.
Thanks,
An Azure service that integrates speech processing into apps and services.
Hi Azure Support Team,
Do we have any other Azure service available to full fill same use case supporting speech to speech+Avatar+RAG ?
Thanks
AI answer
Implement RAG as a backend tool invoked from the active Voice Live session, return retrieved passages and source metadata to Voice Live, and configure Voice Live’s integrated avatar output for synchronized audio and video.
| Capability | Voice Live / Azure provides | Application or orchestration layer provides |
|---|---|---|
| Speech interaction | Real-time speech input, model inference, speech output, turn detection, WebSocket/WebRTC transport | Client UI, session lifecycle, error handling |
| RAG | Function/tool calling and grounded-response support using the VoiceRAG pattern | Azure AI Search/custom API query, retrieval policy, security trimming, prompt/tool-result construction |
| Current content | A tool can be called repeatedly during an active conversation | Indexing/re-indexing and executing a fresh query for each relevant turn |
| Citations | Citation annotations can be emitted for supported hosted web/file-search tools | Stable citation mapping for custom Azure AI Search or custom RAG tools |
| Avatar | Integrated standard/custom avatar output synchronized with Voice Live audio | Rendering the returned WebRTC/video stream and reconnect handling |
Voice Live does not itself become the enterprise retrieval index. In the documented RAG flow, the application retrieves content, augments the model input, and generates the grounded answer; indexes can store citation fields such as title, URL, and file name.^1^
search_enterprise_content in the Voice Live session.avatar in the Voice Live session and establish the avatar WebRTC connection.Voice Live function calling is specifically designed for invoking external backends during a conversation. The application handles the function-call event, executes the function, sends its output back, and triggers the response.^2^
A representative tool result should preserve citation data rather than returning only flattened text:
{
"answer_context": [
{
"text": "Retrieved passage...",
"source_id": "policy-123",
"title": "Travel Policy",
"url": "https://example.contoso/policy/123",
"last_updated": "2026-11-01"
}
]
}
Because the function executes when requested, subsequent questions can query the latest searchable index state—even within the same Voice Live session. Whether an update is visible immediately depends on completion of your ingestion/indexing process, not conversation state.
For custom tool results, maintain the authoritative mapping between response, passage, and source in your application. The API also defines response.audio_transcript.annotation.added for annotations such as citations produced by web or file search, but its schema depends on the annotation source; this should not be assumed to create citations automatically for arbitrary custom-tool JSON.^3^
Voice Live natively supports real-time avatars synchronized with audio. Configure the avatar parameter, perform SDP negotiation using session.avatar.connect, and render the returned stream. The integrated path returns synchronized avatar and audio; your application does not need to stream generated Voice Live audio into a separate Avatar API.^4^
Avatar streaming is WebRTC-based by default, with video, animation, and blendshape support.^5^ For ordinary non-avatar browser/mobile audio, WebRTC is also recommended over WebSocket for latency and network resilience.^6^
Do not select a model solely by model family: verify that the chosen model, API version, region, and tool-calling mode support the required combination.
Voice Live supports Microsoft Entra ID for a Microsoft Foundry resource. Assign Cognitive Services User and Foundry User to the calling user or managed identity, request a token for https://ai.azure.com/.default (or the documented legacy scope), and pass it as a Bearer [Token]^4^
For the retrieval tier, Azure AI Search supports managed identity, RBAC, firewalls, and private endpoints.^10^ Place the RAG backend in a network that can resolve and reach the Search private endpoint.
The cited Voice Live documentation establishes Entra ID and managed-identity authentication but does not establish end-to-end Voice Live Private Endpoint/VNet support. Confirm that requirement for the exact resource type, endpoint mode, region, and API version before treating Voice Live itself as privately reachable. Also account for WebSocket/WebRTC, ICE/STUN/TURN, DNS, and outbound identity endpoints in the network design.
There is no single documented sample here combining Voice Live, Azure AI Search RAG, citations, and Avatar end to end. Use these two official starting points:
aisearch-openai-rag-audio: voice-to-RAG with Azure AI Search and full-duplex real-time audio.^11^Combine them at the orchestration boundary: retain the RAG backend/tool contract and citation store from the first, and replace its output presentation with the integrated Voice Live avatar session.
References