# ИИ функции | AI-functions

*Как дать ИИ возможность совершать действия во внутренних и внешних системах.*

Выберите способ получения информации: видеоинструкция (таймкод 07:55 — 10:49) или текст с изображениями ниже.

{% embed url="<https://vkvideo.ru/playlist/-42711153_5/video-42711153_456239118>" %}

[Видео на Дзен](https://dzen.ru/video/watch/679b386f468742274b8986e6?collection=author%3A1e411427-36f7-4152-b438-d156f14ec76a\&order=reverse).

[Видео на RUTUBE](https://rutube.ru/video/4c64ad3a1c47c6f3858983716eb3cb22/?t=476\&r=plwd).

[Видео на YouTube](https://www.youtube.com/watch?v=0S7zvz7zcS8\&list=PLYLVKEI0ZquqdH3Ml7JTN8VQlLslp-Nvg\&index=2\&ab_channel=onlinePBX%E2%80%94%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D1%8B%D0%B4%D0%BB%D1%8F%D0%BA%D0%BE%D0%BC%D0%BC%D1%83%D0%BD%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D0%B9).

[VK Видео](https://vkvideo.ru/video-42711153_456239118?sh=4\&t=7m54s).

Профессиональные настройки — блок настроек, где вы можете создавать разнообразные функции для взаимодействия ИИ-агента с внутренними и внешними API. Блок находится [в форме редактирования ИИ-агента](https://selarti.com/panel?menu=ai).&#x20;

<figure><img src="https://4089339230-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSciXxWqmoBx13cWpl1JJ%2Fuploads%2Fv3iOHyW809IOy2HX1tiH%2FAI_functions_1.png?alt=media&#x26;token=8a6801fb-1c7c-4c74-83de-06638fc6ef81" alt="" width="340"><figcaption></figcaption></figure>

## Установка тегов на диалог через функции

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

**Как установить теги через функцию:**

1. В личном кабинете Selarti перейдите в раздел *«*[*ИИ*](https://selarti.com/panel?menu=ai)*»*. Затем нажмите на строку с ИИ, к которому хотите добавить теги.

<figure><img src="https://4089339230-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSciXxWqmoBx13cWpl1JJ%2Fuploads%2FonRSkXUntOJxiIngj6Ib%2FScreenshot_1.3.png?alt=media&#x26;token=bbe3de2a-6272-47b8-897f-27c09a5140c3" alt=""><figcaption></figcaption></figure>

2. Перейдите в раздел *«Профессиональные настройки».*

<figure><img src="https://4089339230-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSciXxWqmoBx13cWpl1JJ%2Fuploads%2FM5dOl3HTTUH19a1rI17u%2FAI_functions_3.png?alt=media&#x26;token=cf342718-b7f8-4e9b-84a9-c5f0916cbfb2" alt="" width="340"><figcaption></figcaption></figure>

3. В выпадающем меню  *«ИИ функции»* выберите нужный тег.

<figure><img src="https://4089339230-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSciXxWqmoBx13cWpl1JJ%2Fuploads%2FAnXRQg1ywtas3qTxTOp8%2Ffunctionai1.png?alt=media&#x26;token=5d639b22-61d2-4540-8a46-24f21682a2f5" alt=""><figcaption></figcaption></figure>

<details>

<summary>Теги в выпадающем списке «ИИ функции»</summary>

* **success**: применяется, когда диалог завершился успешно (например, достигнута договорённость о встрече или звонке). После добавления тега диалог помечается как успешный и информация может быть передана в CRM или другую систему через вебхук.
* **get\_contact***:* используется, когда бот получает контактные данные пользователя (например, номер телефона или username из Telegram). Тег помечает диалог как содержащий контактную информацию, а данные передаются во внешнюю систему через вебхук.
* **interest**: применяется, когда пользователь проявляет интерес к предложению (например, соглашается обсудить детали). Тег позволяет отслеживать воронку продаж или эффективность взаимодействий. Также поддерживается отправка вебхука.
* **close**: используется для завершения диалога. После применения тега бот перестаёт отвечать на сообщения, а дальнейшая коммуникация передается менеджеру в личный кабинет. Это помогает избежать бесконечных циклов общения, например, когда два бота вступают в диалог друг с другом.
* **operator**: используется для передачи диалога на оператора. После применения тега бот передаёт диалог оператору и перестаёт отвечать на сообщения.
* **abort\_reply**: тег для отмены генерации ответа. Используется в случаях, когда нужно задать условие, при котором ИИ не будет отвечать. Например, игнорировать оскорбления в чате.
* **scheduler**: используется для отправки запланированного сообщения. Если клиент напишет сообщения по типу: *«Напиши мне 30 числа»* или *«Напишите послезавтра»* — бот запланирует отправку сообщения в указанное время.
* **custom api**: тег для внедрения работы внешних сервисов для получения или фиксации какой-либо информации. Например, нужно узнать текущий курс доллара, для этого отправить запрос через API ЦБ РФ, тем самым ИИ узнает информацию и сможет проконсультировать по актуальному курсу клиента. Тег используется разработчиками.
* **Web search**: тег разрешает искать информацию в открытых источниках. Если ИИ что-то не сможет найти из контекста, — обратится к информации в интернете.

</details>

4. При необходимости дополните или измените описание функции, для этого нажмите *«Добавить функцию».*

<figure><img src="https://4089339230-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSciXxWqmoBx13cWpl1JJ%2Fuploads%2F8iZb7pUXdl5xWmirGtAb%2FAI_functions_5.png?alt=media&#x26;token=bb7cd4b7-da6d-4300-af17-878937d4a6e6" alt="" width="340"><figcaption></figcaption></figure>

Чтобы сбросить параметры ИИ функции, нажмите *«Отмена»*.

<figure><img src="https://4089339230-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSciXxWqmoBx13cWpl1JJ%2Fuploads%2FWADQ8lW7l5NtQVMOp9Co%2FAI_functions_6.png?alt=media&#x26;token=bbe2857f-2f5d-40e7-a9cd-78922f51443c" alt="" width="340"><figcaption></figcaption></figure>

5. Протестируйте корректность установки тегов, для этого нажмите *«Тестирование ИИ».*

<figure><img src="https://4089339230-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSciXxWqmoBx13cWpl1JJ%2Fuploads%2F49BYWS3z4IKAZRSIDhn8%2FAI_functions_7.png?alt=media&#x26;token=8d1f7fae-d24d-4441-817e-b4c716a3db98" alt="" width="563"><figcaption></figcaption></figure>

6. Нажмите *«Сохранить»*, чтобы сохранить изменения.&#x20;

<figure><img src="https://4089339230-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSciXxWqmoBx13cWpl1JJ%2Fuploads%2FbNcxP240WqLaUSJt8MzS%2FAI_functions_8.png?alt=media&#x26;token=f8f26ea0-a89b-4ede-888b-52d832186055" alt="" width="563"><figcaption></figcaption></figure>

## Настройка сustom API

Функция **custom API** позволяет подключать внешние сервисы и интеграции, чтобы ИИ-агент мог обрабатывать запросы пользователей и передавать данные во внешние системы. Это простой и удобный способ автоматизировать разные задачи.&#x20;

### Примеры использования&#x20;

**Подключение внешнего ресурса:** вы можете подключить ИИ к любому внешнему сервису. Например, с помощью интеграции с сервисом погоды ИИ сможет предоставлять актуальную информацию о погоде в ответ на запросы пользователя. При запросе информации о текущей погоде, ИИ отправит API-запрос к внешнему сервису, получит данные и вернет ответ, учитывая контекст диалога.

**Функция планирования звонков**: ИИ-агент может помочь в планировании звонков, интегрируясь с внешними системами. Например, ИИ запросит доступные временные слоты для звонка, получит необходимые данные и запишет событие в календарь или CRM-систему.

**Планирование задач или связи с пользователем**: С помощью внешнего API ИИ может отслеживать и планировать действия на основе временных условий, например, отправить напоминание пользователю или запланировать повторный контакт через заданный интервал времени.

**Расширенные возможности**: Интеграции могут включать заказ товаров или услуг. Например, ИИ-агент может помочь заказать такси или кофе из ближайшего кафе, интегрируясь с соответствующими сервисами.

### Как настроить **custom API**

{% hint style="success" %}

#### Описание концепции

Функции custom API позволяют интегрировать ИИ с внешними ресурсами, отправляя POST-запросы через API для передачи и получения данных. Вы можете настроить отправку структурированных JSON-запросов на ваш сервер, например, для внесения сделок в CRM или для получения информации, такой как свободные слоты в календаре.

Когда пользователь отправляет сообщение, ИИ автоматически проверяет необходимость выполнения функций. Если данных недостаточно, он запросит недостающую информацию, после чего отправит запрос на ваш сервер. Сервер обработает вебхук, вернёт ответ, который будет направлен в ИИ, и затем сгенерирует итоговый ответ. Одно сообщение от пользователя может инициировать неограниченное количество различных функций.
{% endhint %}

1. В личном кабинете Selarti перейдите в раздел «[*ИИ*](https://selarti.com/panel?menu=ai)». Затем нажмите на строку с ИИ, к которому хотите подключить внешний ресурс.

<figure><img src="https://4089339230-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSciXxWqmoBx13cWpl1JJ%2Fuploads%2FonRSkXUntOJxiIngj6Ib%2FScreenshot_1.3.png?alt=media&#x26;token=bbe3de2a-6272-47b8-897f-27c09a5140c3" alt=""><figcaption></figcaption></figure>

2. Перейдите в раздел *«Профессиональные настройки».*

<figure><img src="https://4089339230-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSciXxWqmoBx13cWpl1JJ%2Fuploads%2FM5dOl3HTTUH19a1rI17u%2FAI_functions_3.png?alt=media&#x26;token=cf342718-b7f8-4e9b-84a9-c5f0916cbfb2" alt="" width="340"><figcaption></figcaption></figure>

3. В выпадающем меню выберите *«сustom api»*.

<figure><img src="https://4089339230-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSciXxWqmoBx13cWpl1JJ%2Fuploads%2F2lpYZynCeuEys3RqEIxV%2FAI_functions_9.png?alt=media&#x26;token=7664387c-4c35-4225-98ba-5ccbd2f21860" alt="" width="340"><figcaption></figcaption></figure>

4. Напишите инструкцию для ИИ, опишите что должна делать данная функция.

<figure><img src="https://4089339230-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSciXxWqmoBx13cWpl1JJ%2Fuploads%2FH6VLrBVKNXK30AyMNQ6p%2FScreenshot_9.1.png?alt=media&#x26;token=7086fb53-ccff-43f8-ae8a-fca195abca5d" alt="" width="331"><figcaption></figcaption></figure>

5. Создайте JSON объект, описывающий структуру POST-запроса на ваш сервер. \
   Поддерживаются все типы json shema <https://json-schema.org/understanding-json-schema>

#### Пример для создания сделки в CRM:

```json
{
    "type": "object",
    "properties": {
      "name": {
        "type": "string",
        "description": "имя пользователя"
      },
      "phone": {
        "type": "string",
        "description": "Телефон пользователя"
      }
    },
    "additionalProperties": false,
    "required": [
      "name",
      "phone"
    ]
  }
```

На сервер мы ожидаем получить такой объект.

```json
{
"name": "Сергей",
"phone": "+7999999999"
}
```

Если в диалоге не будет хватать нужных данных для выполнения функции, то ИИ может сам дополнительно их спросить.

6. Добавьте URL сервера, который будет обрабатывать вебхуки от ИИ, например, Make.

<figure><img src="https://4089339230-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSciXxWqmoBx13cWpl1JJ%2Fuploads%2FfCG3s8nWXLUaq7Ri0qWu%2FAI_functions_10.png?alt=media&#x26;token=8decd093-1025-4fb3-8eca-28cac04244f9" alt="" width="340"><figcaption></figcaption></figure>

<br>

7. Пропишите правила в инструкцию ИИ как правильно взаимодействовать с функцией.

<figure><img src="https://4089339230-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSciXxWqmoBx13cWpl1JJ%2Fuploads%2F7wswxc2RdS7ZESYJW9GS%2Fimage.png?alt=media&#x26;token=600b55f8-1f53-4f39-92ef-01312925f183" alt=""><figcaption></figcaption></figure>

8. Пример реализации приёма данных в Google Sheets.

<figure><img src="https://4089339230-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSciXxWqmoBx13cWpl1JJ%2Fuploads%2FZynYnIqSAVj1pNTzWZZ1%2Fimage.png?alt=media&#x26;token=1f33e1cf-566f-4993-8602-f2d9f0c9c387" alt=""><figcaption></figcaption></figure>

9. Добавьте ответ на вебхук. Данная информация будет передана в ИИ, обработана, после чего будет сформирован ответ пользователю на основе контекста диалога и информации из ответа сервера.

<figure><img src="https://4089339230-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSciXxWqmoBx13cWpl1JJ%2Fuploads%2FfFToM0kg8OsnJ8kWl6jR%2Fimage.png?alt=media&#x26;token=69860688-bf6a-49af-9aa4-7fee51e5185e" alt=""><figcaption></figcaption></figure>

10. Протестируйте корректность выполнения функции.

<figure><img src="https://4089339230-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSciXxWqmoBx13cWpl1JJ%2Fuploads%2Fl1yJVrekEUdVWO7EkVZT%2Fimage.png?alt=media&#x26;token=bc249196-9c09-4b66-aca9-9441cea2c2e3" alt=""><figcaption></figcaption></figure>

11. Проверьте логи запроса и его обработки.

<figure><img src="https://4089339230-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSciXxWqmoBx13cWpl1JJ%2Fuploads%2F4swP5uceSbxgN5mpS72G%2Fimage.png?alt=media&#x26;token=95c6e523-ff52-4ca5-aa1a-a00eb7fcd3b5" alt=""><figcaption></figcaption></figure>

12. В Google Sheets мы получили созданную строку.<br>

    <figure><img src="https://4089339230-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSciXxWqmoBx13cWpl1JJ%2Fuploads%2FqsfSGiZjCnpeD0VO4OD8%2Fimage.png?alt=media&#x26;token=38d3b2f8-219d-4e9f-b931-4c20b3925566" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
Если у вас возникнут трудности с подключением внешних ресурсов, вы можете заказать у нас настройку функций «под ключ». Связаться с нами можно в Telegram — [@selarti\_support\_bot](https://t.me/selarti_support_bot).&#x20;
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://manual.selarti.com/osnovnye-razdely-servisa/sozdanie-i-nastroika-ii-or-ai/ii-funkcii-or-ai-functions.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
