Інструкція з роботи з Function Calling в AI Assistants на платформі Leeloo.AI

Інструкція з роботи з Function Calling в AI Assistants на платформі Leeloo.AI

UA

image-20240611-123449.png

US

image-20240611-123805.png

RU

image-20240611-131051.png

UA

image-20240611-123449.png

US

image-20240611-123805.png

RU

image-20240611-131051.png

1. Вступ

Функція — це заздалегідь визначена дія, яку AI Assistant може виконати для підписника на платформі Leeloo.AI на основі певних умов у діалозі. Ці умови визначаються в інструкціях AI Assistant.

За допомогою функцій AI Assistant може:

  • Виставляти рахунки — автоматизуйте оплату та прискорюйте шлях клієнта до покупки.

  • Додавати теги та кастомні поля — створюйте точні сегменти для персоналізованих пропозицій.

  • Керувати активністю AI Assistant — гнучко запускати, зупиняти або перезапускати помічника при зміні бізнес-цілей.

  • Підписувати або відписувати користувачів від блоків тунелю — направляйте користувачів до потрібного контенту та підвищуйте конверсію.

  • Працювати з планом продажів (CRM) — створювати, переміщувати або видаляти угоди без участі менеджера.

  • Позначати повідомлення як непрочитані — покращуйте контроль та швидкість реакції команди на важливі повідомлення.

2. Принцип роботи

AI Assistants взаємодіють з користувачами через месенджери (Telegram, WhatsApp, Facebook Messenger тощо) та можуть виконувати дії на платформі Leeloo.AI — наприклад, підписувати користувача на блок тунелю на основі заданих умов.

