К основному содержанию
скилл Claude Code CX Codex Cursor GitHub Copilot

azure-speech-to-text — скилл для Claude Code: обзор и установка

Транскрибирует аудио в текст через REST API Azure AI Speech с таймкодами слов и разделением по спикерам. Помогает собирать субтитры в пайплайнах OpenMontage без долгой локальной обработки.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add calesthio/OpenMontage --skill azure-speech-to-text -a claude-code
Открыть на GitHub

Что делает azure-speech-to-text

Скилл подключает синхронное распознавание речи через Azure Fast Transcription REST API внутри OpenMontage. Инструмент azure_stt отправляет локальный аудиофайл обычным multipart POST-запросом через библиотеку requests. Для работы не нужны тяжёлые SDK или хранилище Azure Blob. В ответ приходят сегменты текста с таймкодами слов и разделением по спикерам.

Выходной формат полностью совпадает со схемой локального инструмента transcriber на базе faster-whisper. Поэтому результат сразу передаётся в генератор субтитров subtitle_gen без конвертации. Можно явно задавать язык вроде en-US или передавать список candidate_locales для автоопределения. Также доступна настройка фильтра ненормативной лексики profanity_filter.

Для работы обязательно требуются доступ в сеть и переменные AZURE_SPEECH_KEY с AZURE_SPEECH_REGION. Одиночный запрос рассчитан на аудио до 2 часов или объёмом в несколько сотен мегабайт. Без ключа сервис не запустится, поэтому наличие локального faster-whisper в проекте остаётся надёжной страховкой.

Какие задачи решает

  • транскрибировать локальные аудиофайлы через облачный API Azure
  • получать посекундные таймкоды слов для генерации субтитров
  • разделять речь по спикерам без токенов HuggingFace
  • автоматически определять язык речи по заданному списку локалей

Примеры запросов агенту

  • Транскрибируй audio/interview.mp3 через azure_stt с разделением на 2 спикеров
  • Распознай речь в projects/video/narration.mp3 с помощью azure_stt на английском языке
  • Создай субтитры для voice.wav через azure_stt и сохрани таймкоды слов в artifacts

Как установить azure-speech-to-text

1Через Skills CLI (Vercel)

npx skills add calesthio/OpenMontage --skill azure-speech-to-text -a claude-code

2Вручную: положить файлы

~/.claude/skills/azure-speech-to-text/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/azure-speech-to-text/

Из того же набора28

Весь набор →
video-understand calesthio Скилл извлекает кадры из видео и расшифровывает аудио локально через ffmpeg и Whisper. Подходит для анализа роликов без API-ключей. Claude Code CX Codex Cursor +1 1 300установок remotion calesthio Скилл для вёрстки видео в Remotion с библиотекой переходов и правилами сборки сцен при 30 кадрах в секунду. Claude Code CX Codex Cursor +1 1 200установок video-download calesthio Скачивает видео, аудио и субтитры по URL через yt-dlp. Пригодится для получения файла, выбора качества или просмотра метаданных без загрузки. Claude Code CX Codex Cursor +1 1 200установок lottie-bodymovin calesthio Помогает переносить 12 принципов диснеевской анимации в векторные Lottie-ролики. Связывает формулы After Effects с управлением через JavaScript. Claude Code CX Codex Cursor +1 1 100установок create-video calesthio Скилл превращает описание в готовый видеоролик: пишешь, что хочешь видеть, а HeyGen генерирует сценарий, выбирает аватара, озвучивает и монтирует. Подходит для быстрого создания демо, объяснялок и промо без лишних настроек. Claude Code CX Codex Cursor +1 1 100установок video-toolkit calesthio Автоматизирует создание видео: генерирует закадровый голос, музыку, анимирует говорящие головы, компонует сцены через Remotion. Нужны Node.js, Python3, ffmpeg и доступ к облачным GPU (Modal или RunPod). Claude Code CX Codex Cursor +1 1 100установок text-to-speech calesthio Генерирует аудио из текста через HeyGen Starfish, подбирая голос, скорость и тон. Пригодится для озвучки, дикторского текста и подкастов. Claude Code CX Codex Cursor +1 1 100установок bfl-api Black Forest Labs Скилл помогает подключать BFL FLUX API для генерации и редактирования изображений. Нужен для асинхронных запросов, polling и вебхуков. Claude Code CX Codex Cursor +1 1 000установок

