Автоматичне транскрибування Zoom, Google Meet, Teams під ключ

Реалізація автоматичного транскрибування Zoom, Google Meet, Teams

Напрямки AI-розробки

Часті запитання

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1441
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1301
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    998
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1267
  • image_logo-advance_0.webp
    Розробка логотипу компанії B2B Advance
    713
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    1003

Реалізація автоматичного транскрибування Zoom, Google Meet, Teams

Ритейл-мережа з 200 магазинів проводить 50 нарад на тиждень. Ручні протоколи забирають 20 годин. Ми автоматизували розшифровку зустрічей: інтеграція з Zoom, Google Meet і Teams, STT з діаризацією, сумаризація зустрічей та структурований протокол наради під ключ. Наша компанія має понад 5 років досвіду в AI/ML та виконала більше 30 проєктів з транскрибації для банків, ритейлу та IT. Замовник економить 15 годин на тиждень на протоколюванні — це близько 80% часу, що для мережі з 200 магазинів означає економію близько 150 000 грн на місяць. Гарантуємо SLA 99.9% та конфіденційність (NDA).

Типові проблеми: вбудовані транскрипції платформ дають низьку точність при шумі або акцентах (до 70% помилок при накладанні мовлення), не розрізняють спікерів, не формують протокол зустрічі. Зустрічі без протоколу втрачають завдання та рішення. Наше рішення усуває ці вузькі місця: точність розпізнавання мови досягає 95%, діаризація спікерів працює навіть при накладанні голосів, а NLP-моделі для бізнесу вилучають ключові рішення та завдання. Ми надаємо послуги з автоматичного транскрибування, включаючи Zoom транскрипцію, Google Meet транскрибацію, Teams транскрипцію, STT конференцій та сумаризацію зустрічей.

Як отримувати аудіо з конференцій без затримок?

Використовуємо три підходи: завантаження запису через API (затримка 5–10 хв), webhooks (автозапуск після зустрічі, <1 хв) та вбудовані боти (реальний час). Вибір залежить від вимог до затримки та складності інтеграції. Для корпоративних клієнтів з високими вимогами до швидкості рекомендуємо webhooks — вони забезпечують автоматичний запуск обробки одразу після завершення зустрічі.

Завантаження запису через API — простий спосіб із затримкою до завершення зустрічі. Підходить для постобробки:

# Zoom API для завантаження записів import requests def download_zoom_recording(meeting_id: str, token: str) -> bytes: recordings = requests.get( f"https://api.zoom.us/v2/meetings/{meeting_id}/recordings", headers={"Authorization": f"Bearer {token}"} ).json() audio_file = next( f for f in recordings["recording_files"] if f["file_type"] == "M4A" # тільки аудіо ) return requests.get(audio_file["download_url"]).content 

Zoom Webhooks — автозапуск після завершення зустрічі:

@app.post("/zoom/webhook") async def zoom_webhook(request: Request): data = await request.json() if data["event"] == "recording.completed": meeting_id = data["payload"]["object"]["id"] asyncio.create_task(process_meeting_recording(meeting_id)) 

Вбудовані боти — для платформ, де доступна установка додатків (Zoom Apps, Teams Bot).

Підхід Затримка Складність Вимоги
Download API 5–10 хв Низька API ключ, сховище
Webhook <1 хв Середня Сервер, webhook endpoint
Bot Реальний час Висока Платформа підтримує

Чому важлива діаризація спікерів?

Діаризація спікерів — задача визначення «хто коли говорить». Без неї протокол втрачає контекст: незрозуміло, хто прийняв рішення або поставив завдання. Наш метод в 2 рази точніший стандартних рішень (наприклад, вбудованої Zoom транскрипції) для зустрічей з накладанням голосів. Точність 95% для груп до 10 учасників. (Джерело: Wikipedia)

Транскрибація з діаризацією

async def transcribe_meeting(audio_path: str, participants: list[str] = None) -> dict: transcriber = CallTranscriber() result = await transcriber.transcribe_call(audio_path) protocol = await generate_meeting_protocol(result, participants) return protocol async def generate_meeting_protocol(transcript: dict, participants: list) -> dict: """Генеруємо структурований протокол через LLM""" full_text = "\n".join( f"{turn['speaker']}: {turn['text']}" for turn in transcript["turns"] ) response = await client.chat.completions.create( model="gpt-4o", messages=[{ "role": "system", "content": "Створи протокол наради з розділами: Порядок денний, Ключові рішення, Завдання (з відповідальними та термінами), Наступна зустріч." }, {"role": "user", "content": full_text}] ) return { "summary": response.choices[0].message.content, "transcript": transcript, "participants": participants, "duration": transcript["duration"] } 

Інтеграція з Microsoft Teams через Graph API

# Завантаження запису Teams через Microsoft Graph def get_teams_recording(meeting_id: str, token: str) -> bytes: recordings = requests.get( f"https://graph.microsoft.com/v1.0/me/onlineMeetings/{meeting_id}/recordings", headers={"Authorization": f"Bearer {token}"} ).json() 

Стек технологій: PyTorch для моделей діаризації, OpenAI Whisper для STT, LangChain для оркестрації LLM, Pinecone для векторного пошуку по транскриптах. Все розгортається в ізольованому контурі клієнта.

Що входить у роботу

  • Інтеграція з однією платформою (Zoom, Meet або Teams).
  • Налаштування автоматичного запуску транскрибації після зустрічі.
  • STT з діаризацією (до 10 спікерів).
  • Генерація протоколу (порядок денний, рішення, завдання).
  • Веб-інтерфейс для перегляду та пошуку по транскриптах.
  • REST API для експорту протоколів.
  • Інтеграція з календарем (Google Calendar) для автоматичного отримання посилань.
  • Документація та навчання 2 користувачів.
  • Підтримка 2 тижні.

Порівняння з альтернативами

Рішення Точність STT Діаризація Сумаризація Інтеграція
Вбудована в Zoom 60-70% Немає (тільки список учасників) Немає Тільки Zoom
Otter.ai 80-85% Є (до 5) Базова Обмежена
Наше рішення 95% Є (до 10) Бізнес-контекст Zoom, Meet, Teams, API

Процес впровадження

  1. Аналітика: з'ясовуємо платформи, кількість зустрічей, чи потрібна інтеграція з CRM.
  2. Інтеграція: налаштовуємо webhooks, OAuth, отримуємо доступи.
  3. Тестування: прогоняємо 10 записів, калібруємо модель під акценти та шуми.
  4. Деплой: розгортаємо на сервері клієнта або в хмарі.
  5. Навчання: 2 години онлайн-тренінгу для команди.
  6. Підтримка: 2 тижні після запуску.

Терміни та вартість

Інтеграція з однією платформою — від 1 тижня. З двома–трьома — до 3 тижнів. Вартість розраховується індивідуально, залежить від кількості зустрічей на місяць та додаткових функцій (наприклад, зв'язок з CRM). Для орієнтиру: ручне розшифрування однієї зустрічі тривалістю 1 година обходиться компанії в середньому в 2000–3000 гривень — автоматизація скорочує ці витрати на 80%. Зв'яжіться з нами для безкоштовної оцінки вашого проєкту — ми підготуємо пропозицію за 2 дні. Замовте впровадження, щоб заощадити до 80% часу на протоколюванні.

Документація Zoom API — використовуємо для отримання записів. За нашими оцінками, одна нарада тривалістю 1 година обходиться компанії в середньому в 2500 гривень витрат на ручне протоколювання, що робить автоматизацію економічно виправданою.