在呼叫中心场景中,AI 代理需实时响应用户语音,实现动态工具调用以处理如查询客户数据、生成预约或填充理赔表单等任务。Microsoft 的 Call Center AI 项目提供了一个高效框架,通过 Azure Communication Services 的电话接入、Cognitive Services 的 STT/TTS 与 OpenAI GPT 模型的 LLM 核心,形成闭环处理管道。该方案的核心优势在于低延迟工具集成与鲁棒错误恢复,确保生产级可靠性。
核心流程为:用户语音经 Azure Communication Services 传入,实时 STT 转录为文本(支持窄带 8kHz 音频优化);文本注入 LLM(默认 gpt-4o-mini,高性能低成本),LLM 根据系统提示(如任务目标、claim schema)决定是否调用工具;工具执行后结果回馈 LLM 生成响应,经 TTS 合成语音输出。动态工具调用体现在 LLM 输出中的 tool_calls 字段,例如填充 JSON claim(如 {"name": "incident_datetime", "type": "datetime"}),或生成 reminders/todos。该设计避免了纯提示工程的局限,支持结构化数据提取与外部 API 交互。
为实现实时性,需优化循环参数。STT 配置:recognition_retry_max=3,确保语音识别失败时重试;vad_silence_timeout_ms=500、vad_threshold=0.5,用于语音活动检测(VAD),过滤沉默与噪声;recognition_stt_complete_timeout_ms=100,避免长暂停卡住。LLM 侧:answer_soft_timeout_sec=4(发送等待消息)、answer_hard_timeout_sec=15(中止并报错);使用 gpt-4o-mini 减少 TTFT(首 token 时间),结合 PTU(Provisioned Throughput Units)可将延迟减半。TTS:选用 neural 声(如 fr-FR-DeniseNeural),支持自定义品牌声;conversation.initiate.lang 数组定义多语言 fallback。
错误恢复机制至关重要。断线续传依赖 Redis 缓存对话状态与历史消息,支持 resume 后无缝接续;Event Grid 推送事件至队列,容忍网络抖动。工具调用失败时,LLM 内置重试逻辑(如空响应 hallucination),并有 jailbreak 检测与内容过滤(Azure OpenAI Content Safety,阈值 0-7)。人工 fallback:若复杂性超阈,转移至 agent_phone_number。监控参数:Application Insights 追踪 call.answer.latency(用户语音结束至 bot 响应开始)、call.aec.dropped(回声消除丢帧);自定义指标如 token 使用、RU/s(Cosmos DB 1k RU/s 双区域)。
规模化多 bot 编排通过 Container Apps 实现,按需弹性(平均 2 replicas,1 vCPU/2GB);API 触发 POST /call 指定 bot_company、bot_name、task 与自定义 claim schema,支持并行多实例。负载均衡:Azure Load Balancer + Event Grid 路由;成本控制:1000 通话(10min/通)约 $720/月,优化为 serverless 模式。部署清单:
- 配置 Azure Communication Services:购号,支持 inbound/outbound。
- 部署 Bicep IaC:make deploy name=rg-name,含 Cosmos DB、AI Search(RAG)、Redis。
- 自定义提示:prompts.llm.chat_system_tpl 注入业务规则与 schema。
- 特征旗:App Configuration 中设置 recording_enabled=true、slow_llm_for_chat=false。
- 测试:curl POST /call with task="Help with IT support",验证 tool_calls 输出。
- 监控:Insights 查询 latency P95 < 2s,satisfaction=high。
风险控制:限 PoC,非生产需加多区域、私网、完整测试;PII 脱敏 via Language Service。实际落地中,先从小规模外呼验证工具准确率 >90%,渐进扩展。
资料来源:
[1] https://github.com/microsoft/call-center-ai (README.md)
[2] 项目架构图与 demo JSON 示例