Похожие

open-notebook K-Dense-AI Организует исследовательские блокноты с конспектами, поиском и вопросами к документам через локальные или облачные модели. Пригодится при работе с селф-хостед альтернативой NotebookLM. Claude Code CX Codex Cursor +1 1 900установок scikit-survival K-Dense-AI Скилл для scikit-survival 0.28.0: агент собирает и проверяет модели выживаемости на цензурированных данных, от Cox PH до лесов, и считает метрики с поправкой на цензурирование. Claude Code CX Codex Cursor +1 1 900установок ads-microsoft AgriciDaniel Проверяет кампании Microsoft Ads, Bing Ads, UET и аудиторий сети: измерения, конверсии, импорты из Google, ключевые слова, креативы, ставки и бюджеты. Только чтение; изменения делает ads-optimize. Claude Code CX Codex Cursor +1 3 800установок langgraph-persistence langchain-ai Скилл по персистентности LangGraph: как подключить checkpointer, развести диалоги по thread_id и откатиться к прошлому состоянию графа. Claude Code CX Codex Cursor +1 18 000установок langgraph-fundamentals langchain-ai Скилл для написания кода LangGraph на любой платформе. Охватывает StateGraph, схемы состояния, ноды, рёбра, Command, Send, invoke, потоковую передачу и обработку ошибок. Claude Code CX Codex Cursor +1 18 000установок langchain-rag langchain-ai Даёт ИИ-агенту готовые шаблоны и код для сборки RAG-пайплайнов на LangChain в Python и TypeScript: от загрузки документов до векторного поиска. Claude Code CX Codex Cursor +1 17 500установок skill-creator официальный anthropics Помогает создать новый скилл, доработать существующий и проверить результат через тестовые промпты и оценки. Claude Code Claude.ai 414 180установок writing-for-agents Matt Pocock Помогает писать скиллы и документы с инструкциями для агентов. Пригодится при правках AGENTS.md, CLAUDE.md и связанных справочных файлов. Claude Code 466 719установок

Вопросы о azure-speech-to-text

Как установить azure-speech-to-text в Claude Code?

Выполните команду npx skills add calesthio/OpenMontage --skill azure-speech-to-text -a claude-code. Файл навыка сохранится по пути ~/.claude/skills/azure-speech-to-text/SKILL.md.

Что делает azure-speech-to-text?

Скилл отправляет локальное аудио в сервис Azure Fast Transcription и возвращает текст с таймкодами слов, детекцией языка и спикерами. Он служит быстрой облачной альтернативой локальной модели faster-whisper в OpenMontage.

Какие переменные окружения нужны для работы?

Необходимо задать AZURE_SPEECH_KEY и AZURE_SPEECH_REGION (или AZURE_SPEECH_ENDPOINT). Если ключи не настроены, OpenMontage переключается на локальный transcriber на базе faster-whisper.

Исходный текст

SKILL.md · MIT
---
name: azure-speech-to-text
description: Transcribe audio to text using Azure AI Speech (Fast Transcription REST API). Use when converting audio/video to text, generating subtitles, or processing spoken content in OpenMontage. Optional cloud STT provider — preferred when AZURE_SPEECH_KEY is configured; the local faster-whisper `transcriber` is the default offline path.
license: MIT
compatibility: Requires internet access and an Azure AI Speech resource (AZURE_SPEECH_KEY + AZURE_SPEECH_REGION).
metadata: {"openclaw": {"requires": {"env": ["AZURE_SPEECH_KEY", "AZURE_SPEECH_REGION"]}, "primaryEnv": "AZURE_SPEECH_KEY"}}
---

# Azure AI Speech — Speech-to-Text

Transcribe audio to text with **Azure Fast Transcription** — synchronous,
word-level timestamps, speaker diarization, and multi-language identification.
In OpenMontage this is exposed through the `azure_stt` tool (`capability=analysis`,
`provider=azure`). It is an **optional cloud STT provider** — when
`AZURE_SPEECH_KEY` is configured, prefer it for cloud transcription. The local
`transcriber` tool (faster-whisper) remains the **default offline path** and the
fallback when Azure is unavailable.

