-
Notifications
You must be signed in to change notification settings - Fork 5k
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
base: main
Are you sure you want to change the base?
Initial add of VoiceLive SDK #51845
Conversation
There was a problem hiding this 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 |
// Note: ParallelToolCalls is not supported in VoiceLiveRequestSession | ||
// This would need to be handled differently or added to generated model |
There was a problem hiding this comment.
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.
// 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.
sdk/ai/Azure.AI.VoiceLive/samples/BasicVoiceAssistant/AudioProcessor.cs
Outdated
Show resolved
Hide resolved
sdk/ai/Azure.AI.VoiceLive/samples/BasicVoiceAssistant/Program.cs
Outdated
Show resolved
Hide resolved
sdk/ai/Azure.AI.VoiceLive/samples/CustomerServiceBot/Program.cs
Outdated
Show resolved
Hide resolved
sdk/ai/Azure.AI.VoiceLive/samples/CustomerServiceBot/CustomerServiceBot.cs
Outdated
Show resolved
Hide resolved
API Change CheckAPIView identified API level changes in this PR and created the following API reviews |
…les, and add a cspell json to the VoiceLive directory.
Initial add, with methods on the client instead of message passing.