Skip to main content

Intents

When building conversational bots in Botnex, Intents are a key concept for understanding and responding to what your users want. Intents help your bot recognize user goals and trigger the right actions or responses, making conversations feel natural and intelligent.

What are Intents?

An Intent represents the purpose or goal behind a user's message. For example, if a user types "I want to order pizza," the intent might be "order_food." Intents allow your bot to understand and categorize user input, so it can respond appropriately regardless of how the user phrases their request.

Think of intents as the "why" behind what users say—they capture the underlying meaning and purpose of user messages.

How Intents Work

LLM-Based Intent Matching: Unlike traditional NLP platforms like Dialogflow CX, Botnex uses a unique approach where intents chain prompts together to create a single, comprehensive prompt that is sent to a Large Language Model (LLM). This enables deterministic intent matching—the same user input will consistently produce the same intent classification.

Prompt Chaining Process: When a user sends a message, Botnex constructs a prompt that includes:

  • The user's message
  • All defined intents and their example phrases
  • Context from the current conversation
  • Instructions for the LLM to classify the intent

Deterministic Results: Because the same prompt structure is used for identical inputs, the LLM produces consistent, predictable intent classifications, making your bot's behavior reliable and debuggable.

Triggering Flows: Each intent can be linked to a specific flow or node in your bot. When an intent is detected, the bot automatically jumps to the corresponding part of your flow to handle the user's request.

Custom Intents: Define your own intents based on the needs of your bot and business. For example: "book_appointment," "check_weather," "cancel_order," or "get_support."

Example Phrases: For each intent, provide example phrases that become part of the prompt sent to the LLM. These aren't used for traditional "training" but rather help the LLM understand the patterns and variations of how users might express that intent.

Using Intents in Your Bot

  1. Define Intents: Create intents for the main actions or topics your users might ask about
  2. Add Example Phrases: For each intent, add several example phrases that demonstrate different ways users might express that goal
  3. Connect Intents to Flows: Link each intent to the appropriate node or flow in your bot
  4. Test and Refine: Test your bot with real user input and refine your intents and example phrases as needed

Example: Restaurant Bot

Suppose you're building a restaurant bot. Here are some intents you might create:

Intent: order_food

  • Example Phrases:
    • "I want to order food"
    • "Can I get a pizza?"
    • "I'd like to place an order"
    • "Order lunch for delivery"
  • Linked Flow: Starts the food ordering process

Intent: check_hours

  • Example Phrases:
    • "What are your hours?"
    • "When do you open?"
    • "Are you open now?"
    • "What time do you close?"
  • Linked Flow: Shows business hours and current status

Intent: make_reservation

  • Example Phrases:
    • "I need a table for tonight"
    • "Book a reservation for two"
    • "Can I reserve a table?"
    • "Table for four at 7pm"
  • Linked Flow: Starts the reservation booking process

Best Practices

Be Specific: Create intents for distinct user goals. Avoid overlapping intents that might confuse the LLM's classification.

Use Diverse Example Phrases: Add a variety of real-world examples for each intent, including different ways people might express the same goal. These help the LLM understand the full range of expressions for each intent.

Think Like Your Users: Consider how your actual users would phrase their requests, including casual language, typos, and different levels of detail.

Review and Update Regularly: Monitor user interactions and update intents to improve accuracy based on real usage patterns.

Include a Fallback Intent: Always have a fallback or default intent to handle unrecognized input gracefully and keep conversations flowing.

Test with Real Data: Use actual user messages to test your intents and identify gaps in your example phrases.

Intent Features Summary

FeatureDescriptionExample
IntentUser's goal or purpose"order_food", "check_hours"
Example PhraseSample user message for an intent"I want to order food"
Linked FlowBot action or flow triggered by the intentStart order process
Confidence ScoreHow certain the LLM is about the intent match85% confidence

How Botnex Differs from Traditional Platforms

Unlike traditional NLP platforms that use machine learning models trained on large datasets, Botnex leverages the reasoning capabilities of modern LLMs through carefully constructed prompts. This approach offers several advantages:

  • No Training Required: You don't need large datasets or training cycles
  • Immediate Updates: Changes to intents take effect immediately
  • Better Context Understanding: LLMs can consider conversation context and nuance
  • Deterministic Behavior: Consistent results for the same inputs
  • Transparent Logic: The prompt-based approach is more interpretable than black-box ML models

By using LLM-based prompt chaining for intent recognition, Botnex provides a more flexible, maintainable, and powerful approach to understanding user intentions while maintaining the reliability and predictability essential for production conversational systems.