Создайте бесплатного AI-агента, который выполняет действия (без кода)

Piotr Grudzień
Опубликовано Время чтения: 12 мин
Создайте бесплатного AI-агента, который выполняет действия: дайте ему знания и одно AI Action для вызова любого API

Большинство чат-ботов умеют только говорить. Спросите у такого бота цену в вашей валюте, статус заказа или сегодняшний обменный курс, и он либо ответит наугад, либо скажет проверить где-то ещё. AI-агент, который выполняет действия, работает иначе: он вызывает настоящий API прямо во время разговора, читает результат и отвечает на его основе.

В этом руководстве вы создадите такого агента с пустого аккаунта, без кода. В конце у вас будет агент, который отвечает на вопросы на основе знаний, которые вы ему дадите, и вызывает реальный REST API во время чата. Вы также увидите это в Inbox. Действие, которое вы создадите здесь, — это основная схема: один описанный HTTP-запрос. Направьте его на другой URL, и та же схема запишет лид в таблицу, отправит данные в CRM или будет модерировать чат-сервер. Каждый туториал по интеграции в конце статьи является проработанным примером этой схемы.

Всё, что описано ниже, было создано и протестировано на реальном агенте. Каждый разговор и каждый API-вызов на скриншотах были созданы агентом, который действительно работал. Вы можете воспроизвести каждый пример.

Что вы создадите

Один агент поддержки для вымышленного инструмента планирования проектов под названием Meridian. Он делает две вещи полностью, примерно за десять минут:

  1. Отвечает на основе знаний, которые вы ему дадите: планы, цены и функции Meridian.
  2. Вызывает один реальный API во время разговора, чтобы конвертировать цену в валюту посетителя, а затем использует результат в ответе.

Действие вызывает Frankfurter, бесплатный API обменных курсов без ключа, поэтому для прохождения всего руководства вам нужен только аккаунт Quickchat. Нигде больше регистрироваться не нужно. Важна схема, а не валюты: создав это действие, вы уже получите основу для любой интеграции.

Что вам нужно:

Что такое AI-агент и чем он отличается от чат-бота?

Чат-бот отвечает. Агент отвечает и действует. В Quickchat вы создаёте агента из трёх частей.

Три части AI-агента: Identity определяет, кто он, Knowledge определяет, на основе чего он отвечает, а Actions and MCPs определяет, что он может делать Первые две части создают чат-бота. Третья, Actions, делает его агентом.

  • Identity — это то, кем является агент: его имя, роль и инструкции. Это AI Main Prompt.
  • Knowledge — это то, на основе чего он отвечает: ваши документы, страницы и факты.
  • Actions & MCPs — это то, что он может делать: вызывать API во время разговора.

Первые две части создают хорошего чат-бота. Третья делает его агентом. Большая часть этой статьи посвящена третьей части.

Что на самом деле представляет собой AI Action

AI Action — это описанный HTTP-запрос. Вы один раз заполняете запрос (метод, URL и значения для отправки) и пишете описание того, когда его использовать. Во время разговора модель решает, нужно ли его вызвать, и заполняет части, которые вы оставили открытыми. Quickchat отправляет запрос, а модель читает ответ.

Самый ясный способ понять, почему это надёжно, — разделить каждое значение в запросе на два типа.

Одно AI Action — это один описанный HTTP-запрос. Вы фиксируете детерминированные значения, такие как метод, URL и базовая валюта. Модель заполняет оценочные значения из разговора, такие как целевая валюта и сумма Вы фиксируете детерминированные значения. Модель заполняет оценочные значения из чата. Параметры — это единственные значения, которые ей нужно определить правильно.

  • Детерминированные значения — это значения, которые вы фиксируете: метод, URL, базовая валюта. Модель не может ошибиться в них, потому что она их не трогает.
  • Оценочные значения — это значения, которые модель заполняет из разговора: какую валюту запросил посетитель, какую цену конвертировать. Только эти значения требуют анализа, и только их вы настраиваете.