> Docs: [Fast Transcription](https://learn.microsoft.com/azure/ai-services/speech-service/fast-transcription-create) · [Speech service overview](https://learn.microsoft.com/azure/ai-services/speech-service/spx-overview)

## Why Fast Transcription (not Batch)

Azure exposes three STT surfaces. OpenMontage uses **Fast Transcription** because
the pipeline transcribes **local audio files**:

| Surface | Input | Latency | Needs |
|---------|-------|---------|-------|
| **Fast Transcription** (used here) | local file, multipart POST | synchronous, sub-real-time | key + region |
| Batch Transcription | audio at a URL (Blob + SAS) | async job + polling | Blob storage plumbing |
| Speech SDK (`spx`) | mic / stream / file | streaming | native `azure-cognitiveservices-speech` package |

Fast Transcription needs no Blob storage, no SAS URLs, and no native SDK — just
`requests` and the two env vars.

## Setup

Create a **Speech** resource in the [Azure portal](https://portal.azure.com);
copy the key and region from its **Keys and Endpoint** page.

```bash
export AZURE_SPEECH_KEY=your_speech_resource_key
export AZURE_SPEECH_REGION=eastus          # your resource's region
# export AZURE_SPEECH_ENDPOINT=https://...  # optional: overrides region
```

`azure_stt` reports `AVAILABLE` once `AZURE_SPEECH_KEY` plus either
`AZURE_SPEECH_REGION` or `AZURE_SPEECH_ENDPOINT` are set.

## Using it in a pipeline

Prefer `azure_stt` over `transcriber` unless the run must be offline. Its output
matches the `transcriber` schema exactly, so it is a drop-in for `subtitle_gen`
and any stage that consumes a transcript.

```python
from tools.tool_registry import registry
registry.discover()
stt = registry._tools["azure_stt"]

result = stt.execute({
    "input_path": "projects/my-video/assets/audio/narration.mp3",
    # "language": "en",          # ISO 639-1 or BCP-47 ("en-US"); omit for auto-ID
    # "diarize": True,           # speaker labels, no HuggingFace token needed
    # "max_speakers": 4,
    "output_dir": "projects/my-video/artifacts",
})
if result.success:
    segs = result.data["segments"]          # [{id,start,end,text,words:[...]}]
    words = result.data["word_timestamps"]  # flat [{word,start,end,probability}]
```

If `azure_stt` is unavailable (no key) or errors, fall back to `transcriber`
(local whisper) — its `execute` signature and output are identical.

## Parameters that matter

- **`language`** — pass an ISO code (`"en"`) or a full locale (`"en-US"`). Pin it
  when you know the language; it is faster and more accurate than auto-ID.
- **`candidate_locales`** — when `language` is omitted, Azure runs language
  identification across this shortlist. Narrow it to the languages you actually
  expect; a huge list slows detection and invites misclassification.
- **`diarize` / `max_speakers`** — enable for multi-speaker audio (interviews,
  podcasts). Set `max_speakers` to the real upper bound.
- **`profanity_filter`** — `None` | `Masked` (default) | `Removed` | `Tags`.

## Response shape (mapped to the transcriber schema)

The raw Azure response (`phrases[]` with `offsetMilliseconds` / `words[]`) is
converted to seconds and the OpenMontage transcript schema:

```json
{
  "segments": [
    {"id": 0, "start": 0.0, "end": 2.4, "text": "Hello world",
     "speaker": 1,
     "words": [{"word": "Hello", "start": 0.0, "end": 0.5, "probability": 0.98}]}
  ],
  "word_timestamps": [{"word": "Hello", "start": 0.0, "end": 0.5, "probability": 0.98}],
  "language": "en-US",
  "duration_seconds": 2.4,
  "provider": "azure"
}
```

Note: Fast Transcription has no *per-word* confidence, so each word carries the
**phrase** confidence in `probability`.

## Limits & tips

- Single file up to ~2 hours / a few hundred MB per request. For longer or bulk
  jobs, use Azure Batch Transcription instead.
- Send clean audio (16 kHz+ mono is plenty). Transcode video to audio first if
  you only need speech — smaller upload, same result.
- Verify timing: word timestamps drive subtitle cues in `subtitle_gen`. Spot-check
  the first and last cues against the source audio.

© calesthio · MIT · calesthio/OpenMontage

Смотрите также

Спонсоры проекта

Компании, которые помогают держать аналитику открытой