# Output

### **Overview**

The **Output Node** in UPTIQ Workbench allows workflows to display messages within a conversation, either for **internal processing** or **user-facing communication**. This node helps control **what information is presented, to whom, and in what format**, ensuring clarity in interactions and internal workflow execution.

By leveraging the **Output Node**, developers can:\
✅ **Guide user interactions** by displaying status updates, confirmations, or responses.\
✅ **Provide internal reasoning context** without exposing information to users.\
✅ **Format and structure responses** dynamically within AI workflows.

### **Configurations**

| Field                       | Description                                                                                                            |
| --------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
| **Type**                    | Determines **who sees the message**. Options: `External` (visible to users) or `Internal` (for reasoning engine only). |
| **Text**                    | The actual message that will be displayed.                                                                             |
| **Formatting Instructions** | Determines how the message should be structured. Example: Preserve formatting as provided by the user.                 |

1. **Type**

**Internal Messages**

The **Internal Message Type** in the **Output Node** is a powerful feature that allows developers to create a **chain effect of user queries**. When an **Internal Message** is generated, the output of this node is **automatically passed back** to the **Intent Classification system**, triggering a **new round of sub-agent classification, intent identification, and workflow execution**—just as if the user had manually entered the message.

#### **How It Works**

1. The Output Node generates an **Internal Message** instead of displaying it to the user.
2. This message is **fed back into the AI agent**, acting as a **new user query**.
3. The **Intent Classification system** processes the message and routes it to the appropriate **sub-agent and workflow**.
4. The AI executes the next set of actions **proactively**, reducing the need for additional user input.

#### **Why This Matters for AI Workflow Design**

✅ **Creates a Proactive AI Agent**

* AI agents **don’t always need to wait for a user’s next query**.
* Instead, they can **predict logical next steps** and execute them automatically.

✅ **Reduces User Input for Multi-Step Processes**

* Users don’t need to enter repetitive queries.
* AI can generate **follow-up queries dynamically**, making interactions more efficient.

✅ **Enables Smarter Flow Execution**

* AI **auto-generates queries** based on user intent and retrieved data.
* This makes workflows **more intelligent and context-aware**.

**External Messages**

* Displayed **to the user** as part of the conversation.
* Used for **providing responses, confirmations, or next steps**.
* Example: `"Thank you for your patience. Your report is now ready."`

2. **Text** \
   Enter the message that should be displayed to the user or forwarded to the intent classification module of the reasoning engine
3. **Formatting Instructions**\
   Specify your formatting guidelines in this field. Workbench will use these instructions to be applied during output generation to customize the format and include any additional information needed.

### **Output Format**

After execution, the message is displayed based on its type.\
For **External Messages**, the user will see:

```plaintext
Thank you for your patience. Your report is now ready.
```

For **Internal Messages**, the AI will receive the string output based on what is set in **Text** field.

### **Example Use-Cases**

#### **1. Notifying Users About Report Generation**

A workflow generates a financial report and needs to notify the user when it's ready.

* **Configuration:**
  * **Type:** `External`
  * **Text:** `"Thank you for your patience. Your report is now ready."`
  * **Formatting Instructions:** `Preserve formatting provided by user.`
* **Outcome:** The user receives a message confirming report availability.

#### **2. Providing Internal Instructions to AI Reasoning Engine**

A workflow processes a loan application and requires an internal update for reasoning.

* **Configuration:**
  * **Type:** `Internal`
  * **Text:** `"Processing loan application with ID: LA123456."`
* **Outcome:**
  * The AI receives **contextual guidance** without exposing this message to the user.

#### **3. Auto-Follow-Up on a Loan Application Status**

**Scenario:**\
A user asks: *"What is the status of my loan application?"* The workflow fetches the loan status and, if it’s **pending**, **generates a follow-up query** to suggest additional actions.

* **Configuration:**
  * **Type:** `Internal`
  * **Text:** `"The user’s loan application is still pending. Ask them if they want to connect with a loan officer for assistance."`
* **Outcome:**
  * Instead of requiring the user to ask *"Can I connect with a loan officer?"*, the AI **proactively generates this question**.
  * The new query goes through **intent classification**, triggering a workflow to **offer an appointment booking option**.

#### **4. Intelligent Next-Step Execution in Financial Reports**

**Scenario:**\
A user requests: *"Show me my last 3 transactions."*\
Once transactions are retrieved, the AI **automatically asks** if the user wants **further insights**, such as **categorizing spending trends**.

* **Configuration:**
  * **Type:** `Internal`
  * **Text:** `"User requested their last 3 transactions. Generate a query to analyze spending patterns and show category-wise breakdown."`
* **Outcome:**
  * Instead of waiting for the user to **ask for a spending analysis**, the AI **triggers the next logical step proactively**.
  * The **Intent Classification system** processes the new query and runs the appropriate workflow.

### **Key Takeaways for Developers**

✅ **Control Information Visibility** – Decide whether messages should be visible to users (`External`) or restricted to AI reasoning (`Internal`).

✅ **Enhance User Experience** – Use `External Messages` to provide **real-time updates, confirmations, or guided interactions**.

✅ **Improve Workflow Debugging & Context Awareness** – Use `Internal Messages` to **log key workflow steps** and guide AI behavior.

✅ **Customizable Formatting** – Messages can **preserve user-provided formatting**, ensuring structured communication.

By integrating the **Output Node**, developers can **improve the clarity, control, and effectiveness of AI-driven conversations**, enhancing both **user experience and internal process efficiency**. 🚀