Вы вставляете оценочные значения через меню Add AI Data, которое добавляет чип {{...}} в любое поле. Это меню предлагает ровно три типа данных, которые могут понадобиться действию:

  • Parameters, которые вы определяете (оценочные значения, заполняемые моделью, например {{currency}}).
  • Conversation metadata, которые задаёт канал (например {{conversation_channel}} или {{metadata_visitor_email}}).
  • System Tokens: секреты, которые Quickchat хранит и подставляет, показывает как бейдж и никогда не передаёт модели.

Меню Add AI Data открыто в поле и показывает параметры действия (currency и amount) в разделе Parameters, затем значения Visitor metadata, затем Built-in variables, такие как scenario_id и conversation_channel Меню Add AI Data вставляет значение как чип: параметр, который вы определили, значение посетителя или разговора либо встроенную переменную.

Значения метаданных разговора готовы к использованию без дополнительных вопросов. Несколько полезных переменных:

ПеременнаяЧто содержит
{{conversation_channel}}Канал, в котором идёт чат (widget, telegram, whatsapp и так далее)
{{conversation_url}}Ссылка на этот конкретный разговор в вашем Inbox
{{language}}, {{country}}Язык и страна посетителя в виде двухбуквенных кодов
{{metadata_visitor_email}}Email посетителя после того, как он его сообщил
{{scenario_id}}, {{conversation_id}}Идентификаторы этого агента и этого разговора

Для этого действия нужен только первый тип (параметры). Остальные важны, когда вы подключаете реальный сервис. Руководства по HubSpot и Discord в конце используют все три типа.

Шаг 1: Создайте агента и дайте ему знания

Зарегистрируйтесь и откройте нового агента. На странице Identity задайте AI Agent Name как Meridian и вставьте это в AI Main Prompt. Это всегда доступное поле для промпта, которое есть в каждом плане. Отдельный список AI Guidelines вам не нужен.

Страница Identity агента Meridian, где AI Agent Name задан как Meridian, а AI Main Prompt описывает его роль, как он использует знания, когда конвертирует валюту и что он должен говорить нет, когда не знает ответа Инструкции агента помещаются во всегда доступный AI Main Prompt, а не в отдельный список AI Guidelines.

Вы ассистент поддержки Meridian, инструмента планирования проектов для продуктовых команд. Вы отвечаете посетителям сайта Meridian на вопросы о планах, ценах, функциях и начале работы.

Отвечайте, используя ваши знания. Все цены в ваших знаниях указаны в долларах США (USD).

Когда посетитель спрашивает, сколько стоит план или цена в другой валюте, или упоминает свою страну либо местную валюту, вызовите действие "Convert price to currency" с суммой в долларах США и 3-буквенным кодом целевой валюты, затем сообщите цену в USD и конвертированную сумму по сегодняшнему курсу.

Если вы не знаете ответа, честно скажите об этом и предложите передать вопрос команде. Никогда не угадывайте.

Две строки здесь особенно важны. Строка про доллары США сообщает модели, что означают цены в знаниях, чтобы она знала, что передать действию. Последняя строка, говорить об этом, когда не знаете, даёт честный отказ вместо догадки. Позже мы проверим оба случая.

Теперь дайте агенту материал, на основе которого он будет отвечать. На странице Knowledge Base добавьте несколько коротких статей с фактами о Meridian. Демо опирается на статью о ценах:

У Meridian есть три плана, оплачиваемых за пользователя в месяц в долларах США (USD):
- Starter: $19 за пользователя в месяц. Неограниченное количество проектов, представления timeline и board, до 3 интеграций.
- Pro: $49 за пользователя в месяц. Добавляет планирование спринтов, зависимости задач, custom fields и неограниченное количество интеграций.
- Business: $99 за пользователя в месяц. Добавляет portfolio roadmaps, advanced permissions, SSO и priority support.
Годовая оплата стоит на 17% меньше, чем помесячная. Каждый план начинается с 14-дневного бесплатного пробного периода, кредитная карта не требуется.

Страница Knowledge Base агента Meridian, где показаны три вручную добавленные статьи (Getting started and support, What Meridian does и Meridian plans and pricing), каждая отмечена Ready, использовано три статьи из пятидесяти Факты из демо, добавленные как короткие статьи и отмеченные Ready. Агент отвечает на вопросы о ценах на их основе.

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

