Skip to content

Azure/live-voice-practice

Live Voice Practice Platform

A real-time AI-powered voice training platform for call-center and customer-service practice using Azure Voice Live and Azure AI services.

License: MIT Deploy to Azure

Overview

This repository implements a voice-based practice and training platform for call-center agents, using real-time AI-driven customer simulations. The application acts as a virtual practice partner, allowing trainees to engage in realistic conversations with an AI-powered customer and receive structured feedback after the session.

Key capabilities include:

  • Real-time voice conversations with an AI-powered customer
  • Configurable training scenarios derived from training materials
  • Customer behavior guided by curated example transcripts
  • Automatic conversation transcript capture
  • Post-session scoring and structured feedback
  • Evaluation using reusable rubrics
  • Secure deployment in a private cloud environment

In a typical session, a trainee selects a practice scenario and begins a real-time voice conversation with an AI-driven customer through Azure Voice Live, while transcripts and interaction events are captured. After the session ends, the interaction is evaluated asynchronously to generate structured feedback. Scenarios, rubric-based evaluation, and example transcripts enable more structured and repeatable training workflows.

Deployment

This project supports two deployment modes:

  • Basic (public endpoints) — fastest path, suitable for dev/demo:

    azd up
  • Network-isolated (private endpoints + jumpbox + Azure Firewall) — production-grade:

    azd env set NETWORK_ISOLATION true
    azd provision   # from your workstation
    # then connect to the jumpbox via Bastion and run azd deploy + postProvision there

See docs/deployment.md for the full step-by-step guide covering both modes (prerequisites, env variables, the workstation/jumpbox split for network isolation, post-provision hook, image build via the in-VNet ACR Tasks agent pool, validation, and teardown).

Quick reference for the jumpbox split (subnets, firewall allow-list, troubleshooting): docs/network-isolation-jumpbox-runbook.md.

Speech is provisioned by the AILZ Bicep template (deploySpeechService=true by default, AILZ v1.1.4+). To opt out:

azd env set DEPLOY_SPEECH_SERVICE false

Local Development

  1. Clone the repository

  2. Copy the environment template

cp .env.template .env
  1. Configure the required Azure credentials

  2. Build and run the backend

./scripts/build.sh
cd backend
python src/app.py

Open the application at:

http://localhost:8000

Project Origin and Acknowledgments

This project builds upon the sample Voice Live API Sales Coach. This repository extends the original implementation to support a voice-based practice platform for customer-service and call-center training scenarios, introducing configurable scenarios based on training materials, rubric-driven evaluation, and curated example transcripts.

The foundational architecture and part of the initial implementation originate from the original repository and its contributors. We thank the authors for making their work available as open source.

License

This project is licensed under the MIT License.

See the LICENSE file for details.

About

Live Voice Practice provides a real-time conversation simulation environment for voice-based learning and training. It enables users to practice realistic voice interactions through guided scenarios and interactive dialogue.

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors