开发与工程 ✓ Microsoft · 官方 java-sdkazure-voicelivewebsocketaudio-streamingvoice-activity-detectionreactive-programming

Azure AI VoiceLive Java 开发技能

帮助 Java 开发者构建基于 WebSocket 的实时双向 AI 语音对话。

FollowSkills 评估 · FSRS-2.0
不推荐
45/ 100 五分制 2.3 / 5
1 2 3 4 5 6
1信任安全11 / 25 · 2.2/5

提供 API Key 与 DefaultAzureCredential 两种认证方式,并建议使用托管身份;但未说明音频、转录、函数调用数据流、隐私保留、最小权限、用户确认或服务端外部副作用,也未提供敏感数据处理和恢复边界,因此扣分。

2可靠稳定7 / 20 · 1.8/5

主流程、音频参数和错误处理示例较完整,但多个事件类名、方法签名和示例之间存在潜在不一致;异步订阅缺少背压、生命周期和重连的可诊断处理,且未见针对该技能关键路径的测试,因此按静态证据限制扣分。

3适用触发8 / 15 · 2.7/5

触发词、Java SDK 目标和实时语音场景较明确,覆盖 API Key、托管身份、音频、VAD、事件及函数调用;但未声明不适用场景、服务可用性、区域限制、中文语音支持或中国大陆网络可达性,边界证据不足。

4规范维护9 / 15 · 3.0/5

SKILL.md 具备安装、环境变量、认证、核心流程、语音配置、函数调用、错误处理和参考链接,含 MIT、作者及版本元数据;但版本为 beta,未给出兼容矩阵、变更记录、维护责任细节、故障排查和完整限制说明,引用示例文件还明显截断。

5有效结果6 / 15 · 2.0/5

内容覆盖从客户端创建到音频收发和事件处理,理论上可帮助生成基础 VoiceLive Java 代码;但示例未在文件中提供可验证的构建或运行结果,存在 API/类型准确性和资源关闭方面的不确定性,用户仍需较多校验与修订。

6证据核验4 / 10 · 2.0/5

提供 SDK 源码和 samples 参考链接、固定依赖版本及仓库 CI/测试材料,具备有限追溯线索;但本次仅静态阅读,未见该技能专属测试、构建证据或第三方交叉验证,且关键引用未在材料中实际展开,因此扣分。

证据充分度: 评估于 2026年7月20日 审查版本 9ccaf7c3704a
使用前请注意
  • 不要将示例直接视为可运行代码;先用目标 beta.2 SDK 编译核对事件类型、方法签名和依赖版本。
  • 音频、转录、个人语音和函数调用可能涉及敏感数据或外部副作用;应在应用层补充告知、授权、最小权限、日志脱敏和函数执行确认。
  • 补充会话关闭、网络中断、重连、超时、限流、背压及麦克风/扬声器资源清理策略。
  • 确认 Azure VoiceLive 在目标区域、账户和中国大陆网络环境中的可用性,并验证中文语音能力。
查看完整评分方法 →

这个 Skill 能做什么,适合哪些场景?

该技能面向使用 Azure AI VoiceLive Java SDK 的开发者,涵盖实时双向语音会话、WebSocket 流式连接和反应式事件处理。它提供 Maven 依赖、API 密钥与 DefaultAzureCredential 身份验证示例,以及会话配置、音频输入、事件处理和语音选择代码。技能还说明了 24kHz、16 位、单声道 PCM 音频要求,并覆盖语音活动检测、转录、降噪、回声消除和函数调用。适合需要在 Java 应用中接入 AI 语音助手的项目,但源材料没有说明完整的测试覆盖或生产部署流程。

指导开发者添加 azure-ai-voicelive Maven 依赖,读取 VoiceLive 端点和身份验证环境变量,创建 VoiceLiveAsyncClient,启动 WebSocket 会话,配置语音、模态、音频格式、采样率、转录和服务器端语音活动检测。它示范发送 PCM16 音频块、订阅会话事件、播放响应音频增量、处理会话完成与错误事件,并配置 OpenAI、Azure Standard、Azure Custom 和 Azure Personal Voice。

  1. Java 团队需要构建能够实时收听和回应用户的 Azure AI 语音助手。
  2. 需要通过 WebSocket 将 PCM16 麦克风音频流式发送到 VoiceLive 的应用开发者。
  3. 需要使用服务器端语音活动检测来控制自然轮次和用户打断的对话系统。
  4. 需要在语音会话中启用 Whisper 输入转录、降噪或回声消除的 Java 项目。
  5. 需要让语音助手调用天气等自定义函数的开发者。

这个 Skill 有哪些优点和局限?

优点
  • 提供可复制的 Java 客户端、会话配置和事件处理示例。
  • 覆盖 API 密钥和 DefaultAzureCredential 两种身份验证方式。
  • 包含语音活动检测、打断、转录、降噪、回声消除和函数调用示例。
  • 明确列出实时音频格式要求和响应音频事件处理方式。
局限
  • SDK 依赖版本标记为 1.0.0-beta.2,属于测试版版本。
  • 源材料没有提供该技能专属的测试场景或验收结果。
  • 示例依赖外部 Azure VoiceLive 端点和实时 WebSocket 网络连接。
  • 没有说明麦克风采集、音频播放实现或完整生产部署步骤。