Шаг 2: Основная схема AI Action: вызов любого REST API

Это переиспользуемая часть. Откройте Actions & MCPs, затем в разделе Custom Actions нажмите Add Action, потом API Action.

Меню Add Action открыто на странице Actions and MCPs, вверху списка находится API Action, рядом с HubSpot Action, Google Sheets, Knowledge Base, Shopify MCP и Remote MCP В разделе Custom Actions меню Add Action первым показывает API Action: описанный HTTP-запрос к любому REST API.

Каждое API Action использует одну и ту же форму в одном и том же порядке. Изучите её один раз здесь, и все последующие схемы будут теми же полями с другими значениями. У формы две половины: что собрать у посетителя и какой запрос отправить. (Также есть автоматический способ: опишите API обычным языком и позвольте Quickchat создать действие за вас, включая ссылки на документацию. Это руководство показывает ручную версию того же действия и лучше подходит, чтобы понять, что делает каждое поле.)

Значения, которые нужно собрать

Верхняя часть редактора API Action: поле API Action Name задано как Convert price to currency, а таблица What to ask the user first содержит два обязательных параметра, currency (Text) и amount (Decimal Number) Верх формы: API Action Name и два обязательных параметра, которые заполняет модель, currency и amount.

API Action Name. Короткое имя, которое модель использует для ссылки на действие.

Convert price to currency

What to ask the user first. Оценочные значения, по одному в каждой строке. Для каждого задайте Format, Name и Description, которое объясняет модели, как его заполнить, и отметьте его как Required, чтобы модель никогда не вызывала действие без него.

FormatNameDescriptionRequired
Textcurrency3-буквенный ISO-код валюты, в которую нужно конвертировать, например EUR, GBP или JPY. Определите его по валюте или стране, которую упоминает посетитель.да
Decimal NumberamountСумма в долларах США для конвертации, взятая из плана или цены, о которых спрашивал посетитель.да

«What to ask the user first» — это название поля в продукте, но агент редко останавливается, чтобы спросить. Когда посетитель пишет «сколько стоит Business в евро», у модели уже есть оба значения (amount из ваших знаний, currency из слова «евро»), и она сразу их заполняет.

Запрос, который нужно отправить

Нижняя часть редактора API Action: метод API request задан как GET, API endpoint URL задан как endpoint Frankfurter latest, вкладка Query Params показывает base со значением USD, а symbols и amount заданы чипами currency и amount, также показано API Action Description Запрос: GET к Frankfurter, где base фиксирован как USD, а чипы currency и amount добавлены в Query Params.

API request method и endpoint URL. GET к эндпоинту актуальных курсов Frankfurter:

GET
https://api.frankfurter.dev/v1/latest

Query Params. Здесь встречаются детерминированные и оценочные значения. Добавьте три строки на вкладке Query Params. Введите USD для base, а для двух других нажмите Add AI Data и выберите параметры, которые вы определили. Это вставит чипы {{currency}} и {{amount}}.

KeyValue
baseUSD
symbols{{currency}}
amount{{amount}}

Headers и Body: нет. Это GET, где всё передаётся в строке запроса.

API Action Description. Самое важное поле. Именно его модель читает, чтобы решить, нужно ли вызывать действие, поэтому привяжите описание к чёткому сигналу, а не описывайте механизм.

Конвертируйте сумму в долларах США в другую валюту по сегодняшнему обменному курсу. Вызывайте это каждый раз, когда посетитель спрашивает, сколько стоит цена или план в валюте, отличной от долларов США, либо указывает свою страну или местную валюту. Передайте сумму в долларах США и 3-буквенный ISO-код валюты, в которую нужно конвертировать.

Сохраните его и включите действие. Это вся схема: имя, значения для сбора, запрос и описание.

Готовое действие Convert price to currency на странице Actions and MCPs, включено, отмечено как API Action и показывает 100-процентную успешность вызовов Готовое действие, включённое. Карточка сразу показывает количество вызовов и их успешность.

