В американских клиниках доля пропущенных записей (no-show) достигает 5–30% в зависимости от специальности. Каждый такой слот означает потерю дохода, простой врача и задержку в лечении. Традиционное решение — ручные обзвоны — не масштабируется. AWS предложила готовый образец голосового агента, который автоматизирует напоминания о приёме, подтверждение, перенос и сбор предварительной информации о здоровье. Решение построено на Amazon Nova 2 Sonic и Amazon Bedrock AgentCore и доступно для развёртывания через блог AWS Machine Learning Blog.
Amazon Nova 2 Sonic — это модель «речь-в-речь» (speech-to-speech), которая обрабатывает аудиопоток целиком, не разбивая его на транскрипцию, генерацию текста и синтез речи. Благодаря этому агент сохраняет тональные нюансы: hesitations, темп, интонацию — что критично в медицинском контексте, где тревога или непонимание пациента должны менять поведение агента. В отличие от цепочек из отдельных сервисов (ASR → LLM → TTS), Nova 2 Sonic работает с единой моделью, снижая задержки и потерю контекста. Модель также поддерживает фоновый шум, акценты и переключение языков на лету.
| Tool | What it does | How it works |
|---|---|---|
| authenticate_patient | Verifies identity using first name, last name, and last four digits of SSN. | Queries the DynamoDB Patients table through a Global Secondary Index (GSI). Enforces a three-attempt limit per name combination. On success, returns patient details and upcoming appointments. |
| confirm_appointment | Confirms an existing appointment. | Updates appointment status from Scheduled or Rescheduled to Confirmed in DynamoDB. Includes idempotent checks to prevent double-confirmation. |
| cancel_appointment | Cancels an appointment with an optional reason. | Updates status to Canceled with a timestamped note. Only operates on Scheduled, Confirmed, or Rescheduled appointments. |
| find_available_slots | Queries open time slots for rescheduling. | Looks up the provider from the appointment record and queries the AvailableSlots table through the ProviderDateIndex GSI. Returns up to three options to keep the voice conversation concise. |
| book_appointment_slot | Books a selected time slot. | Uses DynamoDB conditional writes to atomically mark the slot as taken, preventing double-booking under concurrent requests. Updates the appointment with the new date and time. |
| record_health_update | Captures pre-visit health information. | Appends timestamped notes to the appointment record. Collects four items (medical conditions, allergies, accompaniment, specific concerns); each asked one at a time. |
| escalate_to_agent | Flags the call for human callback. | Generates a six-digit reference number, updates the appointment status to Escalated, and publishes an Amazon SNS message with patient information and the escalation reason. |
Архитектура решения включает React-фронтенд, который передаёт аудио через WebSocket, аутентификацию через Amazon Cognito и серверный слой на Bedrock AgentCore. AgentCore обеспечивает бессерверный запуск агента с IAM-аутентификацией. Для работы с инструментами используется Strands Agents SDK. В образце реализовано семь инструментов — от проверки личности по голосу до записи на слот и эскалации к живому оператору через Amazon SNS. Данные хранятся в Amazon DynamoDB. Для подключения к телефонным линиям необходимо интегрировать Amazon Connect или аналогичный сервис.
Amazon Nova 2 Sonic обрабатывает речь целиком, сохраняя тон и интонацию пациента.

Публикация такого образца показывает, что AWS продвигает специализированные ИИ-агенты для вертикальных сценариев. Подход, при котором модель сразу работает со звуком, а не с текстом, может стать стандартом для голосовых ассистентов в чувствительных отраслях. Разработчики могут использовать этот код как основу для собственных решений — в ритейле, логистике или клиентской поддержке.