如何安装这个 Skill?

在技能集合安装向导中安装 Microsoft Agent Skills 仓库:

npx skills add microsoft/skills

然后选择 azure-ai-voicelive-java。源仓库说明技能会安装到所选 Agent 的目录,例如 GitHub Copilot 的 .github/skills/;具体目标目录由安装向导决定。

如何使用这个 Skill?

向编码 Agent 提出包含以下触发语句的请求:"VoiceLiveClient java"、"voice assistant java"、"real-time voice java"、"audio streaming java" 或 "voice activity detection java"。实现时添加 com.azure:azure-ai-voicelive:1.0.0-beta.2,设置 AZURE_VOICELIVE_ENDPOINT,并选择 AzureKeyCredential 或 DefaultAzureCredential。使用 VoiceLiveAsyncClient 启动会话,配置 VoiceLiveSessionOptions,发送 24kHz、16 位、单声道、小端有符号 PCM 音频,并订阅事件流。

常见问题

这个技能是否包含 Azure VoiceLive 服务本身?
不包含。它提供 Java SDK 的使用指导;仍需要配置 Azure VoiceLive 端点和相应身份验证。
必须使用 API 密钥吗?
不是。可以使用 AzureKeyCredential,也可以使用推荐的 DefaultAzureCredential 或生产环境中的具体令牌凭据。
音频输入有哪些要求?
源材料要求 24kHz 采样率、16 位 PCM、单声道、带符号小端格式。
它是否提供完整的音频采集和播放实现?
没有。示例使用 readAudioChunk() 和 playAudioChunk() 占位方法,具体设备或音频管线需要自行实现。

同仓库的其他 Skills

均来自 microsoft/agent-skills

开发与工程 ✓ Microsoft · 官方

Azure Voice Live Python 技能

帮助 Python 开发者构建 Azure 上的实时双向语音 AI 应用。

开发与工程 ✓ Microsoft · 官方

Azure Voice Live .NET 技能

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

开发与工程 ✓ Microsoft · 官方

Azure Event Hubs Java 开发技能

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

开发与工程 ✓ Microsoft · 官方

Azure AI Vision Java 图像分析技能

帮助 Java 开发者快速构建图像描述、OCR、目标检测与智能裁剪应用。

开发与工程 ✓ Microsoft · 官方

Azure Blob Storage Java 技能

帮助 Java 开发者可靠地构建 Azure Blob Storage 文件存储功能。

开发与工程 ✓ Microsoft · 官方

Azure Web PubSub Java 技能

为 Java 实时应用提供 Azure Web PubSub 的消息推送、群组管理与访问令牌模式。

开发与工程 ✓ Microsoft · 官方

Azure Cosmos DB Java 开发技能

帮助 Java 开发者构建具备分区、全球分布与响应式访问能力的 Cosmos DB 应用。

开发与工程 ✓ Microsoft · 官方

Azure CallingServer Java 遗留维护技能

帮助 Java 开发者维护旧版 CallingServer 代码并迁移到 Call Automation。

开发与工程 ✓ Microsoft · 官方

Azure Monitor 查询 Java 技能

用 Java 查询 Azure Monitor 日志与资源指标。

开发与工程 ✓ Microsoft · 官方

Azure 通信服务 Java 身份认证

为 Azure Communication Services Java 应用提供令牌认证、刷新与通信用户标识处理指导。

开发与工程 ✓ Microsoft · 官方

Azure Web PubSub Python 技能

帮助 Python 开发者构建基于 WebSocket 的 Azure 实时消息与发布订阅功能。

开发与工程 ✓ Microsoft · 官方

Azure Key Vault Java 密钥管理

为 Java 编码代理提供 Azure Key Vault 与 Managed HSM 密钥管理和密码运算指导。

开发与工程 ✓ Microsoft · 官方

Azure Batch Java 作业编排技能

帮助 Java 开发者在 Azure 上编排大规模并行与 HPC 批处理作业。

开发与工程 ✓ Microsoft · 官方

Azure Tables Java 开发技能

帮助 Java 开发者构建 Azure 表存储与 Cosmos DB 表 API 应用。

开发与工程 ✓ Microsoft · 官方

Azure Monitor Java 日志摄取

帮助 Java 应用通过 DCR 将自定义日志发送到 Azure Monitor。

开发与工程 ✓ Microsoft · 官方

Azure Event Grid Java 技能

帮助 Java 开发者使用 Azure Event Grid 构建事件发布、订阅与接收流程。

开发与工程 ✓ Microsoft · 官方

Azure 文档智能 Java 技能

帮助 Java 开发者使用 Azure 文档智能提取和分类文档数据。

开发与工程 ✓ Microsoft · 官方

Azure Voice Live TypeScript 技能

帮助开发者用 Azure 构建实时双向语音助手。

开发与工程 ✓ Microsoft · 官方

Azure Communication Chat Java

为 Java 开发者提供 Azure 实时聊天线程、消息与参与者管理的实现指南。

开发与工程 ✓ Microsoft · 官方

Azure 通信呼叫自动化 Java 技能

帮助 Java 开发者构建 IVR、呼叫路由、录音和语音交互工作流。

相关 Skills