# Basic Chat Agent Config

Following the previous steps, once the chat agent is created, its basic settings are prefilled based on the initial configuration.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-5cacdeb41d2fc52a3aaa14c975ba07779e140610%2FScreenshot%202024-10-17%20at%2012.38.36%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

This guide provides a step-by-step overview of how to configure and fine-tune the chat agent’s behavior and capabilities by adjusting all the configurations. When the configuration is changed, you can immediately see the result from the Preview tab on the right.

### Chatbot Name

This is the name of the chat agent. It will be displayed as the agent’s identity when interacting with users.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-f979ad33f83e468378170603b6b5c121b9e78e6e%2FScreenshot%202024-10-17%20at%2012.38.52%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

### Chatbot Description

This field defines the purpose of the chat agent. Provide a brief explanation of what the chat agent is designed to do, so users know its capabilities.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-6060533ca3f20aae84e6c8f97a3123f099a98766%2FScreenshot%202024-10-17%20at%2012.38.57%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

### Assigning a Role to the Chatbot

This is a critical configuration that allows you to set the chat agent's role. The role is used to instruct the LLM on how to respond to user queries, giving context to the chat agent's behavior. This description acts as a "persona" for the chat agent.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-3890157e9971d7cc1f4bac1e3b96e7cad398a5af%2FScreenshot%202024-10-17%20at%2012.39.04%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

### Choosing the Brain (LLM) for the Chatbot

This field allows you to select which large language model the chat agent will use to answer the user question.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-43e26c608e055ad1fc13d9e9b98f6b6a81a3507c%2FScreenshot%202024-10-17%20at%2012.40.03%20AM.png?alt=media" alt="" width="437"><figcaption></figcaption></figure>

When your chat agent uses epsilla/gpt-4o  models, every message or request sent to the LLM is tracked and counts towards your monthly usage limit, which is based on [how many messages your plan allows](https://epsilla-inc.gitbook.io/epsilladb/billing-management#tracking-current-plan-usage).

If you want to use a different model, you can bring your own API keys for other LLMs, such as those from OpenAI or Anthropic. In this case, the cost of using those external models (measured by the number of tokens processed) will be covered by you, directly through the API provider. This means that when using your own keys, the usage does not affect your Epsilla monthly message quota.

### Configuring Knowledge for the Chatbot

This section allows you to connect one or more knowledge bases to the chat agent, enabling it to reference specific information when answering user queries.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-500491a6dcdee292bf8acbdcd1aeda24ed9bdfc4%2FScreenshot%202024-10-17%20at%2012.56.41%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

**Adding a Knowledge Base**

1. Click on the dropdown under "Add Knowledge Base" to see the list of available knowledge bases that have already been created.
2. Select the desired knowledge base from the list.
3. You can add multiple knowledge bases by repeating the above steps.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-deeb93d86ba0a5cef1b33ebc9d513e47694ff969%2FScreenshot%202024-10-17%20at%2012.56.58%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

**Removing a Knowledge Base**

1. If you wish to remove a knowledge base, click on the trash icon next to the selected knowledge base.
2. This will detach the selected knowledge base, preventing the chat agent from using that source for future queries.

**Configuring Advanced Knowledge Retrieval**

The knowledge retriever is responsible for fetching relevant information from the connected knowledge bases during the chat agent's interaction. For use cases that need a high knowledge retrieval quality, the advanced section allows you to configure how the system searches and retrieves information to ensure the chat agent provides the most relevant responses.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-5a5c63247c664d3614702d2f25c9decbd4b4aa1e%2FScreenshot%202024-10-17%20at%2012.57.58%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

* **HyDE (Hypothetical Document Embeddings):** HyDE is a feature that can be enabled to refine retrieval by generating a hypothetical document based on the query. The generated document is then used to search the knowledge base, improving the accuracy of retrieval. You can toggle this option depending on whether you need this functionality for deeper search optimization. You can even customize the prompt for HyDE, and choose which LLM to power the generation.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-2fa72453b7109f5c241dc0c858ee8caf94cade7f%2FScreenshot%202024-10-17%20at%201.00.08%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

For each knowledge base you add, a corresponding retriever is automatically added. These retrievers are numbered sequentially (e.g., Retriever 1, Retriever 2) based on the order of the added knowledge bases. Each retriever fetches information from its assigned knowledge base and can be individually configured to optimize how data is retrieved:

* **Source Knowledge Base:** This is the knowledge base from which the retriever should pull information.
* **Similarity Search Function:** This option determines how the retriever identifies relevant records from the knowledge base. You can select between different methods:
  * **Semantic Similarity (Dense Vector Embeddings):** The system will use vector embeddings to measure how semantically similar the input query is to the records in the knowledge base. This is ideal for understanding the meaning of the query in context.
  * (Coming soon) Other options include keyword search functions, but dense vector embeddings offer a deeper level of understanding.
* **Number of Candidates:** This field controls how many records the retriever should pull from the knowledge base based on best match of chosen similarity search function. You can increase or decrease this number based on how many records you want the model to consider. The default value is 10.
* **Retriever Type:** How to retrieve the records from the knowledge base.
  * **Basic Retriever:** The system retrieves the records as-is, without any further processing.
  * **Hypothetical Question Retriever:** The system retrieves the [generated hypothetical questions](https://epsilla-inc.gitbook.io/epsilladb/knowledge-base/advanced-settings/hypothetical-questions)  via semantic search first, then traces back to the original documents.
  * (Coming soon) Other options: You may have more advanced retriever types depending on your specific use case, such as sentence-window retriever and auto-merging retriever.
* **Filter (Optional):** If you want to apply semantic distance filters and meta data filters to refine the retrieved results, you can use this field.
  * **Example:** You can add a filter like `@distance < 0.7` to ensure that only records with a certain level of similarity (based on the distance between vectors) are returned. You can add a meta data filter like `Filename LIKE '%Instruction 1040%'` to constrain the results to only those documents related to IRS Instruction 1040, ensuring the chat agent retrieves information from highly relevant documents.
  * You can also provide filters dynamically through an API payload when integrating external systems with the chat agent. This allows the chat agent’s behavior to adapt in real-time, making its responses more flexible and tailored to specific contexts or user queries.

A reranker reorganizes the results retrieved by the chat agent, prioritizing them based on their relevance to the user’s query. By applying different reranking methods, the reranker ensures that the most relevant and useful information is surfaced first, improving the overall quality of the chat agent's responses. When you have only one retriever, using a reranker is optional. However, if your chat agent is connected to multiple knowledge bases (resulting in multiple retrievers), enabling a reranker becomes essential to effectively combine and rank the results from each retriever.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-320f84ae86f9b7be7bbd3d422ad6033ca75fef12%2FScreenshot%202024-10-17%20at%2012.59.04%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

* **Semantic Distance:** This method ranks the results based on their semantic closeness to the query. It uses vector embeddings to determine how conceptually similar each document is to the query.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-fcd5034e82d9b34e17a728146198bbdedd1c2c4b%2FScreenshot%202024-10-17%20at%2012.59.12%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

* **Reciprocal Rank Fusion (RRF):** RRF aggregates the rankings from multiple retrievers. It favors documents that appear high in multiple retriever lists. The rerank constant can be adjusted to control how much emphasis is placed on the ranking order from each retriever. This option allows you to assign different weights to the results from each retriever, helping you prioritize the retrievers that should have a stronger influence on the final ranking.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-b59c0f8245288d779a3e84b716ab806022161276%2FScreenshot%202024-10-17%20at%2012.59.25%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

* **Relative Score Fusion (RSF):** RSF calculates the relative scores of documents across retrievers and reranks them based on the weighted score, ensuring the most relevant documents surface higher in the results.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-5a0c3ac557227acc071a60b7dbe4cb1cfea50e26%2FScreenshot%202024-10-17%20at%2012.59.32%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

* **Jina AI Reranker:** This reranker leverages a pre-trained Jina AI reranker model, such as `jinaai/jina-reranker-v1-base-en`, to reorder documents with a learned ranking model. It applies more sophisticated machine learning techniques for reranking based on training data.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-a866d1755635fb1489eefefd913d5c10b81f9400%2FScreenshot%202024-10-17%20at%2012.59.43%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

### Tools

The **Tools** section allows you to enhance the AI agent's capabilities by integrating additional skills. These tools enable the chat agent to perform specialized tasks, such as retrieving real-time information from the internet or accessing external systems, ensuring more dynamic and contextually relevant interactions.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-2d3035406ca141028c3ff270916dc3292c854b38%2FScreenshot%202024-11-22%20at%2012.52.44%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

#### **Search the Internet**

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-8b2a192b4f95f7e9afc5d7f8e40f0dfed3f7afd5%2FScreenshot%202024-11-22%20at%2012.53.58%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

* The **Search the Internet** tool enables your chat agent to retrieve relevant information from the web. This feature can be customized to focus on specific domains or perform general searches. Below are the configurable settings:
  * **Enable/Disable Search**: Toggle the tool on or off to activate or deactivate internet search capabilities for the chat agent. You will need add [Tavily integration](https://epsilla-inc.gitbook.io/epsilladb/integration#web-search-providers) before enabling it.
  * **Max Number of Results**: Define the maximum number of results the search should return. For example, you can set it to 5 to limit the number of results retrieved.
  * **Advanced Search**: Enable or disable advanced search options for more refined queries.
  * **Focus Search**: Narrow down search results by specifying one or more focus domains. For instance, you can add a domain such as `https://stackoverflow.com` to constrain retrieving results from that specific site. If leaving empty, the search will be from the whole internet.

### Configuring Chatbot Appearance

The appearance configuration allows you to customize the look and feel of the chat agent interface, ensuring that it aligns with your brand and provides an engaging user experience.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-714cee9a68d2f902138861c4677b4b7188f66a88%2FScreenshot%202024-10-17%20at%201.33.19%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

* **Add Chatbot Icon:** This option allows you to upload a custom icon for the chat agent, which will be displayed in the chat window. This icon helps personalize the chat agent and make it easily recognizable for users.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-8c7ae95f1dc90670239dfa9c2acb59438be8947f%2FScreenshot%202024-10-17%20at%201.33.29%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

* **Primary Color:** The primary color defines the dominant color theme for the chat agent's interface. It influences various elements such as message buttons or key highlights.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-74a9d81c020604a4003e89666a2ba612c4a4b235%2FScreenshot%202024-10-17%20at%201.34.16%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

* **Background Color:** This option allows you to set the background color for the chat window. You can select a color that matches your website's or brand’s theme for a consistent user experience.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-e3c510468e57782f4cdf659a6b863f95c6b8bc27%2FScreenshot%202024-10-17%20at%201.34.43%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

* **User Message Style:** You can customize the appearance of user messages by selecting a background color, adjusting the border radius, or show/hide user avatar.

  * **Background Color:** Choose the color of the message bubbles for user inputs.

  <figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-1779276d320dceee0116d9a91d8a722b93922318%2FScreenshot%202024-10-17%20at%201.36.18%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

  * **Border Radius:** Control the roundness of the message bubbles. Higher values result in more rounded edges.

  <figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-b3d5ee28a8415c113dd0a40e6d9948fc04e5fa71%2FScreenshot%202024-10-17%20at%201.36.58%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

  * **Hide User Avatar:** Don't show user avatar for user messages

  <figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-f32bbd2346f293718e6d5076407999f764d8172d%2FScreenshot%202024-10-17%20at%201.37.25%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>
* **Bot Message Style:** Customize how the chat agent's responses appear in the chat. You can hide the message box background or use the default color for bot buttons.

  * **Hide Message Box Background:** You can toggle this setting to remove the background from bot messages, making them appear directly on the chat background.

  <figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-a80a9e573a25588186ef3f0e664217defbbdeea6%2FScreenshot%202024-10-17%20at%201.38.55%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

  * **Use Default Color for Bot Buttons:** Enabling this option will apply the default button colors to the action buttons below the chat agent's response messages.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2FzxzoPrmDxb3hOWr4X7iY%2FScreenshot%202024-10-17%20at%201.38.30%20AM.png?alt=media&#x26;token=9aec043c-378a-41bd-9ad7-e7876b3bb70c" alt="" width="563"><figcaption></figcaption></figure>

### Customizing the Chat Experience

Epsilla provides multiple options to fine-tune the chat experience, allowing you to personalize how the chat agent interacts with users and adjust key interface elements. Below are the key settings you can configure to create a seamless and engaging chat interface:

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-1eecdedcef7d9a727440aa78c17893d138a5190f%2FScreenshot%202024-11-03%20at%204.09.49%20PM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

* **Chatbot Introduction Message:** This is the initial message the chat agent sends when a user opens the chat window. It acts as a welcome message, giving the user an idea of what the chat agent can help with.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-039e720042f3571342374203d7d88d9dcccdc47c%2FScreenshot%202024-10-17%20at%202.03.19%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

* **Chatbox Placeholder:** This is the placeholder text that appears in the chat input box before a user starts typing. It gives users a hint about what they can ask.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-79df5a6117329f0f5b289c2f5be56750d3fe44e7%2FScreenshot%202024-10-17%20at%202.03.40%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

* **Sample Questions:** This feature allows you to predefine a set of sample questions that appear as clickable suggestions below the chatbox. These suggestions help guide users who might not know what to ask or who need a starting point.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-090a518e881c813a936efaea0369e9693008d553%2FScreenshot%202024-10-17%20at%202.04.12%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

* **Citations:** Users can configure how citations appear and interact within chat responses. These settings offer flexibility to tailor the presentation of sources and references.

In the **How to show citations** option, users can select between two main display styles: a simple **Quotation Mark** style or a more detailed **Card** style. Quotation Mark is the default choice.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-143fdf93564e52902a58ac797ad0cf376f0d9054%2FScreenshot%202024-11-03%20at%204.18.10%20PM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

The **Card** style includes a brief title and description of the knowledge record, limited to three lines for readability. Additionally, users can choose to display a **Thumbnail** image along with the title, enhancing the visual context of the citation.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-c66902ed16d88402d8bb790b605fbe79f9f8e6b4%2FScreenshot%202024-11-03%20at%204.19.24%20PM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

The **Behavior when clicking on a citation** setting controls when user click a citation in the message, how to show citation details in the drawer. By default, Epsilla will decide automatically. It will highlight PDF, or show the knowledge record content directly for non-PDF files.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-937149e414a0347c174515c0ecf3390fdea9cb4b%2FScreenshot%202024-11-03%20at%204.20.32%20PM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

When choosing **Webpage of the Provided URL**, Epsilla will fetch the linked webpage from the configured **URL field**  in the knowledge record and render the webpage.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2FEuVoKLclk8Y8lKMcleHf%2FScreenshot%202024-11-03%20at%204.21.17%20PM.png?alt=media&#x26;token=3cfc8446-4070-43e8-80de-7de027759fba" alt="" width="563"><figcaption></figcaption></figure>

When choosing **Open the webpage of the provided URL in a new tab,** Epsilla will open the linked webpage from the configured **URL field** in a new browser tab.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-a0e7ae83dbd3a8fe9dacaa66505bfbfb29dc9af9%2FScreenshot%202024-11-22%20at%209.40.12%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

* **Generate Follow-Up Questions:** This setting enables the chat agent to automatically generate follow-up questions based on the user’s previous queries. The questions are intended to keep the conversation flowing and prompt deeper engagement. You can even customize the prompt, and choose which LLM to power the generation.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-1033e9f02be7394603af8ad082b86820dcd43d8a%2FScreenshot%202024-10-17%20at%202.05.14%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

* **How to Label a Chat:** This option allows you to set a rule for how chats should be labeled in the chat history. Labels can be automatically generated based on the conversation's content or time.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-fafdd4a04c33e3783a735a885f4c71f8855a9d0f%2FScreenshot%202024-10-17%20at%202.06.18%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

* **Hide Epsilla Logo:** Toggling this option allows you to hide the Epsilla branding from the chat interface, making the experience more custom to your brand. This is only available for Professional tier and Enterprise tier customers.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-2368fbf6cb7a3981a60dcda3c11486a3530b4444%2FScreenshot%202024-10-17%20at%202.07.30%20AM.png?alt=media" alt="" width="551"><figcaption></figcaption></figure>

* **Collect User Feedback:** When this option is enabled (by default), users can provide feedback on the chat agent's responses. Feedback buttons (e.g., thumbs up, thumbs down) appear below each message, helping you assess the chat agent's performance.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2F25ORBmTSUGH867EF5mAV%2FScreenshot%202024-10-17%20at%202.06.57%20AM.png?alt=media&#x26;token=4d6a846d-b92c-46e2-ba3e-7c056daff61c" alt="" width="563"><figcaption></figcaption></figure>

* **Allow Message Sharing:** This option enables users to share chat agent messages with others, either through social media or other platforms. It adds share icons to the chat agent interface, increasing the reach of helpful information.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-09c89779067fe360347936d674333d46b47f8571%2FScreenshot%202024-10-17%20at%202.07.11%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

### Advanced Settings Documentation

The Advanced Settings section allows fine-tuning of your chat agent's behavior for specific use cases. These advanced settings offer enhanced control over chat agent behavior, ensuring a customized experience aligned with specific needs and optimizing the flow of information between the user and the chat agent.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-2a0163d819a62301fe32f8888f12490d19150bad%2FScreenshot%202024-10-17%20at%202.18.19%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

* **Prompt Template** controls how the chat agent responds to user queries. The template is designed to provide context based on both the **chat history** and **related knowledge** retrieved by the chat agent. The format includes placeholders like `<CHAT_HISTORY>`, `<RELATED_KNOWLEDGE>`, and `<USER_QUESTION>` to ensure the chat agent provides grounded responses based on the user's context.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-6a520fc680ddcd1e36096975c3c1baf127b6cb8d%2FScreenshot%202024-10-17%20at%202.18.32%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

* **Chat History** setting allows the chat agent to remember a portion of the conversation, helping it maintain context.
  * **Most Recent Rounds**: Choose how many previous messages are remembered in the chat. Default to 5 rounds.
  * (Coming soon) Other options include getting the most semantically relevant rounds of messages, or do a summarization of the conversation.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-fa3f2f149fa524a3a712b52ddf64115cdf29ac6e%2FScreenshot%202024-10-17%20at%202.18.45%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

* **Rewrite User Question:** When enabled, the chat agent can **rewrite the user's question**. This setting is particularly useful for improving the chat agent's understanding of the user questions. You can even customize the prompt, and choose which LLM to power the query rewriting.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-3df84c15b2773e924bd393a2b3ba5c2535917d0d%2FScreenshot%202024-10-17%20at%202.18.55%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

* **Execution Timeout (Seconds):** This setting allows you to define how long the chat agent should wait for a response to process before timing out. This can help prevent system overloads or endless waits for responses from external systems. Default timeout is set to 180 seconds, but this can be adjusted depending on the complexity of the queries and your system's performance.

<figure><img src="https://2532879721-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FM0ZX7fId7ifK45ldHWEp%2Fuploads%2Fgit-blob-68c836e32508c97d418f868b113f9fa251ca4055%2FScreenshot%202024-10-17%20at%202.19.02%20AM.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>