Процес:

  1. Для AI Assistant задаються сценарії та умови взаємодії з платформою.

  2. AI Assistant підключається до чатів через тунель продажів масовою дією або вручну в розділі "Чати".

  3. Користувач надсилає повідомлення в чат, де увімкнено AI Assistant.

  4. Помічник аналізує повідомлення та визначає намір користувача.

  5. Якщо умова відповідає заданому сценарію, AI Assistant викликає функцію.

  6. Функція виконується — здійснюється відповідна дія на платформі Leeloo.AI.

  7. Користувач отримує оффер, кнопки, теги або інші взаємодії (наприклад, зв'язатися з менеджером, купити продукт тощо).

3. Додавання функції в AI Assistant

Щоб додати функцію в AI Assistant:

  1. Перейдіть у розділ Assistants на платформі OpenAI і створіть або виберіть існуючого AI Assistant.

    ksnip_20250226-144939.png
  2. Перейдіть до розділу System instructions вашого AI Assistant.

    ksnip_20250226-145046-20250226-125046.png
  3. Додайте умову в базову інструкцію або файл з умовою, за якої асистент повинен викликати функцію. Наприклад:

    "Якщо клієнт запитує про абонимент, надайте інформацію про членство, а потім активуйте функцію (function_name)"

    ksnip_20250228-162250.png

     

  4. У розділі Functions вашого асистента впишіть команду виконання функції (function_name).

    ksnip_20250228-160846.png

     

  5. Вставте JSON-код функції та вкажіть tunnel_block_id в описі (description) вашої функції.

    ksnip_20250228-161111.png

     

Тепер AI Assistant буде аналізувати діалоги з клієнтами та, виходячи з їхніх повідомлень, виконувати відповідні дії на платформі.

Умову ви також можете писати в description вашої фукнції, що дозволить підписувати лідів на декілька різних блоків у тунелі продажів, за допомогою однієї функції.

image-20250227-081400.png

4. Доступні функції

START_TUNNEL: Підписка на блок тунелю.

Підписує користувача на вказаний блок тунелю. ID блоку задається у полі description.

{ "name": "START_TUNNEL", "description": "Subscribe user to a tunnel block 67923e109cf6cf5c3ca547c3", "strict": true, "parameters": { "type": "object", "properties": { "tunnel_block_id": { "type": "string", "description": "Id in description" } }, "required": [ "tunnel_block_id" ], "additionalProperties": false } }

У JSON-коді в полі "description", де ви вказуєте умову роботи функції, необхідно вставити ID блока, на який будемо підписувати ліда.

Отримати ID можна, перейшовши до розділу "Тунелі продажів", оберіть тунель продажів, на який хочете підписати, натисніть на синій блок, на який будемо виконувати підписку, та скопіюйте ID блока з посилання в адресному рядку браузера.

ksnip_20250428-153614-20250428-123614.png

 

STOP_TUNNEL: Зупинка тунелю.

Зупиняє відправку повідомлень після конкретного блоку.

{ "name": "STOP_TUNNEL", "description": "Stop sending to user from one of 679a7d8dc43c5ad7e43facc0", "strict": true, "parameters": { "type": "object", "properties": { "tunnel_block_id": { "type": "string", "description": "One of ids listed in description" } }, "required": ["tunnel_block_id"], "additionalProperties": false } }

Працює за аналогією з START_TUNNEL, але виконує функцію зупинки тунелю продажів.

 

ADD_TAG: Додавання тегу.

Додає тег користувачу. Якщо тег не існує, він буде створений.

{ "name": "ADD_TAG", "description": "Add tag to user...", "strict": true, "parameters": { "type": "object", "properties": { "tag_name": { "type": "string", "description": "Some word that describe the user" } }, "required": ["tag_name"], "additionalProperties": false } }

У полі "description" вказуєте, який Тег додати.

Наприклад, задаємо умову всередині Інструкції AI Assistant: "Виклич функцію ADD_TAG якщо...".

Функція створить Тег "КОНСУЛЬТАЦІЯ" у разі, якщо його немає у списку ваших тегів.

Тег додається лише користувачу, який веде діалог з AI Assistant.

 

REMOVE_TAG: Видалення тегу.

Видаляє вказаний тег у користувача.

{ "name": "REMOVE_TAG", "description": "Remove tag from user", "strict": true, "parameters": { "type": "object", "properties": { "tag_name": { "type": "string", "description": "Some word" } }, "required": ["tag_name"], "additionalProperties": false } }

У полі "description" вказуєте, який Тег видалити.

Тег буде видалено лише у користувача, який веде діалог з AI Assistant.

 

ADD_CUSTOM_FIELD: Додавання кастомного поля.

Додає або оновлює значення кастомного поля (наприклад, номер телефону, тип клієнта).

{ "name": "ADD_CUSTOM_FIELD", "description": "Add field to user", "strict": true, "parameters": { "type": "object", "properties": { "field_name": { "type": "string", "description": "Name of field to add" }, "field_value": { "type": "string", "description": "Value of field" } }, "required": ["field_name", "field_value"], "additionalProperties": false } }

 

ADD_TO_SALES_PLAN: Додавання до Плану Продажів.

Створює угоду для користувача в зазначеному плані продажів.

{ "name": "ADD_TO_SALES_PLAN", "description": "Add user to one of 647732ddd51d2a81a61be394, without_duplication = true", "strict": true, "parameters": { "type": "object", "properties": { "sales_plan_id": { "type": "string", "description": "One of ids listed in description" }, "sales_plan_status": { "type": "string", "description": "Name or id of status listed in description or may be empty" }, "user_email": { "type": "string", "description": "One of emails listed in description or may be empty" }, "without_duplication": { "type": "boolean" } }, "required": [ "sales_plan_id", "sales_plan_status", "user_email", "without_duplication" ], "additionalProperties": false } }

Додає користувача до Плану Продажів після вказання ID плану продажів.

Щоб отримати ID плану продажів, перейдіть до розділу CRM, оберіть план продажів, до якого потрібно додати підписника, та скопіюйте посилання з адресного рядка.

ksnip_20250428-155007-20250428-125007.png

 

REMOVE_FROM_SALES_PLAN: Видалення з Плану Продажів.

Видаляє угоду користувача з обраного Плану Продажів.

{ "name": "REMOVE_FROM_SALES_PLAN", "description": "Remove user from one of 679a7d8dc43c5ad7e43facc0", "strict": true, "parameters": { "type": "object", "properties": { "sales_plan_id": { "type": "string", "description": "One of ids listed in description" } }, "required": [ "sales_plan_id" ], "additionalProperties": false } }

 

MOVE_SALES_PLAN_DEAL: Переміщення угоди в Плані Продажів.

Переміщує угоду в інший статус у межах плану продажів.

{ "name": "MOVE_SALES_PLAN_DEAL", "description": "Move user in Sales plan to status - Id", "strict": true, "parameters": { "type": "object", "properties": { "sales_plan_id": { "type": "string", "description": "Sales plan id is 682b235dbb1982bebd204asd" }, "sales_plan_status": { "type": "string", "description": "Status name is - Kval id - 625b2525dbb1982bebd204asd" } }, "required": [ "sales_plan_id", "sales_plan_status" ], "additionalProperties": false } }

Переміщення угоди з одного статусу (поточний) в інший, який вказуємо в полі "description".

  1. Вказуємо ID Плану Продажів, в якому змінюємо статус угоди.

  2. Вказуємо назву або ID статусу, на який необхідно перемістити угоду.

 

NOTIFY_USER_IN_CHAT: Сповіщення менеджера платформи у чаті.

Надсилає внутрішнє повідомлення користувачу платформи (через email) у чаті.

{ "name": "NOTIFY_USER_IN_CHAT", "description": "Notify one of kaliukh.w.o.r.k@gmail.com", "strict": true, "parameters": { "type": "object", "properties": { "user_email": { "type": "string", "description": "One of emails listed in description" }, "comment_text": { "type": "string", "description": "Some information that describes reason of notification (may be empty)" } }, "required": [ "user_email", "comment_text" ], "additionalProperties": false } }

Сповіщення користувача в чаті.

У полі "description" вказуємо Email користувача платформи Leeloo.AI, якого AI Assistant буде сповіщати в чаті.

 

MARK_AS_UNREAD: Позначити повідомлення як непрочитане.

Позначає останнє повідомлення користувача як непрочитане.

{ "name": "MARK_AS_UNREAD", "description": "Mark last message of user as unread", "strict": true, "parameters": { "type": "object", "properties": {}, "required": [], "additionalProperties": false } }

 

CHANGE_AI_SETTINGS: Керування AI Assistant

Запускає, зупиняє або перезапускає AI Assistant у чаті з клієнтом. Використовуються команди: START, STOP, RESTART, а також ID помічника.

{ "name": "CHANGE_AI_SETTINGS", "description": "Change ai assistant settings RESTART", "strict": true, "parameters": { "type": "object", "properties": { "ai_action_type": { "type": "string", "description": "Type of action to perform", "enum": [ "START", "STOP", "RESTART" ] }, "ai_integration_id": { "type": "string", "description": "Id of ai assistant, need only if ai_action_type=RESTART", "enum": [ "6737456b274ee315f1d9b72d" ] } }, "required": [ "ai_action_type", "ai_integration_id" ], "additionalProperties": false } }

Управління статусом AI Assistant у ліда в чаті Leeloo.AI .

Вказує одне з дій: START, STOP, RESTART – повинно бути лише англійською мовою та великими літерами.

У полі "description" вказуємо, в який статус перевести AI Assistant у чаті з лідом.

У полі "enum" вказуємо ID AI Assistant, який ми запускаємо, зупиняємо або перезапускаємо.

ksnip_20250428-161605-20250428-131605.png

ВАЖЛИВО!

  • function\_name – має бути тільки START\_TUNNEL, ADD\_TAG, REMOVE\_TAG тощо!

  • description – Єдине поле для редагування в коді вище для коректної роботи. У ньому ви описуєте дії та умови роботи функції. Наприклад: Stop sending to user from this block 679a7d8dc43c5ad7e43facc0

5. Тестування та перевірка роботи функції

Після налаштування асистента:

  1. Активуйте AI Assistant для вибраного каналу зв’язку.

  2. Надішліть тестове повідомлення, що відповідає тригерній умові, у чат-бот (канал зв’язку).

  3. Переконайтеся, що функція була виконана. Це можна перевірити за статусом у чаті ліда.

    image-20250226-165917.png
  4. Якщо виникли помилки, переконайтеся, що параметри функції та умови виклику налаштовані коректно.

  5. За необхідності внесіть зміни в інструкцію асистента.