Skip to content

Conversation

@xitzhang
Copy link
Member

…on, and reasoning effort control

Description

Please add an informative description that covers that changes made by the pull request and link all relevant issues.

If an SDK is being regenerated based on a new API spec, a link to the pull request containing these API spec changes should be included above.

All SDK Contribution checklist:

  • The pull request does not introduce [breaking changes]
  • CHANGELOG is updated for new features, bug fixes or other significant changes.
  • I have read the contribution guidelines.

General Guidelines and Best Practices

  • Title of the pull request is clear and informative.
  • There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

  • Pull request includes test coverage for the included changes.

Copilot AI review requested due to automatic review settings January 20, 2026 23:13
Copy link
Contributor

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 pull request adds significant new functionality to the Azure AI VoiceLive SDK, including Foundry agent integration, filler response configuration, and reasoning effort control. The PR also includes important security improvements by removing eval() usage from serialization utilities.

Changes:

  • Added Foundry agent tool integration with FoundryAgentTool, related events, and response items
  • Added filler response configuration with BasicFillerResponseConfig and LlmFillerResponseConfig for handling latency and tool call scenarios
  • Added ReasoningEffort enum for controlling reasoning model effort levels
  • Added metadata support to Response models
  • Removed security vulnerability by replacing eval() with explicit type checking in serialization
  • Updated azure-core dependency from 1.36.0 to 1.37.0

Reviewed changes

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

Show a summary per file
File Description
azure/ai/voicelive/models/_models.py Added new model classes for Foundry agents, filler responses, and server events; added reasoning_effort and metadata fields to existing models
azure/ai/voicelive/models/_enums.py Added FillerResponseConfigType, FillerTrigger, FoundryAgentContextType, and ReasoningEffort enums
azure/ai/voicelive/models/init.py Exported all new models and enums
azure/ai/voicelive/_utils/serialization.py Replaced eval() with explicit type checking for improved security
azure/ai/voicelive/_utils/model_base.py Enhanced deserialization for array-encoded strings and mutable types
azure/ai/voicelive/_types.py Added FillerResponseConfig union type
tests/test_unit_models_filler_foundry.py Comprehensive unit tests for new Foundry agent and filler response features
tests/test_unit_serialization.py Security tests verifying eval() removal
samples/async_mcp_sample.py Updated to use new API version and improved code formatting
pyproject.toml Updated azure-core dependency to 1.37.0
CHANGELOG.md Comprehensive documentation of changes
apiview-properties.json Added mappings for new models

xitzhang and others added 4 commits January 20, 2026 15:25
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@github-actions
Copy link

github-actions bot commented Jan 20, 2026

API Change Check

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

azure-ai-voicelive

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants