开发与工程 ✓ Microsoft · 官方 azure-voice-livedotnetwebsocketspeech-to-speechvoice-assistantfunction-callingvoice-activity-detectionrealtime-audio

Azure Voice Live .NET 技能

帮助 .NET 开发者构建实时双向语音 AI 应用。

FollowSkills 评估 · FSRS-2.0
不推荐
46/ 100 五分制 2.3 / 5
信任安全14 / 25 · 2.8/5

文档提供 Entra、托管身份和 API key 两种认证方式,并建议避免硬编码密钥;但未说明音频、文本、函数调用数据的流向、留存、敏感数据处理、最小权限细节、用户确认、外部副作用控制或回滚方案。函数调用示例直接构造外部天气结果且没有安全校验,因此扣分。

可靠稳定6 / 20 · 1.5/5

核心会话、事件循环、音频和函数调用路径有示例,错误事件也有处理;但未提供该技能专属测试、可复现构建或异常输入策略,模型和版本信息可能不一致,示例还缺少明确的资源、取消、重连和完整事件处理说明。静态审查限制分数不超过10。

适用触发8 / 15 · 2.7/5

触发词、目标用户和实时语音场景定义较清楚,覆盖 .NET、WebSocket、VAD、函数调用和音频配置;但未声明不适用边界、输入输出契约或浏览器/平台限制,也没有中文语音和中国大陆网络可达性说明。核心服务依赖 Azure 外部服务,区域可用性未验证,因此扣分。

规范维护9 / 15 · 3.0/5

结构包含安装、环境变量、认证、工作流、类型参考、最佳实践、错误处理、音频配置和参考链接;MIT、作者和版本元数据清晰。但缺少变更记录、维护责任与更新路径、兼容性矩阵、FAQ、故障排查、版本锁定和已知限制,且“当前版本”没有附证据。

有效结果6 / 15 · 2.0/5

文档可帮助用户搭建基本 Voice Live .NET 会话,并包含可直接改造的代码片段;但示例未形成完整可运行应用,音频采集播放、配置验证、重连、取消、并发、函数参数校验和生产部署仍需较多补充,实际 SDK 兼容性也未由文件内执行证据确认。静态审查限制分数不超过7。

证据核验3 / 10 · 1.5/5

技能列出 NuGet、API、GitHub 和 Quickstart 参考,并且仓库提供通用 CI、评估工作流和测试代码;但给定材料没有该技能专属测试套件、成功运行结果或第三方执行证据,关键 SDK 断言无法在静态阅读中独立复现。静态审查限制分数不超过5。

证据充分度: 评估于 2026年7月20日 审查版本 9ccaf7c3704a
使用前请注意
  • 不要将示例直接视为已验证可编译的生产代码;应锁定并核对 Azure.AI.VoiceLive 版本、模型部署名、端点格式和 API 类型。
  • 在启用函数调用或外部服务前,应增加参数校验、权限控制、用户确认、超时、审计和失败恢复,并避免记录原始音频、密钥或敏感对话。
  • 使用前应验证 Azure Voice Live 在目标区域及中国大陆网络环境中的服务可达性、合规性和数据驻留要求。
查看完整评分方法 →

它能做什么 & 适用场景

该技能面向使用 Azure.AI.VoiceLive SDK 的 .NET 开发者。它指导你通过 WebSocket 创建 VoiceLiveSession,配置语音、音频格式、语音活动检测和文本/音频模态。内容涵盖 Microsoft Entra 凭据与 API 密钥认证、事件流处理、用户消息、音频发送和函数调用。适合构建语音助手、实时语音对话和语音聊天机器人,但需要 Azure Voice Live 端点、模型部署以及相应的 Azure 权限。

提供 Azure.AI.VoiceLive、Azure.Identity 和 NAudio 的安装命令;说明如何配置端点、模型、语音和认证环境变量;展示如何创建 VoiceLiveClient、启动并配置 VoiceLiveSession;处理音频增量、文本增量、函数调用、错误和响应完成事件;发送用户消息、启动响应、传输音频,并返回函数调用结果。

  1. 需要在 .NET 中构建实时语音助手的 Azure 开发者,可用它配置双向 WebSocket 会话和语音回复。
  2. 开发语音到语音对话应用的团队,可用它处理 PCM16 音频、文本与音频响应流。
  3. 需要让语音助手调用天气等外部服务的开发者,可参考函数定义、参数解析和函数结果回传流程。
  4. 正在实现自然轮次检测的 .NET 开发者,可使用 AzureSemanticVadTurnDetection 配置阈值、前置填充和静默时长。

优缺点一览

优点
  • 针对 Azure.AI.VoiceLive .NET SDK,提供从安装、认证到事件循环的完整基础流程。
  • 覆盖双向 WebSocket 会话、实时音频、文本流和函数调用。
  • 包含 DefaultAzureCredential、语音选择、语音活动检测和错误处理示例。
  • 明确列出稳定版 v1.0.0 与预览版 v1.1.0-beta.1。
局限
  • 仅覆盖 .NET,不适用于 Python、TypeScript、Java 或 Rust 项目。
  • 需要 Azure Voice Live 端点和模型部署;成本与配额信息未在源材料中说明。
  • 音频采集和播放依赖 NAudio 或其他音频库,但未提供完整音频设备实现。
  • 源材料未展示该单项技能的独立测试结果。

如何安装