Ничто здесь не является специфичным для валют. Замените URL и параметры запроса на данные своего API, и у вас будет другое действие.

Направьте действие на ваш собственный API

Действие Frankfurter читает данные: это GET с публичными данными. Ваш собственный API обычно использует ту же форму, только с несколькими дополнительными заполненными полями.

  • Чтобы записывать, а не только читать, задайте метод POST, PATCH или DELETE и поместите данные во вкладку Body как JSON. Те же чипы {{...}} работают внутри тела запроса, поэтому { "email": "{{email}}" } отправляет то, что собрала модель.
  • Для API, которому нужен ключ, добавьте строку во вкладке Headers (например, Authorization) и вставьте ключ через Add AI Data, выбрав System Token. Quickchat хранит секрет и подставляет его во время вызова, поэтому он отображается как бейдж и никогда не передаётся модели и не записывается в промпт.
  • Всё остальное идентично: имя, параметры для сбора и описание, которое определяет, когда действие срабатывает.

Руководство по HubSpot создаёт таким способом четыре действия POST с подставленным OAuth-токеном, а руководство по Discord создаёт семь действий к Discord API с токеном бота в заголовке. Оба используют ту же форму, которую вы только что заполнили, но с другими URL и телом запроса.

Шаг 3: Протестируйте и посмотрите, как происходит вызов

Вот весь цикл в одной картинке: посетитель спрашивает, модель заполняет оценочные значения, Quickchat добавляет фиксированные значения и делает запрос, а ответ содержит результат.

Пять шагов одного вызова AI Action: посетитель спрашивает цену в евро, модель заполняет оценочные значения (currency EUR, amount 99), Quickchat добавляет фиксированные значения и отправляет GET-запрос к Frankfurter API, API возвращает конвертированный курс, а агент отвечает с этим результатом Один вызов от начала до конца: модель заполняет оценочные значения, а Quickchat добавляет фиксированные значения и делает запрос.

Пообщайтесь с агентом в AI Preview (вверху левого меню) или в виджете на вашем сайте, затем откройте разговор в Inbox. Сначала задайте обычный вопрос о цене, затем попросите указать её в другой валюте:

Посетитель: Сколько стоит план Business? Meridian: План Business стоит $99 за пользователя в месяц.

Посетитель: А сколько это в евро? Meridian: План Business стоит $99 за пользователя в месяц, что составляет примерно €86.81 за пользователя в месяц по сегодняшнему курсу.

Первый ответ приходит из знаний. Второй означает, что сработало действие. Вам не нужно верить ответу на слово: в разговоре есть маркер 1 action called, а при раскрытии виден сам вызов.

Разговор Meridian в Inbox. Агент называет цену плана Business из знаний, затем конвертирует её в евро. Раскрытая карточка вызова действия показывает, что Convert price to currency вернул 200 за 85 миллисекунд, отправлены amount 99 и currency EUR, а также ответ Frankfurter Агент берёт цену $99 из знаний, затем конвертирует её в евро. Карточка 1 action called доказывает, что вызов сработал и вернул 200.

Карточка честно отражает, что произошло между сообщением и ответом. Она показывает, что действие вернуло 200, точные значения, которые отправила модель (amount: 99, currency: EUR), и ответ, который вернул Frankfurter. Когда вы создаёте собственное действие, эта карточка и журнал вызовов для действия (общее число вызовов, процент успешных вызовов, каждый запрос и ответ) — это место, где вы подтверждаете, что агент вызвал правильное действие с правильными значениями, а не только то, что ответ звучал правильно.

То же действие работает с любой валютой. Спросите о плане Starter в японских иенах, и агент вызовет Frankfurter с amount: 19 и currency: JPY, а затем ответит, что $19 — это примерно ¥3,087 по сегодняшнему курсу. Та же схема, другое значение, заполненное моделью.

Разговор Meridian, где посетитель спрашивает цену плана Starter в японских иенах, а агент отвечает, что 19 долларов — это примерно 3 087 иен за пользователя в месяц, с карточкой вызова действия, где amount 19 и currency JPY возвращают 200 То же действие, другая валюта: $19 становится ¥3,087. Изменилось только значение, которое заполнила модель.

