Создайте бесплатного AI-агента с действиями без кода

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

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

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

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

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

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

  1. Отвечает на основе знаний, которые вы ему дадите: планы, цены и функции Meridian.
  2. Вызывает один live 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 metadata готовы к использованию без дополнительных вопросов. Несколько полезных переменных:

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

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

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

Зарегистрируйтесь и откройте нового агента. На странице Identity задайте AI Agent Name как Meridian и вставьте это в AI Main Prompt. Это всегда доступное поле 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 к endpoint актуальных курсов 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, где всё передаётся в query string.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Visitor: А сколько это в евро? 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. Когда вы создаёте собственное действие, эта карточка и журнал вызовов для действия (общее число вызовов, success rate, каждый request и response) это место, где вы подтверждаете, что агент вызвал правильное действие с правильными значениями, а не только то, что ответ звучал правильно.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Запуск в production

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Что агент фактически может делать после создания?

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

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

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

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

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

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

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