运行 npx skills add microsoft/skills,在安装向导中选择 azure-ai-voicelive-dotnet。该技能安装到所选 Agent 的目录,例如 GitHub Copilot 使用 .github/skills/。在 .NET 项目中安装依赖:dotnet add package Azure.AI.VoiceLivedotnet add package Azure.Identity,如需音频采集或播放,再安装 dotnet add package NAudio

如何使用

在支持 Agent Skills 的编码 Agent 中提出包含 “voice live” 或 “real-time voice” 的 .NET 开发请求。按技能示例创建 VoiceLiveClient,启动 VoiceLiveSession,配置模型、语音、模态和音频格式,然后通过 GetUpdatesAsync() 处理音频、文本、函数调用和错误事件。使用 Entra 认证时为资源分配 Cognitive Services User 角色;使用 API 密钥时设置相应密钥。

对比同类

Microsoft.CognitiveServices.Speech 相比,该技能聚焦 Azure.AI.VoiceLive 的实时双向语音和语音到语音交互;Speech SDK 在源材料中被列为语音转文本和文本转语音用途。NAudio 是用于音频采集与播放的辅助库,不是同类语音 AI SDK。

常见问题

使用 Entra 认证需要什么权限?
需要为 Azure 资源分配 `Cognitive Services User` 角色。
必须使用 API 密钥吗?
不必须。技能同时提供 Microsoft Entra Token Credential 和 AzureKeyCredential 两种方式,并建议优先使用 DefaultAzureCredential。
发生“Cancellation failed: no active response”错误怎么办?
源示例将包含该文本的错误视为可忽略的良性错误;其他错误应输出或处理其消息。
这个技能是否包含完整的前端或音频设备应用?
不包含。它提供 SDK 会话、事件和音频格式示例,音频采集或播放需要 NAudio 或其他音频库。

同仓库的其他 Skills

均来自 microsoft/agent-skills

开发与工程 ✓ Microsoft · 官方

Azure Identity Python 认证技能

为 Python Azure 应用提供基于 Microsoft Entra ID 的可复用身份认证指导。

开发与工程 ✓ Microsoft · 官方

Azure Event Hubs Java 开发技能

帮助 Java 开发者构建高吞吐、可 checkpoint 的 Azure 事件流应用。

开发与工程 ✓ Microsoft · 官方

Azure Tables Python 技能

帮助 Python 开发者使用 Azure Tables 完成安全认证、实体管理、查询与批量事务操作。

开发与工程 ✓ Microsoft · 官方

Azure Identity TypeScript

为 TypeScript Azure 应用配置安全、可切换的 Microsoft Entra ID 身份验证。

自动化与运维 ✓ Microsoft · 官方

Azure 应用可靠性顾问

评估并提升 Azure Functions 与 App Service 的可靠性。

开发与工程 ✓ Microsoft · 官方

Azure 云架构师

帮助编码代理按照 Azure 架构中心最佳实践设计和审查生产级云系统。

开发与工程 ✓ Microsoft · 官方

Azure AI 文本分析 Python 技能

为 Python 开发者提供 Azure 文本分析与自然语言处理集成指导。

自动化与运维 ✓ Microsoft · 官方

Azure 资源架构可视化器

分析 Azure 资源组及其依赖关系,生成详细的 Mermaid 架构图。

开发与工程 ✓ Microsoft · 官方

Azure Maps .NET 开发技能

为 .NET 应用提供地理搜索、路线、地图、定位与天气开发指导。

开发与工程 ✓ Microsoft · 官方

Azure AI Vision 图像分析技能

为 Python 编码代理提供 Azure AI Vision 图像理解实现指南。

开发与工程 ✓ Microsoft · 官方

Azure Blob Storage Python 技能

帮助 Python 开发者安全高效地操作 Azure Blob Storage。

开发与工程 ✓ Microsoft · 官方

Azure Queue Storage Python 技能

帮助编码代理使用 Python 构建安全、可靠的 Azure Queue Storage 异步消息处理。

自动化与运维 ✓ Microsoft · 官方

Azure AI 网关治理

用 Azure API Management 统一治理 AI 模型、MCP 工具和智能体流量。

自动化与运维 ✓ Microsoft · 官方

AKS Automatic 就绪评估

评估 Kubernetes 工作负载能否迁移到 AKS Automatic,并定位兼容性阻塞项。

开发与工程 ✓ Microsoft · 官方

Azure Cosmos DB .NET 资源管理技能

用 .NET 通过 ARM 部署和管理 Azure Cosmos DB 资源。

开发与工程 ✓ Microsoft · 官方

Azure Playwright 工作区管理技能

用 .NET 通过 Azure Resource Manager 配置和管理 Microsoft Playwright Testing 工作区。

开发与工程 ✓ Microsoft · 官方

Azure Cosmos DB Python 技能

帮助 Python 开发者可靠地构建和操作 Azure Cosmos DB NoSQL 应用。

开发与工程 ✓ Microsoft · 官方

Azure Key Vault Python SDK 技能

帮助 Python 编码代理安全管理 Azure Key Vault 中的机密、加密密钥和证书。

开发与工程 ✓ Microsoft · 官方

Azure API Management Python 技能

帮助编码代理使用 Python SDK 管理 Azure API Management 的服务、API、产品、订阅与策略。

开发与工程 ✓ Microsoft · 官方

Azure Monitor 查询 Python 技能

帮助 Python 开发者查询 Azure Monitor 日志与指标。

相关 Skills