Whisper + GPT для транскрипции совещаний 2026: AI-ассистент для встреч
Полный путь к AI-ассистенту для встреч за выходные: Whisper, диаризация, саммари через Claude/GPT/YandexGPT, интеграция с Notion/Trello/Telegram. Юр-нюансы РФ, кейс автора.
Коротко (TL;DR)
- За 2024-2026 транскрипция совещаний прошла путь от «дорого и неточно» к «бесплатно и почти идеально». Whisper Large-v3 даёт качество, на которое в 2022 был способен только дорогой профессиональный человек-стенографист.
- Полный стек AI-ассистента для встреч: запись → Whisper (транскрипция) → pyannote (диаризация) → GPT/Claude/YandexGPT (саммари + action items) → Notion/Telegram/Trello (хранение и уведомления).
- Локально на MacBook M2/M3: 1 час аудио = 5-15 минут обработки, всё приватно. Через OpenAI Whisper API: $0.36 за 1 час, ещё быстрее.
- Юр-нюансы: согласие участников на запись обязательно (152-ФЗ + ст. 23 Конституции РФ). Конфиденциальные данные — нельзя в облачные LLM, только локально.
- Кейс автора: время на пост-обработку встреч 30 минут → 0 минут, саммари приходит участникам через 10 минут после встречи. Внедрю AI-ассистент для встреч под ключ.
Зачем AI-ассистент для встреч
В каждой компании, где я бывал по консультациям за последние три года, повторяется одна и та же сцена: совещание на час, обсудили десять вопросов, приняли пять решений, договорились о семи действиях. Через две недели — никто ничего не помнит. Половина action items так и не выполнена, потому что про них забыли. Решения по сложным вопросам пересматриваются заново, потому что никто не помнит, что уже решали. Новый сотрудник приходит и спрашивает «а почему мы это делаем именно так?» — никто не помнит.
Конкретные боли, которые я слышу от клиентов:
- Никто не пишет протокол. Назначенного «ведущего» нет, у каждого ноут открыт, никто реально не конспектирует.
- Половина участников «забыла что обсуждали». Через неделю остаётся туманное «о чём-то говорили, кажется решили».
- Action items не отслеживаются. Договорились — забыли — не сделали. Через месяц обсуждаем то же самое заново.
- Новый сотрудник не знает контекста. Чтобы ввести его в курс, нужно объяснять историю проекта на словах, что-то забывается, что-то искажается.
- Конфликты «кто что обещал». Без записи «он сказал — я не говорил» — частая ситуация в командах с разной памятью.
AI-ассистент для встреч решает всё это одним махом. Встреча идёт как обычно — никто специально не конспектирует. Через 10 минут после её окончания все участники получают: краткое саммари (что обсуждали), список принятых решений, список action items с исполнителями и сроками, список открытых вопросов. Если настроено — задачи автоматически попадают в Trello/Linear/Jira, action items уходят в Telegram-канал команды.
Я лично пользуюсь таким ассистентом второй год. Время на пост-обработку встреч ушло с 20-30 минут до нуля. И главное — стало возможно через год вернуться и найти, что обсуждалось на конкретной встрече, кто что обещал, какие были аргументы за и против.
Стек AI-ассистента — обзор архитектуры
В полном виде AI-ассистент для встреч состоит из шести слоёв. На каждом — есть несколько альтернатив, можно собрать под свой бюджет, требования к приватности, объём встреч.
- 1. Запись звука. Zoom, Google Meet, Яндекс.Телемост, Jitsi, Telegram-конференции. Каждый умеет сохранять mp3/m4a/wav-файл по итогам встречи. Для офлайн-встреч — простой диктофон в телефоне.
- 2. Транскрипция. Whisper (OpenAI) — стандарт де-факто. Варианты: whisper.cpp (CPU/локально), faster-whisper (быстрая реализация на CTranslate2), WhisperX (с диаризацией), distil-whisper (быстрее, чуть менее точно), OpenAI Whisper API (облачно).
- 3. Диаризация — кто что сказал. pyannote.audio — open-source-стандарт. Без диаризации транскрипт превращается в «стену текста», в которой непонятно, кто говорит. С диаризацией — нормальный читаемый формат «Спикер 1: ... Спикер 2: ...».
- 4. Саммаризация и action items. Claude 3.5/4 Sonnet, GPT-4o, YandexGPT 5 Pro, GigaChat 3 Max, локальная Llama 3.3 / Qwen 2.5. Выбор зависит от объёма контекста, требования к приватности и бюджета.
- 5. Хранение. Notion, Confluence, Obsidian, Google Docs, внутренняя wiki. Где удобно команде.
- 6. Уведомления. Email, Slack, Telegram, MAX, Mattermost. Куда пишет команда — туда и уведомления.
Все шесть слоёв — это не «надо обязательно всё». Минимально работающий ассистент = слои 1, 2, 4: запись, транскрипция, саммари в файл. Это уже даёт 80% пользы. Остальные слои — наращиваются по мере зрелости процесса.
Whisper — обзор реализаций
Whisper — это open-source speech-to-text-модель от OpenAI, выпущенная в 2022 году. С тех пор она получила несколько версий (large-v1, v2, v3, и сейчас large-v3-turbo). К 2026 году качество распознавания русского близко к идеальному: модель справляется с акцентами, шумной записью, перекрытиями голосов, специфической терминологией.
За четыре года вокруг Whisper выросла целая экосистема. Перечисляю варианты, которые имеют смысл в 2026:
whisper.cpp
Порт Whisper на C++, оптимизированный для CPU. Главное достоинство — работает на всём, даже на старых ноутах без GPU. На MacBook использует Apple Silicon GPU через Metal, на десктопах — Nvidia GPU через CUDA. Самый универсальный вариант. На MacBook M3 Max — 1 час аудио обрабатывается за 5-8 минут.
faster-whisper
Реализация на основе CTranslate2 — оптимизированной runtime для трансформеров. На GPU работает в 2-4 раза быстрее оригинального Python-whisper. Идеально для серверных deployment, где обрабатываются большие объёмы.
WhisperX
Whisper плюс встроенная диаризация (через pyannote) и выравнивание по времени на уровне слов (через wav2vec2). Один пайплайн — на выходе уже готовый структурированный транскрипт. Самое удобное в 2026 для быстрого старта.
distil-whisper
Дистиллированная версия Whisper от Hugging Face. В 6 раз быстрее large-v3, на 1% хуже по точности на английском, на русском проседает заметнее (на 3-5%). Брать, если важна скорость в ущерб качеству, и если основной язык — английский.
OpenAI Whisper API
Облачный сервис от OpenAI. Цена $0.006 за минуту аудио, скорость — почти real-time. Удобно для случаев, когда нужно быстро и не страшно отдать аудио в OpenAI. Не подходит для конфиденциальных встреч с ПД.
Какую размерность модели брать. У Whisper есть варианты tiny, base, small, medium, large. Большие модели качественнее, но медленнее и тяжелее. В 2026 году для русского языка имеет смысл только large-v3 — все остальные варианты заметно проигрывают по точности на разговорной речи с акцентами и фоновым шумом. distil-whisper-large-v3 — если важна скорость.
Качество русского Whisper large-v3 я оцениваю так: 95-98% правильно распознанных слов в нормальной записи без сильных помех. Имена собственные, термины, цифры — могут искажаться, но контекст обычно позволяет понять. Стенограмма получается высокого качества, требует минимальной редактуры.
Локальная транскрипция vs облачная
Главный вопрос — где запускать Whisper. Локально (на своём ноуте или сервере) или в облаке. Сравнение для типичной встречи 1 час, моно 16 kHz:
| Реализация | Цена за час аудио | Время обработки | Качество русского | Приватность |
|---|---|---|---|---|
| whisper.cpp на MacBook M3 Max | $0 (бесплатно) | 5-8 минут | Отлично (large-v3) | Полная |
| whisper.cpp на MacBook Air M2 | $0 | 15-25 минут | Отлично (large-v3) | Полная |
| faster-whisper на RTX 4090 | $0 (бесплатно после железа) | 2-4 минуты | Отлично (large-v3) | Полная |
| OpenAI Whisper API | $0.36 | 1-2 минуты | Отлично | Минимальная (отправка в OpenAI) |
| Replicate (whisper-large-v3) | $0.40-0.60 | 2-5 минут | Отлично | Минимальная |
| Yandex SpeechKit | ~25 ₽ | Real-time | Очень хорошо | В РФ (плюс по 152-ФЗ) |
| fal.ai (whisper-v3) | $0.30-0.50 | 1-3 минуты | Отлично | Минимальная |
Что выбрать на практике:
- Личные/командные встречи без жёсткой конфиденциальности. OpenAI Whisper API — самый быстрый и удобный. $0.36 за час, нулевая возня с локальным запуском.
- Конфиденциальные встречи, любые ПД клиентов, NDA-материалы. Только локальный Whisper (whisper.cpp или faster-whisper). Никакой облачной API.
- Бюджет ограничен, готовы к локальному запуску. Локальный Whisper на любом ноуте с 8+ ГБ RAM. Бесплатно, качество то же.
- Российская инфраструктура, не хотите трогать Apple/OpenAI. Yandex SpeechKit. По цене сопоставимо с OpenAI API, юридически чисто в РФ.
- Очень большие объёмы (десятки часов в день). faster-whisper на собственном GPU-сервере с RTX 4090 / H100. Окупается за пару месяцев на больших нагрузках.
Установка whisper.cpp за 5 минут
Если выбрали локальный вариант — вот пошаговая инструкция. Тестировал на macOS, Linux, должно работать одинаково.
# 1. На macOS — установка через Homebrew (самый быстрый путь)
brew install whisper-cpp
# 2. Скачиваем модель large-v3 (около 3 ГБ)
# Создаём папку под модели
mkdir -p ~/models/whisper
cd ~/models/whisper
# Скачиваем large-v3 в формате GGML
curl -L -o ggml-large-v3.bin \
https://huggingface.co/ggerganov/whisper.cpp/resolve/main/ggml-large-v3.bin
# 3. Транскрибируем тестовый файл
# whisper.cpp работает с wav 16kHz mono.
# Если у вас mp3 или m4a — сначала конвертируем через ffmpeg:
ffmpeg -i meeting.mp3 -ar 16000 -ac 1 -c:a pcm_s16le meeting.wav
# Транскрипция, русский язык
whisper-cli \
-m ~/models/whisper/ggml-large-v3.bin \
-f meeting.wav \
-l ru \
--output-srt \
--output-txt
# На выходе — meeting.txt (чистый текст) и meeting.srt (с тайм-кодами)
На MacBook M3 Max 1 час моно-аудио будет транскрибирован за 5-8 минут. На MacBook Air M2 — 15-25 минут (тоже терпимо для не-real-time-сценария). На Windows ставится аналогично через WSL или через pre-built бинарники из релизов whisper.cpp на GitHub.
Альтернатива через Python и faster-whisper для серверного варианта:
# pip install faster-whisper
from faster_whisper import WhisperModel
# Загружаем large-v3 (первый запуск качает модель ~3 ГБ)
model = WhisperModel("large-v3", device="cuda", compute_type="float16")
# На macOS / без GPU: device="cpu", compute_type="int8"
segments, info = model.transcribe(
"meeting.wav",
language="ru",
beam_size=5,
vad_filter=True, # Voice Activity Detection — отрезает паузы
)
print(f"Язык: {info.language}, длительность: {info.duration:.1f}s")
for segment in segments:
print(f"[{segment.start:.1f}s -> {segment.end:.1f}s] {segment.text}")
Диаризация — кто что сказал
Голый транскрипт без разметки спикеров — это «стена текста». Читать неудобно, искать что-то невозможно, использовать для поиска решений — тяжело. Диаризация добавляет в транскрипт метки «кто говорит», и текст превращается в нормальный диалог.
Стандарт 2026 года — pyannote.audio, библиотека от французской команды. Бесплатна, open-source, требует регистрации на Hugging Face и принятия пользовательского соглашения (бесплатно). Качество — самое высокое из open-source-решений.
Полный пайплайн «транскрипция + диаризация» через WhisperX:
# pip install whisperx torch torchaudio
import whisperx
import gc
device = "cuda" # или "cpu" / "mps" для Mac
batch_size = 16
compute_type = "float16"
# 1. Транскрипция через faster-whisper
model = whisperx.load_model("large-v3", device, compute_type=compute_type)
audio = whisperx.load_audio("meeting.wav")
result = model.transcribe(audio, batch_size=batch_size, language="ru")
del model; gc.collect()
# 2. Выравнивание на уровне слов
model_a, metadata = whisperx.load_align_model(language_code="ru", device=device)
result = whisperx.align(
result["segments"], model_a, metadata, audio, device,
return_char_alignments=False,
)
del model_a; gc.collect()
# 3. Диаризация — нужен HF_TOKEN с принятым соглашением pyannote/speaker-diarization-3.1
diarize_model = whisperx.DiarizationPipeline(
use_auth_token="hf_...",
device=device,
)
diarize_segments = diarize_model(audio, min_speakers=2, max_speakers=6)
# 4. Сопоставление спикеров с сегментами
result = whisperx.assign_word_speakers(diarize_segments, result)
# Печать в человекочитаемом виде
for segment in result["segments"]:
speaker = segment.get("speaker", "UNKNOWN")
text = segment["text"].strip()
print(f"{speaker}: {text}")
На выходе получается транскрипт в формате:
SPEAKER_00: Давайте начнём с обсуждения вопроса по новому модулю... SPEAKER_01: Я думаю, что нам стоит сначала разобраться с архитектурой SPEAKER_00: Согласен. Какие у тебя варианты? SPEAKER_02: Можно поделиться экраном, я покажу схему...
Дальше остаётся либо вручную проставить настоящие имена («SPEAKER_00 = Иван»), либо использовать дополнительную модель voice recognition для автоматического матчинга по голосовым отпечаткам (если у вас есть «эталонные» сэмплы голоса каждого участника).
Саммаризация через GPT/Claude/YandexGPT
Транскрипт с диаризацией готов. Дальше нужен LLM, который из него сделает структурированное саммари. Какую модель выбрать в 2026 году:
- Claude 3.5 / 4 Sonnet. Лучший выбор для длинных встреч. Контекст 200k токенов = до 4-5 часов аудио целиком в одном промпте. Качество резюме — эталонное. Цена около $3 за миллион входных токенов.
- GPT-4o. Быстрее Claude, чуть дешевле, контекст 128k. Качество сопоставимо.
- YandexGPT 5 Pro. Российский вариант, легально для ПД из РФ. Контекст 32k, но обычно хватает на встречу 1-1.5 часа. Цена в рублях.
- GigaChat 3 Max. Контекст 128k токенов (огромное преимущество), отлично для длинных встреч. Российская юрисдикция.
- Локальная Llama 3.3 70B / Qwen 2.5 72B. Если железо тянет — приватно, бесплатно после старта. Качество сопоставимо с GPT-4o на задачах саммаризации.
Мой стандарт: Claude Sonnet — для длинных и сложных встреч; GPT-4o — для обычных рабочих звонков; локальная Qwen 2.5 — для конфиденциальных встреч с ПД клиентов.
Пример вызова Claude для саммари в структурированном JSON:
# pip install anthropic
import anthropic
import json
client = anthropic.Anthropic(api_key="sk-ant-...")
SYSTEM_PROMPT = """Ты — ассистент, который анализирует транскрипты деловых встреч.
По транскрипту составляй структурированное резюме в формате JSON со следующими полями:
{
"summary": "Краткое резюме встречи в 3-5 предложениях",
"topics": ["список основных обсуждаемых тем"],
"decisions": [
{"decision": "Что было решено", "rationale": "Почему"}
],
"action_items": [
{
"task": "Что нужно сделать",
"owner": "Кто отвечает (имя или 'не указано')",
"deadline": "Срок (ISO 8601 или 'не указан')"
}
],
"open_questions": ["Список нерешённых вопросов для следующей встречи"],
"next_meeting_topics": ["Темы для следующей встречи"]
}
Правила:
1. Используй только информацию из транскрипта, не выдумывай.
2. Если про срок ничего не сказано — пиши "не указан".
3. Если ответственный не назван явно — пиши "не указано", не угадывай.
4. Решения и action items должны быть конкретными, не общими формулировками.
5. Открытые вопросы — это вопросы, которые подняли, но не закрыли в ходе встречи.
Отвечай только валидным JSON, без префиксов и пояснений."""
def summarize_meeting(transcript: str) -> dict:
message = client.messages.create(
model="claude-sonnet-4-5",
max_tokens=4096,
system=SYSTEM_PROMPT,
messages=[
{"role": "user", "content": f"Транскрипт встречи:\n\n{transcript}"},
],
)
return json.loads(message.content[0].text)
# Использование
with open("meeting_transcript.txt", encoding="utf-8") as f:
transcript = f.read()
summary = summarize_meeting(transcript)
print(json.dumps(summary, ensure_ascii=False, indent=2))
Шаблон промпта для совещаний
В предыдущем разделе я уже показал базовый system prompt. Но за несколько проектов я довёл его до более продвинутой версии, которая стабильно работает на самых разных типах встреч — продуктовых, технических, продажных, проектных. Привожу полный шаблон.
SYSTEM_PROMPT_V2 = """Ты — опытный бизнес-аналитик и секретарь, которому поручено
проанализировать транскрипт деловой встречи и подготовить структурированный отчёт.
КОНТЕКСТ:
- Транскрипт может содержать ошибки распознавания речи (искажённые имена,
термины, цифры). Используй логический контекст для интерпретации.
- Спикеры могут перебивать друг друга, говорить параллельно.
- Не вся высказанная информация — это «решения» или «задачи».
Обсуждение != решение.
ТВОЯ ЗАДАЧА — выдать JSON со следующей структурой:
{
"meeting_type": "Тип встречи (продуктовая / техническая / продажная / др.)",
"summary": "Резюме в 3-5 предложениях для тех, кто не был на встрече",
"key_points": ["3-7 ключевых тезисов"],
"decisions": [
{
"decision": "Чёткая формулировка решения",
"rationale": "Почему так решили",
"stakeholders": ["Кто причастен / соглашался"]
}
],
"action_items": [
{
"task": "Конкретная задача в императиве (Сделать X, Подготовить Y)",
"owner": "Имя ответственного или 'не назначен'",
"deadline": "Срок ISO 8601 или 'не указан'",
"priority": "high / medium / low"
}
],
"open_questions": [
{
"question": "Вопрос",
"owner": "Кто будет искать ответ (или 'не назначен')"
}
],
"risks_concerns": ["Озвученные риски, опасения, оговорки"],
"next_meeting_topics": ["Темы, отложенные на следующую встречу"],
"highlights_quotes": ["1-3 значимые цитаты дословно"]
}
ПРАВИЛА:
1. Не выдумывай. Если чего-то нет в транскрипте — пиши "не указан".
2. Решение != обсуждение. Решение — это явный outcome, не размышление вслух.
3. Action item должен быть actionable: понятно ЧТО и (желательно) КТО.
4. Сохраняй язык транскрипта (если на русском — отвечай на русском).
5. Цифры, имена, термины — переноси как есть. Если есть очевидные ошибки
распознавания (например, «Чимит Доржи» вместо «Чимитдоржи») — исправляй,
но не угадывай неочевидные.
6. Отвечай только JSON, без пояснений и префиксов."""
Этот промпт я использую как «дефолтный» — он покрывает 95% типовых встреч. Под специфические сценарии (например, юридические переговоры или продуктовые ретро) я модифицирую — добавляю поля типа legal_implications или retrospective_categories.
Поставлю AI-ассистент для встреч под ключ — от 80 000 ₽
Полный пайплайн: запись Zoom/Telemost → Whisper → диаризация → саммари → Notion/Trello/Telegram. Локальный или облачный, российский стек или OpenAI/Anthropic — выберем под ваши требования к ПД и бюджет. Внедрял в нескольких командах от 5 до 50 человек.
Интеграция с инструментами команды
Транскрипт и саммари у нас есть. Дальше — куда их доставить, чтобы команда реально пользовалась. На моих проектах работают несколько типичных схем.
1. Авто-публикация в Notion
Notion удобен для структурированного хранения встреч с поиском, тегами, базой связанных проектов. Через Notion API создаётся новая страница в базе «Встречи» с полями: дата, участники, тема, ссылка на запись, секции «Резюме», «Решения», «Action items».
2. Уведомление в Telegram-канал команды
Короткое сообщение с тремя пунктами: резюме (3-5 строк), главные решения (3-5 буллетов), action items с упоминаниями исполнителей (@user). Через 5-10 минут после встречи команда видит сообщение в Telegram и понимает, что было обсуждено.
3. Автоматическое создание задач в Trello / Jira / Linear
Каждый action item с указанным исполнителем превращается в задачу: название = task, описание = контекст из встречи, дедлайн = deadline. Исполнитель получает уведомление, задача попадает в его доску.
4. Email-рассылка участникам
Старая школа, но работает: всем участникам встречи приходит email с темой «[Встреча] Дата — Тема» и полным саммари в теле письма. Удобно для людей, которые не любят чат-сервисы.
Пример полного пайплайна на Python — от транскрипта до публикации в Telegram-канал:
# pip install python-telegram-bot anthropic faster-whisper
import asyncio
import json
import os
import telegram
from faster_whisper import WhisperModel
import anthropic
OPENAI_API = None # Используем локальный Whisper
ANTHROPIC_KEY = os.environ["ANTHROPIC_KEY"]
TG_TOKEN = os.environ["TG_BOT_TOKEN"]
TG_CHANNEL = os.environ["TG_CHANNEL_ID"] # например, -1001234567890
# 1. Транскрибируем аудио
def transcribe(audio_path: str) -> str:
model = WhisperModel("large-v3", device="cpu", compute_type="int8")
segments, _ = model.transcribe(audio_path, language="ru", vad_filter=True)
return "\n".join(s.text.strip() for s in segments)
# 2. Саммари через Claude
def summarize(transcript: str) -> dict:
client = anthropic.Anthropic(api_key=ANTHROPIC_KEY)
msg = client.messages.create(
model="claude-sonnet-4-5",
max_tokens=2048,
system=SYSTEM_PROMPT_V2, # из предыдущего раздела
messages=[{"role": "user", "content": transcript}],
)
return json.loads(msg.content[0].text)
# 3. Постим в Telegram-канал
async def post_to_tg(summary: dict, meeting_title: str):
bot = telegram.Bot(token=TG_TOKEN)
text = f"*Встреча: {meeting_title}*\n\n"
text += f"_{summary['summary']}_\n\n"
if summary['decisions']:
text += "*Решения:*\n"
for d in summary['decisions']:
text += f"• {d['decision']}\n"
text += "\n"
if summary['action_items']:
text += "*Action items:*\n"
for a in summary['action_items']:
owner = a['owner']
deadline = a['deadline']
text += f"• {a['task']} — {owner} (срок: {deadline})\n"
await bot.send_message(
chat_id=TG_CHANNEL,
text=text,
parse_mode="Markdown",
)
# Основной запуск
async def main(audio_file: str, title: str):
print("Транскрибируем...")
transcript = transcribe(audio_file)
print("Делаем саммари...")
summary = summarize(transcript)
print("Постим в Telegram...")
await post_to_tg(summary, title)
print("Готово")
if __name__ == "__main__":
asyncio.run(main("meeting_2026_05_20.wav", "Планёрка по проекту X"))
На MacBook M3 Max весь пайплайн от часового аудио до сообщения в Telegram-канале занимает 10-15 минут. На сервере с RTX 4090 — 5-7 минут.
Готовые SaaS-решения 2026
Если делать своё не хочется — на рынке полно готовых ассистентов. Перечисляю самые заметные.
- Otter.ai. Англоязычный лидер. Отличная транскрипция, интеграции, real-time. Русский — посредственно. От $17/мес/пользователь. Подходит для англоязычных команд.
- Fireflies.ai. Бизнес-фокус, интеграции с Zoom/Google Meet/Microsoft Teams. Поддержка русского есть, качество среднее. От $18/мес/пользователь.
- Read.ai. Помимо транскрипции — аналитика встреч (кто сколько говорил, токсичность, эффективность). От $14.75/мес/пользователь.
- Tactiq. Chrome extension, работает прямо в Google Meet/Zoom. Базовая транскрипция бесплатно, продвинутые фичи от $12/мес.
- Krisp.ai. Известен по шумоподавлению, в 2025-2026 добавил транскрипцию. От $12/мес.
- SpeechKit (Yandex). Не готовое решение, а API. Можно собрать своё на базе. Цена в рублях, юридически чисто.
Когда брать готовое vs делать своё:
- Готовое. Команда до 30 человек, нет специфических требований к интеграциям, английский — основной язык встреч, не критична приватность. Otter.ai или Read.ai закроют 90% потребностей за 4-5 тысяч ₽/мес на компанию.
- Своё. Команда от 30 человек, или есть требования к ПД, или встречи на русском (готовые SaaS на русском средние), или нужны нестандартные интеграции (1С, внутренний CRM). Разработка под ключ — 80-300 тыс. ₽ единоразово плюс ~5-15 тыс. ₽/мес инфраструктуры.
Юр-нюансы — что нужно знать в РФ
Запись и автоматическая обработка совещаний — это деликатная зона с точки зрения 152-ФЗ и Конституции РФ. Перечисляю главные пункты, которые я обсуждаю с клиентами на каждом внедрении.
1. Согласие участников на запись
Запись разговоров без согласия участников запрещена ст. 23 Конституции РФ (неприкосновенность частной жизни) и ст. 137 УК РФ. Перед началом встречи нужно явно объявить «встреча записывается, в чате есть AI-ассистент для саммари, продолжая участвовать вы соглашаетесь с записью». Лучше всего — закрепить это как стандарт компании.
2. Хранение записей с ПД — локализация
Если в обсуждаемом материале есть персональные данные клиентов (имена, контакты, обсуждение конкретных случаев) — записи и транскрипты подпадают под требование локализации по ст. 18 ч. 5 152-ФЗ. Хранить на серверах в РФ, передача в облачные LLM за пределы РФ — нарушение. Подробнее в статье про локализацию ПД.
3. Конфиденциальная информация — только локально
Коммерческая тайна, NDA, внутренние финансовые показатели, стратегические планы — категорически нельзя отправлять в OpenAI или Anthropic. Утечка через AI-провайдера — реальный риск (см. кейс Samsung 2023). Для таких встреч — только локальный Whisper и локальный LLM. Подробнее про локальные LLM — в отдельной статье.
4. Право участников знать о записи
Если кто-то на встрече попросил выключить запись — выключайте. Если человек узнал постфактум, что встреча записывалась, и не давал согласия — он имеет право потребовать удаления записи и транскрипта.
5. Сроки хранения
Зафиксируйте в политике компании, сколько хранятся записи и транскрипты. По истечении — автоматическое удаление. Это снижает риски утечек и помогает соответствовать принципу «не дольше, чем необходимо» из 152-ФЗ.
Реальный кейс автора
Поделюсь, как у меня лично организован AI-ассистент для встреч. Это не «идеальная архитектура», а то что реально работает и закрывает мои задачи.
Стек на текущий момент:
- Запись. Google Meet с включённой записью, сохраняется в Google Drive автоматически.
- Триггер. Скрипт по cron каждый час проверяет новые записи в Drive-папке «Meetings».
- Транскрипция. Локальный faster-whisper large-v3 на MacBook M3 Max. 1 час обрабатывается за 5-7 минут.
- Диаризация. WhisperX с pyannote, имена спикеров проставляются автоматически по календарю встречи (кто был приглашён) и голосовым отпечаткам.
- Саммаризация. Claude Sonnet 4.5 через API. Для встреч с клиентскими ПД — переключаюсь на локальную Qwen 2.5 32B.
- Хранение. Obsidian-vault со структурой «Meetings/YYYY/MM/DD-title.md» — каждая встреча отдельным markdown-файлом.
- Уведомление. Telegram-канал «AI Notes», куда падают короткие саммари. Полный транскрипт — только в Obsidian.
Цифры по факту использования:
- Около 8-15 встреч в неделю проходят через ассистент.
- Время на пост-обработку: было 20-30 минут на встречу, стало 0.
- Поиск «о чём мы говорили с клиентом X в марте» — был 10-20 минут, стал 30 секунд (поиск по Obsidian).
- Стоимость инфраструктуры: ~$8-12/мес (Claude API + Google Drive). Локальная обработка — $0.
- Время на разработку всего этого — около 3 рабочих дней разово.
Что меня удивило больше всего — это не экономия времени (она ожидаемая), а изменение качества решений. Когда ты знаешь, что встреча записывается и резюме придёт всем, ты говоришь более структурированно, формулируешь решения чётче, явно произносишь action items. Это улучшает встречи в целом, а не только их пост-обработку.
Стоимость владения — таблица
Конкретные цифры для разных вариантов AI-ассистента для встреч, исходя из объёма 5 встреч в неделю по 1 часу:
| Вариант | Единоразово | В месяц | В год |
|---|---|---|---|
| Whisper локально + Claude API | 0 ₽ (на своём ноуте) | $5-15 | $60-180 |
| OpenAI Whisper API + GPT-4o | 0 ₽ | $15-40 | $180-480 |
| Otter Pro (1 пользователь) | 0 ₽ | $17 | $204 |
| Otter Business (5 пользователей) | 0 ₽ | $150 | $1800 |
| Своё кастомное (под ключ) | 80-300 тыс ₽ | $10-50 | $120-600 + единоразовая |
| Своё с локальным LLM | 120-400 тыс ₽ | $0-10 | $0-120 + единоразовая |
Когда стоит идти в кастомную разработку:
- Команда от 15 человек — экономия на лицензиях SaaS оправдывает разработку.
- Жёсткие требования к ПД — готовые SaaS не подходят.
- Нужны нестандартные интеграции (внутренний CRM, 1С, специфичный workflow).
- Хотите кастомизировать промпты под свою специфику (например, для юридических переговоров).
Частые вопросы
Whisper понимает многоязычные встречи (русский + английский)?
Да, отлично. Whisper large-v3 умеет «code-switching» — переключение языков в одном аудио. Запускайте без явного указания языка (или со специальным флагом auto-detect), и он автоматически расставляет фрагменты как ru/en.
Что делать, если встреча 4-5 часов?
Длинные встречи Whisper обрабатывает целиком без проблем (он чанкит сам внутри). Главное ограничение — context window LLM при саммаризации. Claude Sonnet 4.5 с его 200k токенов вмещает 4-5 часов транскрипта целиком. Для совсем длинных (или для моделей с меньшим контекстом) — делаем «map-reduce»: сначала саммари по 30-минутным блокам, потом саммари из саммари.
Можно ли делать в режиме real-time во время встречи?
Технически — да. Whisper streaming-вариант с короткими чанками 5-10 секунд работает почти в real-time. Но качество чуть ниже, чем при batch-обработке, и для большинства задач (саммари после встречи) overkill. Real-time нужен только если хотите «AI-переводчик» во время встречи.
Как быть с диалектами и сильным акцентом?
Whisper large-v3 справляется с большинством русских акцентов (кавказский, центрально-азиатский, дальневосточный). На сильных диалектах качество может падать. Решение — fine-tuning Whisper на ваших данных (10-20 часов размеченного аудио). Это серьёзная работа, оправдана только для специфических ниш.
Работает ли с конференциями в Telemost или МАХ?
Запись с Telemost / МАХ можно скачать как mp3/m4a и прогнать через тот же пайплайн. Real-time-интеграция в эти платформы пока ограничена, но по факту через post-processing работает идентично Zoom/Meet.
Как защититься от «галлюцинаций» в саммари?
Главное — strict system prompt с явным запретом выдумывать (см. шаблоны выше). Дополнительно — в выводе LLM просите цитировать конкретные фрагменты транскрипта в обоснование решений. Это даёт автору саммари возможность быстро проверить, что AI не дофантазировал.
Можно ли вообще без LLM, только транскрипт?
Да, если устраивает «голый текст». Многие команды на старте используют только Whisper, а саммари пишут руками (или просто хранят транскрипт). Это уже улучшение по сравнению с «нет никакой записи». LLM-слой добавляется на следующем этапе зрелости процесса.
Выводы и пошаговый план запуска за выходные
AI-ассистент для встреч в 2026 — это не футуристическая технология, а вполне рутинный инструмент, который можно поставить себе за выходные. Резюмирую план действий, который проверен на нескольких проектах.
- Суббота утром. Поставьте whisper.cpp или faster-whisper на свой ноутбук. Скачайте модель large-v3. Запишите тестовое аудио (5 минут разговора с кем-то), прогоните через Whisper, оцените качество транскрипции.
- Суббота днём. Запишите следующую рабочую встречу. Прогоните через Whisper. Прогоните транскрипт через ChatGPT/Claude вручную с шаблоном промпта из этой статьи. Оцените, насколько саммари соответствует ожиданиям.
- Суббота вечером. Если устраивает — напишите простой Python-скрипт, который принимает путь к аудио, делает транскрипцию, делает саммари, сохраняет результат в Markdown-файл.
- Воскресенье утром. Добавьте диаризацию через WhisperX. Перепрогоните вчерашнюю встречу с диаризацией — оцените, насколько улучшилась читаемость.
- Воскресенье днём. Подключите автоматическую публикацию в одно место (Notion, Telegram, Obsidian). Поставьте задачу cron — раз в час проверять папку с новыми записями и обрабатывать.
- Воскресенье вечером. Согласуйте с командой стандарт записи встреч, обсудите согласие на запись, политику хранения. Запустите в работу с понедельника.
Через неделю-две вы поймёте, какие части пайплайна стоит улучшить под вашу специфику. Через месяц-два — это станет настолько привычным, что вы не сможете представить, как раньше работали без него.
Если хотите, чтобы кто-то прошёл этот путь вместо вас — пишите. У меня готовый набор скриптов, опыт с тонкими местами (диаризация, обработка длинных встреч, юр-нюансы), и я делал AI-ассистенты для нескольких команд от 5 до 50 человек.
Внедрил AI-ассистент для встреч в нескольких командах
Под ключ: запись → транскрипт → диаризация → саммари → Notion/Trello/Telegram. Локальный или облачный стек, российский или зарубежный — выберем под ваши требования. Сам пользуюсь второй год, знаю все грабли. Пишите в Telegram — обсудим вашу ситуацию.
Нужен профессиональный аудит 152-ФЗ?
Отчёт за 1–3 дня, устранение нарушений под ключ. От 5 000 ₽.