Skip to main content

Migrate from Agent Service (classic)

If you’re using Voice Live with Agent Service (classic), we recommend you migrate to the new Foundry Agent Service. For general Agent Service migration steps, see Migrate from Agent Service (classic) to Foundry Agent Service.

Voice Live SDK changes

The Voice Live SDK introduces typed configuration classes that replace the raw query parameters used in the classic integration:
Classic (v1)New (v2)
agent-id query parameteragent_name in AgentConfig / AgentSessionConfig
agent-project-name query parameterProject endpoint in client constructor
agent-access-token query parameterHandled automatically by SDK
Manual connect() with query dictStrongly typed AgentSessionConfig passed to session options

Minimum SDK versions

LanguagePackageMinimum version
Pythonazure-ai-voicelive1.2.0
C#Azure.AI.VoiceLive1.1.0
Javaazure-ai-voicelive1.0.0
JavaScript@azure/ai-voicelive1.0.0

Before and after: Python connection setup

**Classic (v1)—raw query parameters in connect():
async with connect(
    endpoint=self.endpoint,
    credential=self.credential,
    query={
        "agent-id": self.agent_id,
        "agent-project-name": self.foundry_project_name,
        "agent-access-token": agent_access_token
    },
) as connection:
New (v2) — strongly typed AgentSessionConfig:
from azure.ai.voicelive import AgentConfig, AgentSessionConfig

agent_config = AgentConfig(agent_name=agent_name)
agent_session_config = AgentSessionConfig(agent_config=agent_config)

session_options = VoiceLiveSessionOptions(
    agent_session_config=agent_session_config,
    # ... other options
)
For complete code examples, see the new agent quickstart. The classic quickstart remains available.