Впровадження Voiceflow для побудови голосових та чат AI-агентів

Проектуємо та впроваджуємо системи штучного інтелекту: від прототипу до production-ready рішення. Наша команда поєднує експертизу в машинному навчанні, дата-інжинірингу та MLOps, щоб AI працював не в лабораторії, а в реальному бізнесі.
Показано 1 з 1Усі 1566 послуг
Впровадження Voiceflow для побудови голосових та чат AI-агентів
Простий
від 1 дня до 3 днів
Часті запитання

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

Етапи розробки AI-рішення

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

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

Розробка голосових та чат-агентів на Voiceflow Voiceflow — візуальна платформа для створення conversational AI агентів, що працюють як у голосовому, так і текстовому режимі. Ключова перевага: той самий діалоговий флоу розгортається на телефонії (Twilio), веб-чаті, месенджерах та голосових помічниках (Alexa, Google Assistant) без дублювання логіки. ### Архітектура мультиканального агента```

Voiceflow Canvas (визуальный редактор) ↓ Agent Runtime / |
Voice Chat API (Twilio) (Web) (Custom) **Типи блоків у Voiceflow:** - **Speak / Text** - відповідь агента - **Choice** - кнопки або ключові фрази для вибору - **Capture** - захоплення введення користувача (entity extraction) - **API Block** - HTTP-запит до зовнішнього сервісу - **Code B Response** — генеративна відповідь через GPT з контекстом ### Інтеграція через Voiceflow Dialog Manager APIpython import requests

class VoiceflowDMClient: """Взаимодействие с агентом через Dialog Manager API"""

def __init__(self, api_key: str, version_id: str):
    self.api_key = api_key
    self.version_id = version_id
    self.base_url = "https://general-runtime.voiceflow.com"
    self.headers = {
        "Authorization": api_key,
        "versionID": version_id,
        "Content-Type": "application/json"
    }

def send_message(self, user_id: str,
                  message: str,
                  variables: dict = None) -> list[dict]:
    """
    Отправка сообщения и получение ответов агента.
    user_id: уникальный идентификатор сессии/пользователя
    Returns: список ответных трейсов (текст, кнопки, аудио)
    """
    payload = {
        "action": {
            "type": "text",
            "payload": message
        },
        "config": {
            "tts": False,
            "stripSSML": True
        }
    }

    if variables:
        payload["variables"] = variables

    response = requests.post(
        f"{self.base_url}/state/user/{user_id}/interact",
        json=payload,
        headers=self.headers
    )
    traces = response.json()

    # Парсим ответы
    responses = []
    for trace in traces:
        if trace["type"] == "text":
            responses.append({
                "type": "text",
                "content": trace["payload"]["message"]
            })
        elif trace["type"] == "choice":
            responses.append({
                "type": "buttons",
                "buttons": [b["name"] for b in trace["payload"]["buttons"]]
            })
        elif trace["type"] == "end":
            responses.append({"type": "end"})

    return responses

def launch_session(self, user_id: str,
                    variables: dict = None) -> list[dict]:
    """Запуск новой сессии (начало диалога)"""
    payload = {"action": {"type": "launch"}}
    if variables:
        payload["variables"] = variables

    response = requests.post(
        f"{self.base_url}/state/user/{user_id}/interact",
        json=payload,
        headers=self.headers
    )
    return response.json()