AWS releases healthcare appointment agent tutorial using Nova 2 Sonic speech-to-speech model
AWS published a technical guide for building voice appointment agents using Amazon Nova 2 Sonic, a speech-to-speech model that processes audio natively without separate transcription steps. The tutorial covers authentication, scheduling, and escalation tools running on Amazon Bedrock AgentCore with DynamoDB persistence.
AWS releases healthcare appointment agent tutorial using Nova 2 Sonic speech-to-speech model
AWS published a technical guide for building voice appointment agents using Amazon Nova 2 Sonic, a speech-to-speech model available on Amazon Bedrock that processes audio natively without chaining separate transcription, reasoning, and text-to-speech services.
The tutorial addresses healthcare appointment no-shows, which range from 5–30 percent across US healthcare providers depending on specialty. The agent authenticates patients by voice, manages appointments (confirm, cancel, reschedule), collects pre-visit health information, and escalates to human staff when needed.
Technical architecture
The implementation uses Amazon Bedrock AgentCore, a serverless runtime for AI agents with IAM-authenticated WebSocket endpoints. The agent is built with the Strands Agents SDK's BidiAgent class for bidirectional voice streaming.
The system architecture includes:
- React frontend capturing browser microphone audio over SigV4-signed WebSocket
- Amazon Cognito for authentication with temporary AWS credentials
- Amazon Bedrock AgentCore hosting the containerized Strands BidiAgent
- Nova 2 Sonic processing speech input and generating audio responses
- Three DynamoDB tables storing patient records, appointments, and time slots
- Amazon SNS for escalation notifications
According to AWS, Nova 2 Sonic's native speech-to-speech processing retains vocal nuance like tone and hesitation that text transcription discards. The model supports 16kHz input and output sample rates with multilingual capabilities and accent handling.
Seven healthcare tools
The agent implements seven Python functions using the Strands SDK's @tool decorator:
- authenticate_patient: Verifies identity using name and last four SSN digits via DynamoDB Global Secondary Index, enforcing three-attempt limit
- confirm_appointment: Updates appointment status from Scheduled/Rescheduled to Confirmed with idempotent checks
- cancel_appointment: Changes status to Canceled with timestamped reason
- find_available_slots: Queries open time slots from provider schedule
- book_appointment_slot: Finalizes rescheduling after slot selection
- collect_health_info: Gathers pre-visit patient information
- escalate_to_human: Triggers Amazon SNS notification for human staff intervention
Nova 2 Sonic decides when to invoke each tool based on patient responses. The setup requires minimal code:
from strands.experimental.bidi import BidiAgent
from strands.experimental.bidi.models import BidiNovaSonicModel
model = BidiNovaSonicModel(
region="us-east-1",
model_id="amazon.nova-2-sonic-v1:0",
provider_config={
"audio": {
"input_sample_rate": 16000,
"output_sample_rate": 16000,
"voice": "tiffany",
}
},
tools=tools,
)
agent = BidiAgent(
model=model,
tools=tools,
system_prompt=system_prompt,
)
Deployment details
The tutorial includes a browser-based interface for testing. To connect the agent to actual phone lines for outbound dialing, AWS notes that integration with a telephony service like Amazon Connect Customer is required.
The serverless deployment runs entirely on AWS infrastructure with Amazon Cognito authentication, DynamoDB persistence, and SNS notifications. The Strands SDK handles bidirectional streaming complexity, managing audio input, tool invocation, and audio response generation.
What this means
This tutorial demonstrates AWS's push to move speech AI workloads away from chained transcription-LLM-TTS architectures toward native speech-to-speech models. By preserving acoustic context through the full conversation, Nova 2 Sonic can potentially detect patient anxiety or confusion that text transcription loses.
The healthcare use case targets a specific economic problem: appointment no-shows cost providers revenue and delay patient care. Voice agents that handle routine confirmation calls at scale could reduce manual phone bank operations, though AWS provides no data on actual no-show rate reduction from this approach.
The modular tool design means developers can add capabilities by writing individual Python functions without rebuilding the agent. For organizations already using AWS infrastructure, the serverless deployment on Bedrock AgentCore eliminates separate infrastructure management.
Related Articles
Amazon, Cursor, Microsoft, OpenAI, and Vercel Launch Agent Plugins, a Shared Packaging Standard for AI Agent Extensions
Amazon, Cursor, Microsoft, OpenAI, and Vercel have released Agent Plugins, an open standard defining a single package format for AI agent extensions. Version 1.0.0 covers Agent Skills and MCP servers, but leaves marketplaces, permissions, and runtime out of scope.
AWS Adds Temporal Policies to Bedrock AgentCore to Stop AI Agents From Exploiting Multi-Step Actions
Amazon Bedrock AgentCore now supports temporal policies—stateful authorization rules that evaluate an AI agent's entire session history, not just individual tool calls. The feature runs at the AgentCore Gateway, outside agent code, so it cannot be bypassed by prompt manipulation or agent bugs.
AWS Details MCP Bridge Architecture Connecting Cloud-Hosted AI Agents to Local Files and Tools
AWS published a technical breakdown of an MCP bridge that connects cloud-hosted AI agents on Amazon Bedrock AgentCore to MCP servers running on a user's local machine. The architecture, used internally in a finance assistant with over 41,000 conversations in its first year, tunnels MCP JSON-RPC messages through WebSocket and browser native messaging.
Anthropic Adds Cross-Session Messaging to Claude Code v2.1.224
Claude Code v2.1.224 introduces cross-session messaging, letting separate Claude Code instances on macOS and Linux send each other summaries to coordinate work. The feature does not support approving permissions or executing commands remotely.
Comments
Loading...