# Business and customer data for language operators

Language operators can use external data to better understand your customers and your business, enabling more personalized and accurate conversation analysis.

When you connect your intelligence configuration to these data sources, language operators gain awareness of:

* **Who the customer is**, based on prior interactions and known traits
* **What business-specific information** should guide how the conversation is interpreted

Using external data improves result quality beyond what the conversation text alone provides.

> \[!NOTE]
>
> To enable business and customer awareness for Conversation Intelligence, you must activate [Conversation Memory](/docs/conversations/memory) and [Enterprise Knowledge](/docs/conversations/knowledge) for your Twilio account.

## External data for language operators

Language operators can draw from different types of external data to enrich conversation analysis. These data sources help language operators understand both the customer and the business beyond what the conversation text alone provides.

[Conversation Memory](/docs/conversations/memory) and [Enterprise Knowledge](/docs/conversations/knowledge) are the two categories of external data available to language operators. Language operators can access this data in two ways:

* [**Parameters** (deterministic)](/docs/conversations/intelligence/create-custom-language-operators#parameters): Explicit inputs selected by you and resolved before the language operator prompt is sent to the AI model
* [**Context** (dynamic)](/docs/conversations/intelligence/create-custom-language-operators#context-capabilities): Dynamic inputs retrieved by the AI model at runtime based on the live conversation

The table below summarizes the available data sources and how each is delivered to language operators.

| Data source              | What it provides                                                  | How it's used by language operators                             | How data is provided  | Examples                                                                                                                                                                                  |
| ------------------------ | ----------------------------------------------------------------- | --------------------------------------------------------------- | --------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Conversation Memory**  | Customer-specific traits and observations from past conversations | Enables awareness of who the customer is and prior interactions | N/A                   | <ul><li>**Observational memory**: Automatically captured insights from past conversations</li><li>**Trait memory**: Structured attributes from your CDP, CRM, or data warehouse</li></ul> |
| **Enterprise Knowledge** | Enterprise-specific information, policies, and procedures         | Grounds analysis in business rules and factual information      | Parameters or context | FAQs, agent scripts, product documentation, support articles, internal policy guides                                                                                                      |

## Parameters vs. context

A language operator doesn't directly embed Conversation Memory or Enterprise Knowledge. Instead, the operator defines a schema for the external data it expects, and the *intelligence configuration* controls how to supply that data at execution time.

Decide how to deliver external data to language operators based on your use cases and requirements.

### Parameters

Parameters are resolved outside the AI model, producing predictable and repeatable language operator behavior.

Use parameters when:

* You know the data in advance
* You explicitly select the data
* You need consistent, auditable behavior

### Context

Language operators declare which context types they can access. The AI model determines what information to retrieve and when to retrieve it during execution.

Use Conversation Memory or Enterprise Knowledge data as context when:

* You don't know the data in advance
* The data depends on the live conversation state
* You want the AI model to select data dynamically at runtime

## Twilio-authored vs. custom language operators

Parameters and context are standard concepts across all language operators, whether they're Twilio-authored or custom. How you interact with them depends on the operator type.

### Twilio-authored language operators

For Twilio-authored operators, the operator schema is predefined. It specifies:

* Which parameters the language operator expects
* Whether context capabilities are enabled, and which types are supported (Conversation Memory, Enterprise Knowledge , or both)

When you use a Twilio-authored operator, you don't define how the operator uses external data. Instead, you [define the intelligence configuration rules](/docs/conversations/intelligence/define-rules) to supply the required parameters and context at runtime.

### Custom language operators

For a custom language operator, you define the operator schema yourself. This includes:

* Declaring parameters and their expected types
* Enabling context capabilities and specifying how external data may be accessed

This gives you full control over how Conversation Memory and Enterprise Knowledge are incorporated into the language operator's logic, so you can design operators tailored to your specific use cases.

## Supported data types by how data is provided

| Data type            | As parameters                                                                                   | As context                  |
| -------------------- | ----------------------------------------------------------------------------------------------- | --------------------------- |
| Conversation Memory  | ❌                                                                                               | ✅                           |
| Enterprise Knowledge | ✅ (for example, substitute agent scripts or other knowledge base content into the model prompt) | ✅ (available for retrieval) |

## Next steps

* Learn how to [create a custom language operator](/docs/conversations/intelligence/create-custom-language-operators) that uses Conversation Memory and Enterprise Knowledge.
* Learn how to [create intelligence configurations](/docs/conversations/intelligence/create-intelligence-configuration) and [define rules](/docs/conversations/intelligence/create-intelligence-configuration#define-rules).