Журнал вызовов действия доступен в один клик. Откройте View logs у действия, чтобы увидеть каждый сделанный вызов: общее число, процент успешных вызовов и для каждого вызова точный запрос и полученный ответ.

Журнал действия Convert price to currency: два вызова, 100-процентная успешность и средняя задержка 144 миллисекунды, каждый вызов показывает URL запроса, отправленные параметры (amount и currency) и полный ответ от Frankfurter Каждый вызов, который сделало действие, с точным запросом, ответом и статусом. Обе конвертации вернули 200.

Шаг 4: Сделайте действие надёжным

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

Отметьте параметры как обязательные. И currency, и amount обязательны, поэтому модель не может вызвать действие с неполным запросом. Необязательные параметры нужны для действительно необязательных значений.

Пусть описание решает, когда действие срабатывает. Модель читает описание, а не имя, чтобы выбрать действие. Расплывчатое описание («конвертирует валюты») срабатывает непредсказуемо. Описание, привязанное к сигналу («вызывай это каждый раз, когда посетитель спрашивает цену в валюте, отличной от долларов США»), срабатывает тогда, когда нужно. Если действие вызывается не вовремя или не вызывается вообще, почти всегда нужно исправлять описание.

Пусть считает API, а не модель. В первой версии валютного действия часто запрашивают обменный курс, а умножение оставляют модели. Языковые модели не являются надёжными калькуляторами, а неправильная сумма в вопросе о цене хуже, чем отсутствие суммы. Frankfurter принимает параметр amount и возвращает уже конвертированное значение, поэтому модели нужно только прочитать 86.81, а не вычислять его. Когда ваш API может вернуть готовое значение, используйте его, а не просите модель рассчитать результат.

Проверьте, что агент говорит нет. Надёжность касается не только срабатывания. Она также означает, что агент не выдумывает. Спросите агента о том, чего нет в его знаниях, например о сертификации безопасности, которую вы не добавили:

Разговор Meridian, где посетитель спрашивает, сертифицирован ли Meridian по SOC 2 Type II. Агент отвечает, что в его документации нет информации об этом, он не может это подтвердить и рекомендует связаться с командой, вместо того чтобы угадывать Честное «нет»: когда в знаниях нет ничего о SOC 2, агент отказывается отвечать вместо догадки.

Посетитель: Meridian сертифицирован по SOC 2 Type II? Meridian: В моей документации нет информации о том, что Meridian сертифицирован по SOC 2 Type II, поэтому я не могу это подтвердить. Если вам нужен точный ответ для проверки безопасности или закупки, рекомендую связаться с командой напрямую по адресу support@meridian.example.

Этот отказ означает, что последняя строка промпта выполняет свою работу. Агенту, который вызывает реальные API, нужно доверять в том, что он понимает границы своих знаний, поэтому проверяйте «нет» так же целенаправленно, как «да».

Эти четыре рычага делают одно действие на чтение надёжным. Действия, которые записывают данные (возврат товара, возврат денег, создание записи), требуют большего: они должны срабатывать только при правильном условии и аккуратно передавать значение следующему действию. Для этого есть отдельное руководство: сделайте действия вашего агента надёжными описывает ограничение срабатывания действия серверными условиями, которые чат не может обойти, и передачу захваченного значения между действиями.

Запуск в работу

Действие принадлежит агенту, а не отдельному каналу, поэтому оно работает везде, где развёрнут агент. Включите веб-виджет, и та же конвертация валют будет работать для посетителя на вашем сайте. Подключите Telegram, WhatsApp, Messenger, Slack или Discord, и оно будет работать там без изменений. Для каждого канала ничего переделывать не нужно. Развёрнутый агент везде сохраняет свои действия.

Куда перейти дальше: реальные интеграции

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

Полный справочник полей находится в документации AI Actions.

Часто задаваемые вопросы

Как бесплатно создать AI-агента?

Создайте бесплатный аккаунт Quickchat AI, дайте агенту короткий основной промпт и знания, на основе которых он будет отвечать, затем добавьте одно AI Action, описанный HTTP-запрос, чтобы он мог вызывать API во время разговора. Создание агента, загрузка знаний, создание и включение действий бесплатны, а для всего руководства достаточно бесплатного плана.

