Skip to content

Initial add of VoiceLive SDK #51845

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 26 commits into
base: main
Choose a base branch
from
Open

Initial add of VoiceLive SDK #51845

wants to merge 26 commits into from

Conversation

rhurey
Copy link
Member

@rhurey rhurey commented Aug 8, 2025

Initial add, with methods on the client instead of message passing.

@Copilot Copilot AI review requested due to automatic review settings August 8, 2025 20:42
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds the initial implementation of the Azure.AI.VoiceLive SDK, a comprehensive .NET library for real-time voice conversation capabilities. The SDK provides convenient methods on the client instead of requiring manual message passing, along with complete samples demonstrating voice assistant and customer service bot scenarios.

Key Changes

  • Complete VoiceLive SDK implementation with client-side convenience methods
  • Basic Voice Assistant sample demonstrating fundamental voice conversation patterns
  • Customer Service Bot sample showcasing function calling capabilities with realistic business scenarios

Reviewed Changes

Copilot reviewed 36 out of 362 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
src/ConversationSessionOptions.cs Configuration options class for conversational VoiceLive sessions with voice, model, and tool settings
src/ClientEvent.cs Extension providing binary data conversion for client events
src/AzureStandardVoice.cs Azure standard voice implementation with binary data serialization
src/AzurePersonalVoice.cs Azure personal voice implementation with binary data serialization
src/AzureCustomVoice.cs Azure custom voice implementation with binary data serialization
src/AzureAIVoiceLiveContext.cs Model reader/writer context for VoiceLive types
src/Azure.AI.VoiceLive.csproj Main SDK project configuration with Azure.Core and System.Text.Json dependencies
samples/CustomerServiceBot/* Complete customer service bot sample with function calling, business logic, and comprehensive documentation
samples/BasicVoiceAssistant/* Foundational voice assistant sample demonstrating core VoiceLive SDK capabilities
Configuration and documentation files Project setup, build configuration, changelog, and implementation summaries

Comment on lines 115 to 116
// Note: ParallelToolCalls is not supported in VoiceLiveRequestSession
// This would need to be handled differently or added to generated model
Copy link
Preview

Copilot AI Aug 8, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This TODO comment indicates incomplete functionality. Either implement support for ParallelToolCalls in the RequestSession model or remove this property from ConversationSessionOptions to avoid confusion.

Suggested change
// Note: ParallelToolCalls is not supported in VoiceLiveRequestSession
// This would need to be handled differently or added to generated model

Copilot uses AI. Check for mistakes.

Copy link

github-actions bot commented Aug 10, 2025

API Change Check

APIView identified API level changes in this PR and created the following API reviews

Azure.AI.VoiceLive

@rhurey rhurey requested review from m-redding and a team as code owners August 12, 2025 23:30
@rhurey rhurey added the VoiceLive Deals with the Azure AI Voice Live SDK. label Aug 14, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
AI Model Inference AI Projects VoiceLive Deals with the Azure AI Voice Live SDK.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants