7.4 KiB
| name | description | version | metadata | ||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| meeting-report | Generates meeting reports from audio recordings using local Whisper ASR | 1.0.0 |
|
Meeting Report Skill
Описание / Description
Этот навык транскрибирует аудиозаписи совещаний с помощью локально развёрнутого Whisper ASR, объединяет транскрипции из нескольких источников и создаёт структурированный отчёт о встрече в форматах Markdown и PDF.
Триггеры / Triggers
- "meeting report", "generate report", "transcribe meeting", "audio report", "отчёт о встрече", "сформируй отчёт", "расшифруй запись"
Инструкции / Instructions
1. Подготовка окружения / Environment setup
Убедитесь, что установлены требуемые переменные окружения:
WHISPER_URL– URL локального Whisper сервера (например,http://localhost:8000)WHISPER_API_KEY– API ключ для доступа к Whisper серверу (Bearer токен)
2. Запуск генерации отчёта / Generate a report
bash scripts/generate_report.sh <meeting-date-dir>
Пример:
bash scripts/generate_report.sh 2026-04-29
Ожидаемая структура:
text 2026-04-29/ ├── .WAV # исходные аудиофайлы (Saramonic, Zoom H2n) ├── transcription/ # создаётся автоматически ├── merged.json # объединённые сегменты ├── merged_plain.txt # сплошной текст для LLM └── report.pdf # финальный отчёт 3. Что делает generate_report.sh Обнаруживает источники – Saramonic (.WAV), Zoom H2n (SRXY.WAV, SRMS.WAV)
Конвертирует в MP3 и транскрибирует через Whisper (с поддержкой hotwords)
Объединяет транскрипции из нескольких источников (основной + аудитория)
Конвертирует готовый report.md в PDF с помощью pandoc и xelatex
- Ручное использование скриптов / Manual script usage Транскрипция одного файла:
bash bash scripts/transcribe.sh <meeting_dir> <audio.WAV> <output_name> Объединение двух JSON транскрипций:
bash python3 scripts/merge_transcriptions.py <primary.json> <secondary.json> <output_dir> Конкатенация WAV в MP3:
bash bash scripts/concat_wav.sh <output.mp3> <input1.WAV> <input2.WAV> ... Чанковое транскрибирование (очень длинные записи):
bash bash scripts/transcribe_chunked.sh <input.mp3> <output_name> <output_dir> 5. Горячие слова / Hotwords Файл hotwords.txt содержит термины, организацию, имена и аббревиатуры, повышающие точность распознавания. Переопределяется через переменную HOTWORKS_PATH.
6. Инструкции для агента по формированию отчёта / Agent instructions for report generation
После того как скрипт generate_report.sh завершил транскрипцию и объединение источников, агент обязан самостоятельно создать файл report.md в директории встречи.
Требования к отчёту report.md
- Содержание: детальное, информативное описание хода встречи, включая:
- обсуждавшиеся темы и вопросы,
- принятые решения и договорённости,
- ход встречи
- назначенные задачи и ответственных,
- ключевые выводы и следующие шаги.
- Стиль: корпоративный, деловой, соответствующий IT‑компании (чётко, по делу, без разговорной речи).
- Формат: Markdown с заголовками, списками, выделением важного.
- Запрещено: прямые цитаты из транскрипции. Пересказывайте содержание своими словами, сохраняя все смысловые детали.
- Язык: русский (основной), технические термины допустимы на английском.
Как агент должен действовать
- Дождаться завершения работы
generate_report.sh(или выполнить его самостоятельно). - Прочитать содержимое файла
merged_plain.txt(илиmerged.txt), который лежит в папке встречи.
Этот файл содержит полный текст транскрипции без таймкодов (или с ними, но для пересказа удобнее plain). - Создать (перезаписать) файл
report.mdв директорииreport, лежащей в папке встречи, следуя указанным выше требованиям. - Сгенерировать PDF одним из способов:
- Способ А (рекомендуемый): повторно выполнить
bash scripts/generate_report.sh <meeting-date-dir>.
Скрипт обнаружит уже существующийreport.mdи сконвертирует его вreport.pdf. - Способ Б: вручную выполнить команду
pandoc report.md -o report.pdf --pdf-engine=xelatex ...(параметры см. в скрипте).
- Способ А (рекомендуемый): повторно выполнить
Пример запроса агента пользователю
После того как транскрипция готова, агент может написать:
Транскрипция встречи завершена. Я подготовлю на её основе детальный отчёт в корпоративном стиле (без прямых цитат) и сохраню его в
report.md, а затем сконвертирую в PDF. Подождите немного.
После выполнения агент сообщает: «Отчёт сгенерирован: /path/to/meeting/report.pdf».
Примечания / Notes Скрипты ожидают локальный Whisper сервер, совместимый с API OpenAI (endpoint /v1/audio/transcriptions), с аутентификацией Bearer.
Для длинных сегментов рекомендуется использовать transcribe_chunked.sh. Он автоматически разбивает аудио по паузам тишины.
Для PDF требуется установленный pandoc, xelatex и шрифты DejaVu.