Впровадження платформи Bland AI для автономних телефонних AI-агентів

Проектуємо та впроваджуємо системи штучного інтелекту: від прототипу до production-ready рішення. Наша команда поєднує експертизу в машинному навчанні, дата-інжинірингу та MLOps, щоб AI працював не в лабораторії, а в реальному бізнесі.
Показано 1 з 1Усі 1566 послуг
Впровадження платформи Bland AI для автономних телефонних 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

Розробка автономних телефонних агентів на Bland AI Bland AI - платформа для створення телефонних голосових агентів, які ведуть повноцінні двосторонні розмови за заданим сценарієм. На відміну від класичних IVR-систем із жорстким деревом меню, агент на Bland AI розуміє вільне мовлення, обробляє нестандартні відповіді та інтегрується з бізнес-системами через вебхукі в реальному часі. ### Архітектура та можливості Bland AI Платформа працює за моделлю: вхідний/вихідний дзвінок → Speech-to-Text → LLM для генерації відповіді → Text-to-Speech → озвучування. Весь цикл займає 300-700ms, що забезпечує природний темп розмови без помітних пауз. Ключові компоненти: - Pathways — граф діалогу з умовними переходами (розгалуження за відповідями користувача); ескалації```python

import requests import json

class BlandAIAgent: """Управление агентами через Bland AI API"""

def __init__(self, api_key: str):
    self.api_key = api_key
    self.base_url = "https://api.bland.ai"
    self.headers = {
        "Authorization": api_key,
        "Content-Type": "application/json"
    }

def create_phone_call(self, phone_number: str,
                       task: str,
                       pathway_id: str = None,
                       voice: str = "maya",
                       max_duration: int = 12) -> dict:
    """
    Инициирование исходящего звонка.
    task: инструкция для агента (prompt)
    pathway_id: ID предварительно настроенного графа диалога
    """
    payload = {
        "phone_number": phone_number,
        "voice": voice,
        "max_duration": max_duration,
        "task": task,
        "language": "ru",
        "reduce_latency": True,
        "interruption_threshold": 100,  # ms, насколько ждём паузы
    }

    if pathway_id:
        payload["pathway_id"] = pathway_id

    response = requests.post(
        f"{self.base_url}/v1/calls",
        json=payload,
        headers=self.headers
    )
    return response.json()

def create_pathway(self, name: str, nodes: list[dict],
                    edges: list[dict]) -> dict:
    """
    Создание графа диалога (Pathway).
    nodes: узлы разговора (вопросы, ответы, действия)
    edges: переходы между узлами по условиям
    """
    payload = {
        "name": name,
        "nodes": nodes,
        "edges": edges
    }

    response = requests.post(
        f"{self.base_url}/v1/pathway",
        json=payload,
        headers=self.headers
    )
    return response.json()

def analyze_call(self, call_id: str,
                  questions: list[dict]) -> dict:
    """
    Post-call анализ: извлечение структурированных данных из разговора.
    questions: [{"question": "...", "type": "boolean|text|date"}]
    """
    payload = {"questions": questions}

    response = requests.post(
        f"{self.base_url}/v1/calls/{call_id}/analyze",
        json=payload,
        headers=self.headers
    )
    return response.json()

def get_call_transcript(self, call_id: str) -> dict:
    """Транскрипт и метаданные завершённого звонка"""
    response = requests.get(
        f"{self.base_url}/v1/calls/{call_id}",
        headers=self.headers
    )
    return response.json()
| Розпізнавання російської | гарний (Whisper-based) | | Одночасних дзвінків до 1000+ (enterprise) | | Вартість | ~$0.09/хв | | CSAT vs живий оператор 75-85% | **Обмеження:** складні емоційні розмови (скарги, конфлікти) вимагають ескалації на людину. Агент не розпізнає сарказм та культурні нюанси з надійністю живого співробітника. Для чутливих тематик (охорона здоров'я, юридичні питання) необхідне додаткове налаштування обмежень. Типовий термін розгортання простого агента для підтвердження записів - 1-2 тижні. Складний кваліфікаційний агент з інтеграцією CRM та обробкою заперечень – 4-6 тижнів.