1. Главная
  2. Блог
  3. Лаборатория (Lab)
  4. Создание ИИ чат-бота с голосовым вводом и памятью в N8N

Создание ИИ чат-бота с голосовым вводом и памятью в N8N

25 апреля 2025
103

В эпоху цифровой трансформации автоматизация коммуникаций становится ключевым инструментом для бизнеса. В этой статье мы подробно разберем, как создать умного чат-бота для Telegram, способного обрабатывать текстовые и голосовые сообщения, взаимодействовать с OpenAI, сохранять контекст диалога и предоставлять персонализированные рекомендации. Все это реализуем на платформе n8n — мощном инструменте для workflow-автоматизации.

Зачем нужен такой бот?

Представьте виртуального ассистента, который:

  • Принимает запросы голосом и текстом.

  • Анализирует вопросы через нейросеть GPT.

  • Хранит историю диалога для персонализации.

  • Интегрирован с документами компании (например, списком услуг).

  • Перенаправляет клиентов на живого специалиста при необходимости.

Такой бот не только экономит время, но и повышает лояльность клиентов, предлагая мгновенные ответы 24/7. Давайте реализуем этот проект шаг за шагом.

Шаг 1: Подготовка инфраструктуры

  1. Регистрация в OpenAI:

    • Получите API-ключ в кабинете OpenAI (нужен VPN, а также карта Visa/Mastercard либо готовый аккаунт с балансом).

    • Создайте ассистента через раздел Assistants, загрузив файл с описанием услуг (например, PDF или TXT).

  2. Настройка n8n:

    • Установите n8n локально или используйте облачную версию.

    • Добавьте интеграции: Telegram Bot (через @BotFather) и OpenAI (через полученный API-ключ).

Шаг 2: Создание базового workflow в n8n

  1. Триггер для Telegram:

    • Нода Telegram Trigger будет отслеживать входящие сообщения.

    • Настройте вебхук для вашего бота, используя инструкции n8n.

  2. Разделение потоков: Switch-нода:

    • Добавьте ноду Switch для обработки двух типов данных:

      • Текстовые сообщения: Проверка условия text exists.

      • Голосовые сообщения: Условие voice exists.

    • Это позволяет создать отдельные ветки обработки для разных форматов ввода.

Шаг 3: Обработка голосовых сообщений

  1. Загрузка аудио:

    • Используйте ноду Telegram Get File для получения файла голосового сообщения по его file_id.

    • Передайте файл в ноду OpenAI Transcribe для преобразования речи в текст.

  2. Унификация данных:

    • Объедините текстовые и голосовые запросы через ноду Set, сохранив результат в переменную message.

    • Используйте ноду Merge, чтобы связать message с chat_id пользователя для персонализации ответов.

Шаг 4: Интеграция с OpenAI Assistant

  1. Настройка ассистента:

    • В кабинете OpenAI задайте системную инструкцию, например:

      "Ты — консультант компании Company. Отвечай вежливо, используй информацию из прикрепленного файла о товарах и услугах. При сложных запросах предлагай связаться с менеджером."
    • Прикрепите файл с услугами компании (например, «Услуги.pdf»).

  2. Работа с памятью:

    • Добавьте ноду Buffer Memory для сохранения контекста диалога.

    • Настройка chat_id гарантирует, что история не смешивается между пользователями.

Шаг 5: Формирование ответа и отправка в Telegram

  1. Генерация ответа:

    • Нода OpenAI Assistant обрабатывает запрос, используя прикрепленные файлы и историю диалога.

    • Убедитесь, что в параметрах указан message из Merge-ноды.

  2. Обратная связь пользователю:

    • Отправьте ответ через ноду Telegram Send Message, используя chat_id для адресности.

    • Протестируйте бота, задав вопросы из файла с услугами (например: «Расскажи о ваших тарифах»).

Шаг 6: Расширенные настройки и оптимизация

  • Обработка ошибок: Добавьте ноду Catch для перехвата исключений (например, при сбое API).

  • Логирование: Используйте ноду Spreadsheet для сохранения истории запросов в Google Sheets.

  • Мультиязычность: Настройте переводчики (DeepL, Google Translate) для поддержки разных языков.

Пример использования

Пользователь: Отправляет голосовое сообщение: «Нужны ворота. Какие выбрать?»
Бот:

  1. Конвертирует аудио в текст.

  2. Ищет в прикрепленном файле раздел «Ворота».

  3. Формулирует ответ: «Мы осуществляем продажу ворот марок.... производим их установку и гарантийное обслуживание....»

  4. Сохраняет контекст для последующих вопросов о курсе.

Проблемы и решения

  • Ошибка «No prompt» в OpenAI: Убедитесь, что переменная message передается корректно через Merge.

  • Файл не прикреплен к ассистенту: Перепроверьте настройки в OpenAI и обновите API-ключ в n8n.

  • Нет ответа на голосовые сообщения: Проверьте права бота в Telegram и работу ноды Get File.

Готово!

Вы создали полноценного виртуального ассистента с искусственным интеллектом, способного обрабатывать голосовые и текстовые запросы, обучаться на предоставленных данных и вести осмысленный диалог. Такой бот может стать первым шагом к автоматизации службы поддержки, генерации лидов или даже онлайн-обучению.

Идеи для развития проекта:

  • Добавьте синтез речи (Text-to-Speech) для голосовых ответов.

  • Интегрируйте с CRM для автоматического создания заявок.

  • Настройте аналитику через метрики: время ответа, удовлетворенность пользователей.

Используйте гибкость n8n и мощь ИИ, чтобы превратить ваши бизнес-процессы в умные, адаптивные системы! Удачи!


Комментарии
Name
Email
Phone
Ваше имя
Ваш email
Оставить комментарий