Two steps under AI put a language model in your flow. AI Task asks the model once. AI Agent holds a whole conversation with the customer, and the flow waits at that step until it ends.
| AI Task | AI Agent | |
|---|---|---|
| Picker hint | Ask an LLM once | Hold a whole conversation |
| Replies | One, saved to a variable | Many, until the conversation ends |
| Outputs | One, plus a second for errors if you choose Take an error branch under If it fails | One, plus a second for errors if you choose Take an error branch under If it fails |
| Own settings | Ask about, Reply format | Conversation, Lookups, Exits, Site facts |
Both share the same model, knowledge, tools and output settings below.
Set up the model
In the Model section choose:
- Provider — Anthropic, OpenAI, DeepSeek or DataQueue VoiceHub.
- Connection — the provider's API key. Add one with New. It is stored once, encrypted.
- Model — sent to the provider as you choose it.
- Max tokens — an upper bound on reply length.
Write the System prompt: instructions the model follows on every turn. Variables are filled in from the conversation.
VoiceHub works differently
A VoiceHub step calls an agent you configured in VoiceHub, by Agent id. Its instructions and abilities live there, so a system prompt, tools and a structured reply format do not apply.
AI Task
- Ask about names a variable the model answers about. Leave it empty to answer the customer's latest message. In a flow with no customer-message trigger, name a payload key or an earlier step's output.
- Reply format — turn on Return structured data to make the model answer as an object with fields you define (Text, Number, Yes / no, or raw JSON). Later steps read fields as
{{output.field}}. Anthropic and OpenAI enforce the shape; DeepSeek only asks for JSON.
AI Agent
Under Conversation:
- 1Model
- 2Knowledge
- 3Tools
- Exit keyword ends the chat when the customer's whole message is exactly that word, in any casing. "please cancel" does not match "cancel". Without one, only the AI or the turn limit ends it.
- Turn limit counts customer messages before the chat ends on its own. Blank uses 20; the most allowed is 100.
- Conversation memory (characters) limits how much of the chat goes back to the model each turn. Arabic uses more of the model's window per character than English.
The flow continues to the next step only when the conversation ends. The latest reply is saved to the Output variable.
Extra sections:
- Exits — up to 10 outcomes the AI can end the chat with, each with an id and a description. A Router can test the chosen exit. The ids
done,keyword,max_turnsanderrorare written by the engine itself. - Lookups — up to 10 calls to your own system. You fix the address and method; the AI fills only the blanks you declare and never sees the address or key. A lookup marked Changes data can write to your system, so describe exactly when it may be used.
- Site facts — up to 6000 characters about your business, shown to the AI every turn. Correct anything a site read got wrong.
Knowledge
In the Knowledge section pick a Knowledge base to ground answers in your own content. You can tune Passages per reply (default 4), Map depth (default 2) and Map size limit (default 4000 characters). Manage knowledge bases jumps to the Knowledge page.
Anthropic and DeepSeek steps read a base's Voyage backend; OpenAI steps read its OpenAI vector store. If the base has not configured the matching backend, the step runs without context. See Add knowledge sources.
Tools
In Tools, Add piece lets the AI call an app's actions. Choose a connection (required), then leave Actions empty to grant every action or pick some. Pinned arguments fix values the AI cannot override, such as always posting to one channel. Tool round-trips per reply defaults to 6, with a ceiling of 20. A step can expand at most 64 tools.
Output and failure
Save result to names the variable. If it fails offers Stop the flow, Carry on anyway (the failure is saved to an error variable) or Take an error branch, which adds a second outlet for the failure path.