Действие «Нейросеть»
«Нейросеть» — действие в сценарии действий, которое подключает к боту LLM. Поддерживает 8 типов запросов: чат, ассистенты с файлами, генерация и анализ изображений, расшифровка и анализ аудио.
Используется для:
- умных ответов на свободные вопросы клиента;
- классификации обращений (продажа/поддержка/возврат);
- автогенерации текстов под клиента;
- анализа присланных клиентом фото и аудио;
- генерации изображений по описанию.
Провайдеры
| Провайдер | Модель по умолчанию (на вашем ключе) | Особенности |
|---|---|---|
| Grok (xAI) | grok-4.5 | На нём же работает бот, когда ключа нет |
| ChatGPT (OpenAI) | gpt-4.1 | |
| Claude (Anthropic) | claude-sonnet-5 | Картинок и звука не умеет |
| Gemini (Google) | gemini-3.6-flash | Умеет анализ аудио обычной моделью |
| DeepSeek | указывается: deepseek-chat, deepseek-reasoner | |
| Kimi (Moonshot) | kimi-k3 | Картинок и звука не умеет |
| YandexGPT | обязательно: b1g.../yandexgpt/latest | В названии модели — идентификатор каталога |
| RouterAI | любая модель шлюза с префиксом: openai/gpt-4.1-mini | Шлюз-посредник |
| AITunnel, LowRouter | любая модель шлюза без префикса: gpt-4o, claude-opus-5 | Шлюз-посредник |
Шлюз — посредник, через который доступны модели разных разработчиков по одному ключу. Нейросеть у шлюза выбирается именно полем «Модель»: без него запрос уйдёт к модели шлюза по умолчанию.
Пока ключ не указан, запрос в любом случае уходит через Grok на аккаунте Квесчи — вместе с адресом и моделью. Выбранное в поле «Нейросеть» начнёт работать, как только вы впишете свой ключ.
Что нужно перед использованием
- Ничего — действие работает сразу, с баланса аккаунта (нужно не меньше 5 ₽).
- Чтобы работала выбранная нейросеть и платили вы напрямую: аккаунт у провайдера и API-ключ из его личного кабинета.
- Для типа «Assistant» — созданный ассистент и Vector Store с файлами в OpenAI Storage.
- Для типа «Ответ по файлу» — загруженный файл в раздел «Файлы» в Квесче.
Как добавить
В сценарии действий → «Добавить действие» → «Нейросеть».
Скриншот 1. Действие «Нейросеть».
Поля «Нейросеть» (провайдер) и «Тип запроса» определяют дальнейший набор настроек.
Часть 1. Типы запросов — кратко
| Тип | Что делает | Когда выбирать |
|---|---|---|
| Response | Базовый чат через /v1/responses API | Универсальный диалог с поддержкой контекста |
| Completion | Чат через классический /v1/chat/completions | Если нужен полный контроль через массив сообщений |
| Ответ по файлу | Ответ по файлу, загруженному в Квесчу | Простая база знаний без OpenAI Storage |
| Assistant | Запрос к OpenAI-ассистенту с Vector Store | Большие базы знаний, сложная база FAQ |
| Image | Генерация изображений (DALL-E 2/3) | По описанию сгенерировать картинку |
| Анализ изображения | Что нарисовано/написано на картинке | Распознавание чеков, документов, фото |
| Аудио в текст | Расшифровка голоса в текст | Голосовые сообщения → текст для поиска |
| Анализ аудио | Вопрос по голосовому сообщению: звук уходит в нейросеть вместе с вопросом | «О чём просит клиент», «какое настроение у записи» |
Разница между двумя аудио-типами: «Аудио в текст» возвращает расшифровку и ничего больше, «Анализ аудио» отвечает на ваш вопрос о самой записи, не пересказывая её.
| Тип | Где работает |
|---|---|
| Аудио в текст | RouterAI и AITunnel — на их моделях распознавания, Gemini — обычной моделью |
| Анализ аудио | RouterAI, AITunnel, LowRouter и Gemini — на мультимодальных моделях |
Часть 2. Общие настройки
API-ключ
Правило одно, и оно не про провайдера, а про то, чей ключ:
| Ключ указан | Что происходит |
|---|---|
| Да | Работает выбранная вами нейросеть, запрос идёт на вашем ключе. Платите вы напрямую провайдеру, с баланса Квесчи ничего не списывается |
| Нет | Запрос уходит через Grok на аккаунте Квесчи и оплачивается с баланса. Выбранные провайдер и модель при этом не используются — Grok их заменить не может |
Поле «API ключ» лежит в «Расширенные настройки».
Без своего ключа запрос идёт за счёт платформы, поэтому баланс проверяется до отправки. Меньше 5 ₽ — запрос не уйдёт, а в переменную результата запишется 0. Обработайте это условием, чтобы бот сказал что-то внятное вместо молчания.
Что нельзя сделать без своего ключа
Grok подменяет собой любого провайдера, но не любой тип запроса:
| Тип | Почему нужен свой ключ |
|---|---|
| Assistant | Используется ваш ассистент и ваш Vector Store в вашем аккаунте OpenAI или Grok |
| Image | Своей модели картинок у xAI нет |
| Аудио в текст | У xAI нет расшифровки — она есть у шлюзов и Gemini |
| Анализ аудио | Нужны мультимодальные модели шлюзов или Gemini |
Без ключа такой запрос не уходит вовсе, а в переменную результата пишется 0.
Тип «Ответ по файлу» идёт своим путём: провайдер и ключ берутся у самого файла на странице «Списки».
Поле «API ключ» находится в «Расширенные настройки» (для Assistant — на виду, так как обязательно). Хранится зашифрованно.
Прочитайте токен в список и сохраните в первом блоке в переменную #{g_openai_token} — при ротации меняете в одном месте.
Модель
Поле «Модель нейросети» лежит в «Расширенные настройки». У ChatGPT его можно не заполнять — подставится рабочее значение по умолчанию:
| Тип запроса | Модель по умолчанию (ChatGPT) |
|---|---|
| Response, Completion, Анализ изображения | gpt-4.1 |
| Image | dall-e-3 |
| Аудио в текст | gpt-4o-transcribe |
| Assistant | берётся из вашего ассистента |
| Ответ по файлу | модель шлюза, указанного у файла |
У остальных провайдеров значения по умолчанию свои — они перечислены в таблице провайдеров выше. Подсказка под полем всегда показывает то, что подставится при выбранном провайдере.
У RouterAI, AITunnel и LowRouter поле «Модель» определяет, к какой нейросети уйдёт запрос. У RouterAI название пишется с префиксом разработчика (openai/gpt-4.1-mini, anthropic/claude-sonnet-4.5), у AITunnel и LowRouter — без него (gpt-4o, claude-opus-5, gemini-3-6-flash).
У YandexGPT в название модели входит идентификатор каталога: b1g.../yandexgpt/latest. Без него запрос не уйдёт.
Указывайте свою модель, только если нужна другая:
| Тип | Примеры моделей |
|---|---|
| Response/Completion | gpt-5.2, gpt-4.1, gpt-4o, claude-opus-5, gemini-3.1-pro, deepseek-reasoner, grok-4.5 |
| Image | dall-e-3, dall-e-2 |
| Анализ изображения | gpt-5, gpt-4.1, gpt-4o, gpt-4o-mini |
| Аудио в текст | gpt-4o-transcribe, gpt-4o-mini-transcribe, whisper-1 |
| Assistant | (опционально, иначе берётся из настроек ассистента) |
Запрос
Поле «Запрос» — сам промпт. Поддерживает шаблоны замен и переменные:
Клиент пишет: [Answer1].
Дай вежливый ответ на русском.
Стиль: дружелюбный, без капса.
Ограничения: до 300 символов.
Параметры качества
| Поле | Значение |
|---|---|
| Ограничение ответа в токенах | Максимальное число токенов в ответе. Меньше = быстрее и дешевле |
| Температура | 0..1. 0 — детерминированно, 1 — максимально случайно. Для FAQ — 0, для генерации текстов — 0.5-0.7 |
Сохранение результата
| Переменная | Что содержит |
|---|---|
| Имя переменной (ответ) | answervar — текстовый ответ нейросети |
| Имя переменной (результат) | resultvar — 1 если ответ получен, 0 если ошибка |
| Имя переменной (JSON) | responsevar — полный JSON ответа нейросети для анализа |
Часть 3. Тип «Response» — базовый чат
Самый универсальный тип. Подходит для большинства задач.
Контекст беседы
Галочка «Контекст» — нейросеть помнит предыдущие реплики клиента. Это создаёт ощущение настоящего диалога.
- ID беседы хранится в переменной
_responseId(или вашей). - Максимальная сумма токенов беседы — когда лимит превышен, бот начинает беседу заново.
maxcontexttokens не может быть больше контекстного окна модели (например, у gpt-4o-mini это 128К). При превышении API вернёт ошибку.
Кто помнит беседу сам, а кто нет
| Провайдер | Как хранится переписка |
|---|---|
| ChatGPT, Grok | Беседу помнит сам провайдер, бот передаёт только её идентификатор |
| Claude, Gemini, YandexGPT, DeepSeek, Kimi, RouterAI, AITunnel, LowRouter | Переписку ведёт само действие: она складывается в переменную сценария и уезжает целиком с каждым запросом |
На результат это не влияет — контекст работает у всех. Разница в расходе: у второй группы каждый следующий запрос везёт с собой всю беседу, поэтому токенов уходит больше. Ограничивайте «Максимальную сумму токенов беседы» — она же и режет этот рост.
Галочка «Контекст» не показывается там, где смысла в ней нет: у генерации изображений и у расшифровки аудио.
Инструкции
Поле «Инструкции» — системный промпт. Задаёт «характер» бота:
Ты — менеджер магазина электроники Квесча.
Отвечай дружелюбно, на русском, кратко (1-2 предложения).
Не выдумывай товары, которых нет в каталоге.
Если не знаешь — предложи связаться с человеком.
Часть 4. Тип «Completion» — классический чат
Аналог Response, но через API /v1/chat/completions. Отличается полем «Контекст» — там задаётся весь массив сообщений в формате OpenAI:
[
{ "role": "system", "content": "Ты помощник магазина" },
{ "role": "user", "content": "Привет!" },
{ "role": "assistant", "content": "Здравствуйте! Чем помочь?" },
{ "role": "user", "content": "#{client_question}" }
]
Используйте, если нужен полный контроль над историей беседы (например, в списке хранится переписка и собирается JSON через JS код).
Часть 5. Тип «Assistant» — база знаний на OpenAI
Использует OpenAI Assistants API + Vector Store — собственное файловое хранилище у OpenAI.
Подготовка
- Зайдите в OpenAI Platform → Storage → создайте Vector Store.
- Прикрепите к нему документы (PDF, DOCX, TXT) с информацией для бота.
- Скопируйте Vector Store ID.
Настройка в Квесче
- Токен — ключ OpenAI;
- Vector Store ID - ID хранилища;
- Модель — можно переопределить ту, что у ассистента (опционально);
- Запрос — вопрос клиента;
- Контекст — включить для непрерывной беседы;
- Инструкции — дополнительный системный промпт.
Идеально для FAQ, базы знаний компании, технических документов.
Часть 6. Тип «Ответ по файлу»
Упрощённая база знаний. Файлы загружаются на странице «Списки / WebApp» в раздел «Ответ по файлу», в действии выбираются из выпадающего списка.
- Файл — выбор загруженного файла;
- Запрос — вопрос по содержимому файла;
- Контекст — поддержка диалога.
Файл хранится у нас и передаётся нейросети ссылкой при каждом запросе — ждать индексации не нужно, хранилища на стороне провайдера нет.
Для этого типа выбранная в действии нейросеть и поле «API ключ» не используются. Шлюз (RouterAI, AITunnel или LowRouter) и ключ указываются у самого файла — кнопка «Шлюз и ключ» на странице «Списки / WebApp». Запросы идут на вашем ключе и за ваш счёт; без ключа действие завершится с результатом 0.
Из действия берётся только модель: пусто — модель шлюза по умолчанию.
Часть 7. Тип «Image» — генерация изображений
Создание картинок через DALL-E.
| Поле | Значение |
|---|---|
| Модель | dall-e-3 (одна картинка, лучшее качество) или dall-e-2 |
| Число изображений | 1-10 (для dall-e-3 только 1) |
| Качество | hd — только для dall-e-3. Лучше, но дороже |
| Размер | dall-e-2: 256x256, 512x512, 1024x1024. dall-e-3: 1024x1024, 1792x1024, 1024x1792 |
| Стиль | vivid (контрастно) или natural (естественно) — только dall-e-3 |
Сохранение результата
- «Сохранить все url через запятую» — все ссылки в одной строке;
- «Сохранить один url» + «Порядковый номер» — конкретное изображение (1-10) в свою переменную.
Дальше URL подставляется в блок как картинка (тип медиа = ссылка).
Пример запроса
Профессиональная фотография корзины с яблоками сорта Антоновка
на деревянном столе. Утренний свет от окна. Натюрморт, реализм.
Часть 8. Тип «Анализ изображения»
Распознавание содержимого картинки (Vision).
- URL изображения — ссылка на картинку. Обычно — переменная
#{media_url}после приёма медиа. - Запрос — что распознать: «Какой номер на чеке?», «Что изображено?», «Прочитай рукописный текст».
- Модель —
gpt-4o,gpt-4.1,gpt-5.
Применения
- Распознать чек/документ от клиента;
- Понять, что на фото: продукт, человек, документ;
- Извлечь номер заказа, паспорта, штрих-кода;
- Описать товар на фото для каталога.
Часть 9. Тип «Аудио в текст»
Транскрибация голосовых сообщений и аудио.
- URL аудио — обычно
#{media_url}после приёма голосового от клиента; - Модель —
whisper-1,gpt-4o-transcribe,gpt-4o-mini-transcribe.
Сценарий «голосовой бот»
- Подписчик присылает голосовое.
- Действие медиа сохраняет URL в
#{media_url}. - Действие «Нейросеть» (Аудио в текст) →
answervar=voice_text. - Дальше работаем с
#{voice_text}как с обычным текстовым ответом — отправляем в Response для содержательного ответа.
Расшифровка работает у RouterAI и AITunnel на их моделях распознавания, у Gemini — обычной моделью.
Часть 9а. Тип «Анализ аудио»
Вопрос по голосовому сообщению: звук уходит в нейросеть вместе с вопросом, и она отвечает не пересказом, а по существу.
- URL аудио — тот же
#{media_url}; - Запрос — что нужно узнать: «О чём просит клиент, одной фразой», «Это жалоба или заказ?», «Какое настроение у говорящего?».
Работает у RouterAI, AITunnel, LowRouter и Gemini на мультимодальных моделях.
Если из голосового нужен только вывод («жалоба/заказ/вопрос»), «Анализ аудио» даёт его одним запросом. Расшифровка ради классификации — это два запроса вместо одного и лишний текст, который потом всё равно никто не читает.
Часть 10. Архитектура
Принцип 1. Чёткие инструкции — лучшее качество
Чем подробнее системный промпт (поле «Инструкции») — тем стабильнее ответы. Указывайте:
- роль (кто бот);
- стиль ответа;
- ограничения по длине;
- что нельзя делать.
Принцип 2. Используйте контекст там, где он нужен
«Контекст» хранит беседу, но платите за каждый запрос как за весь объём беседы. Для разовых запросов (классификация, перевод) — выключайте контекст.
Принцип 3. Классификация — простой и дешёвый способ
Не давайте нейросети писать ответ — пусть классифицирует:
Запрос: "[Answer1]"
Определи категорию из списка:
- "доставка"
- "возврат"
- "оплата"
- "другое"
Верни одно слово.
Сохраните в переменную category → ветвите блок по #{category}.
Принцип 4. Лимит токенов — не пренебрегайте
Без лимита нейросеть может выдать сочинение на 2000 токенов. В мессенджере это раздражает + дорого. Ставьте 200-500 для коротких ответов.
Принцип 5. Обрабатывайте ошибки
Сеть может не ответить. Используйте resultvar (= 0 при ошибке) для ветвления: если 0 → «Попробуйте чуть позже» или передача в чат менеджеру.
Принцип 6. Не отправляйте чувствительные данные
Не передавайте в промпт #{client_phone}, паспорта, медицинские данные. Сначала фильтруйте.
Принцип 7. Тестируйте температуру
0— для FAQ, классификации, технической помощи;0.5— для писем, креатива на основе фактов;0.7-1— для рекламных текстов, идей.
Часть 11. Типовые сценарии
Сценарий 1. Умный FAQ через Assistant
- Создайте ассистента OpenAI с Vector Store, прикрепите PDF с инструкциями.
- Цепочка «Поддержка» с триггером «сообщение не обработано».
- Действие «Нейросеть» — Assistant, запрос =
[Answer], контекст вкл. - Блок показывает
#{answer}.
Сценарий 2. Распознавание чека
- Блок «Пришлите фото чека».
- Действие медиа сохраняет URL.
- Действие «Нейросеть» (Анализ изображения), запрос: «Извлеки сумму и дату из чека в формате
сумма|дата». - Действие JS код: разобрать
#{answer}по|в#{sum}и#{date}. - Блок: «Принято: сумма
#{sum}от#{date}».
Сценарий 3. Голосовой бот
- Подписчик присылает voice.
- Медиа →
#{media_url}. - Нейросеть «Аудио в текст» →
#{voice_text}. - Нейросеть Response с инструкцией ассистента → ответ.
- (Опционально) Нейросеть Image для генерации картинки по запросу.
Сценарий 4. Классификатор обращений
- Цепочка «Распределитель» (триггер: начало диалога).
- Действие «Нейросеть» Response — запрос: «Категория обращения из: продажа/поддержка/жалоба. Запрос: [Answer1]. Верни одно слово.»
- По
#{category}ставим теги → клиент идёт в нужную цепочку.
Частые ошибки
resultvar = 0— проверьте токен, баланс на API-аккаунте, корректность модели.- «Чушь в ответе» — недостаточно конкретный запрос. Добавьте «Инструкции», конкретные примеры, ограничения.
- Дорого — снизьте
maxtokens, используйтеgpt-4o-miniвместоgpt-4o, отключите контекст где не нужен. - Контекст не сохраняется между сообщениями — у клиента нет
_responseIdпосле первого запроса. Проверьте, чтоresponseidсохраняется в переменную, которая живёт между блоками. - Анализ картинки возвращает «не вижу» — модель не поддерживает Vision. Используйте
gpt-4o/gpt-4.1/gpt-5. - DALL-E генерирует не то — улучшайте промпт, добавляйте стиль (
vivid/natural), детали.
Что дальше
- Приём и пересылка медиа — получить фото/голосовое от клиента.
- HTTP-запросы — для собственных LLM-серверов.
- JS код — постобработка ответа нейросети.
- Глобальные переменные — хранение API-токенов.
- Цепочки — «сообщение не обработано» как триггер.