Разработка AI-системы транскрибации и суммаризации звонков в CRM

Проектируем и внедряем системы искусственного интеллекта: от прототипа до production-ready решения. Наша команда объединяет экспертизу в машинном обучении, дата-инжиниринге и MLOps, чтобы AI работал не в лаборатории, а в реальном бизнесе.
Показано 1 из 1 услугВсе 1566 услуг
Разработка AI-системы транскрибации и суммаризации звонков в CRM
Средняя
~5 рабочих дней
Часто задаваемые вопросы
Направления AI-разработки
Этапы разработки AI-решения
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1218
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1161
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    853
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1047
  • image_logo-advance_0.png
    Разработка логотипа компании B2B Advance
    561
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    825

Разработка AI-системы транскрибации и суммаризации звонков в CRM

Система автоматически транскрибирует звонок, создаёт краткое резюме и прикрепляет к карточке клиента в CRM. Оператор больше не тратит 3–5 минут на оформление итогов звонка вручную.

Pipeline транскрибация → резюме → CRM

async def process_completed_call(call_event: dict):
    """Обрабатываем завершённый звонок от до до конца"""
    call_id = call_event["call_id"]
    recording_url = call_event["recording_url"]
    crm_contact_id = call_event.get("crm_contact_id")

    # 1. Скачиваем запись
    audio = await download_recording(recording_url)

    # 2. Транскрибируем с диаризацией
    transcript = await transcribe_with_diarization(audio)

    # 3. Генерируем резюме
    summary = await generate_call_summary(transcript)

    # 4. Обновляем CRM
    if crm_contact_id:
        await crm.update_contact(
            contact_id=crm_contact_id,
            data={
                "last_call_summary": summary["short"],
                "last_call_transcript": transcript["full_text"],
                "last_call_outcomes": summary["outcomes"],
                "next_action": summary["next_action"],
                "call_sentiment": summary["sentiment"]
            }
        )
        await crm.log_activity(
            contact_id=crm_contact_id,
            type="call",
            description=summary["short"],
            duration=transcript["duration"]
        )

    return {"call_id": call_id, "summary": summary}

Генерация резюме звонка

SUMMARY_PROMPT = """Создай структурированное резюме звонка:
1. Краткое резюме (2-3 предложения)
2. Причина обращения
3. Что было обсуждено (ключевые моменты)
4. Результат/решение
5. Следующее действие (если есть): что, кто, когда
6. Тональность клиента: позитивная/нейтральная/негативная

Формат: JSON"""

async def generate_call_summary(transcript: dict) -> dict:
    dialog = "\n".join(
        f"{t['speaker']}: {t['text']}"
        for t in transcript["turns"]
    )

    response = await client.chat.completions.create(
        model="gpt-4o",
        messages=[
            {"role": "system", "content": SUMMARY_PROMPT},
            {"role": "user", "content": dialog[:5000]}
        ],
        response_format={"type": "json_object"}
    )
    data = json.loads(response.choices[0].message.content)

    return {
        "short": data.get("brief_summary", ""),
        "reason": data.get("reason", ""),
        "outcomes": data.get("key_points", []),
        "next_action": data.get("next_action", ""),
        "sentiment": data.get("sentiment", "neutral")
    }

Интеграция с популярными CRM

# Bitrix24
async def update_bitrix24(contact_id: str, summary: dict):
    await requests.post(
        f"{BITRIX_URL}/crm.contact.update",
        json={"id": contact_id, "fields": {"COMMENTS": summary["short"]}}
    )

# amoCRM
async def update_amocrm(contact_id: str, summary: dict):
    await amocrm_api.leads.add_note(
        contact_id=contact_id,
        text=summary["short"]
    )

# Salesforce
async def update_salesforce(contact_id: str, summary: dict):
    sf.Contact.update(contact_id, {
        "Description": summary["short"],
        "Last_Call_Summary__c": summary["short"]
    })

Сроки: pipeline с одной CRM — 2–3 недели. Мультиплатформенная система — 1.5 месяца.