Нужно ли писать код, чтобы создать AI-агента?

Нет. Вы описываете агента обычным языком и заполняете форму действия: имя, значения, которые нужно собрать у посетителя, метод и URL запроса, а также описание того, когда его вызывать. Quickchat отправляет запрос и передаёт ответ обратно агенту. Вам не нужно писать или размещать код.

Сколько времени занимает создание AI-агента?

Около десяти минут для агента из этого руководства: несколько минут, чтобы написать его промпт и добавить ваши факты как знания, и ещё несколько минут, чтобы заполнить одну форму AI Action. Ничего устанавливать не нужно, код писать не нужно.

Чем AI-агент отличается от чат-бота?

Чат-бот отвечает на вопросы. AI-агент также выполняет действия: он может вызвать API во время разговора, чтобы что-то найти или изменить, а затем использовать результат в своём ответе. В Quickchat вы создаёте агента из трёх частей: Identity (кто он), Knowledge (на основе чего он отвечает) и Actions (что он может делать).

Может ли AI-агент использовать актуальные данные в реальном времени?

Да. Каждый раз, когда агент вызывает AI Action, он делает новый запрос, поэтому всегда использует актуальные данные. Агент в этом руководстве получает сегодняшний обменный курс при каждой конвертации. Направьте действие на ваш собственный API, и он будет читать ваши текущие данные тем же способом.

Может ли AI-агент вызывать мой собственный API?

Да. AI Action в этом руководстве является обычным HTTP-запросом. Направьте его на ваш собственный REST API вместо публичного API, использованного здесь, задайте метод, URL, заголовки и тело запроса, а также опишите, когда агент должен его вызывать. Та же схема работает для любого REST API, включая приватные API с авторизацией по токену.

Может ли у одного AI-агента быть больше одного действия?

Да. У агента может быть много AI Actions, и он выбирает подходящее для каждого сообщения на основе описаний, которые вы пишете. В этом руководстве создаётся одно действие, чтобы сохранить фокус. Руководства по интеграциям добавляют несколько действий к тому же агенту.

Могут ли ChatGPT, Claude или Gemini создать агента, который выполняет действия?

Вы можете создать агента в Quickchat и выбрать модель, на которой он будет работать. Во время разговора модель решает, когда вызывать ваше действие, и заполняет значения из чата, поэтому агент сам что-то ищет или изменяет. Вы также можете открыть готового агента для ChatGPT, Claude и Cursor как MCP-сервер.

Что агент на самом деле умеет после создания?

Всё, что может сделать REST API. В этом руководстве используется запрос актуального курса валют, но та же форма действия записывает лид в Google Sheets, создаёт контакт в HubSpot, модерирует Discord-сервер или управляет Telegram-группой. Каждый из этих примеров является проработанным вариантом основной схемы из этой статьи.

Как агент понимает, когда нужно вызвать действие?

Описание действия — это то, что модель читает для принятия решения. Привяжите его к чёткому сигналу, например «вызывай это, когда посетитель спрашивает цену в валюте, отличной от долларов США», и отметьте нужные значения как обязательные. Параметры — это единственные значения, которые модель должна заполнить. Всё остальное в запросе фиксировано.

Безопасно ли разрешать AI-агенту вызывать API?

Вы контролируете запрос. Вы фиксируете метод, URL и любые секреты (они подставляются на стороне Quickchat и никогда не показываются модели), а модель заполняет только параметры, которые вы определили. Для действий, которые записывают данные, вы можете ограничить вызов серверными условиями, которые чат не может обойти. Руководства по HubSpot и Discord подробно показывают полные паттерны безопасности.

Можно ли создать и попробовать бесплатно?

Да. Создание агента, добавление знаний, создание и включение AI Actions бесплатны, и для всего руководства достаточно бесплатного плана. Когда вы будете готовы запустить агента для большего числа посетителей, платные планы добавят более высокие лимиты и более продвинутые модели.

Quickchat AI Quickchat AI Ask Quickchat AI a question