> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ringg.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Create a Knowledge Base

> Upload approved documents that assistants can use during calls.

A knowledge base lets an assistant answer from approved documents instead of guessing. Use it for FAQs, pricing, policies, eligibility rules, product details, and support scripts.

***

## Before You Start

Prepare clean source files:

| Requirement          | Guidance                                                                                                                               |
| -------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| Source type          | Upload files for document knowledge, use CSV for deterministic row-based data, or add FAQs/URLs when available in your workspace       |
| Supported file types | PDF, DOCX, TXT, CSV, JSON, and other text-readable files. Export spreadsheets to CSV when you need structured deterministic retrieval. |
| File quality         | Use text-based files when possible. Avoid scanned PDFs unless they have searchable text.                                               |
| File count           | Up to 4 files per knowledge base                                                                                                       |
| File size            | Up to 512 MB per file                                                                                                                  |
| Source owner         | Confirm the documents are approved for customer-facing answers                                                                         |
| Refresh plan         | Decide who will retrain the knowledge base when documents change                                                                       |

***

## Step 1 - Open Knowledge Base

1. Click **Knowledge Base** in the left sidebar.
2. Click **Create Knowledge Base**.

Choose the knowledge base type.

| Type                     | Use It When                                                     |
| ------------------------ | --------------------------------------------------------------- |
| **Deterministic KB**     | You need structured, predictable answers from fields you define |
| **Non Deterministic KB** | You have general documents such as FAQs, SOPs, or manuals       |

***

## Create a Deterministic Knowledge Base

Use this for structured information such as pricing tables, policy rules, eligibility fields, product catalogs, or plan comparisons.

1. Click **Deterministic KB**.
2. Enter a clear **KB Name**.
3. Upload a CSV or other structured text file.
4. Click **Edit Schema**.
5. Add the fields the assistant should retrieve, such as `product_name`, `price`, `policy_code`, or `eligibility_status`.
6. Choose the data type for each field.
7. Click **Train Knowledge Base**.

Training can take a few minutes. Wait until the knowledge base is ready before attaching it to an assistant.

***

## Create a Non Deterministic Knowledge Base

Use this for less structured documents such as FAQs, help articles, policy documents, SOPs, or product manuals.

1. Click **Non Deterministic KB**.
2. Enter a clear **KB Name**.
3. Upload source files such as PDFs, DOCX files, TXT files, CSVs, JSON files, or clean text-readable documents.
4. Click **Train Knowledge Base**.

The assistant will search the uploaded content during calls and use the most relevant information it finds.

***

## Attach the Knowledge Base to an Assistant

1. Click **Assistants** in the left sidebar.
2. Open the assistant that should use the documents.
3. Click **Assistant Settings** and then **Knowledge Base**.
4. Select the trained knowledge base.
5. Click **Save**.

Run a test call and ask questions that should use the knowledge base. Confirm the assistant answers from the right source.

***

## Tips for Better Answers

<Tip>
  Keep each knowledge base focused on one business topic. A focused pricing KB or FAQ KB is easier to test than one large mixed document set.
</Tip>

* Use clear document titles and headings.
* Remove old or conflicting information before upload.
* For deterministic knowledge bases, make schema field names match your source columns.
* Retrain after every source document update.
* Test with real customer questions before launch.

***

## Developer Handoff

If engineers use the knowledge base through APIs or need to verify production setup, send them:

| Item                          | Why They Need It                                                          |
| ----------------------------- | ------------------------------------------------------------------------- |
| Knowledge base name           | Helps them confirm the right document set is attached                     |
| Knowledge base type           | Explains whether answers are schema-driven or document-search based       |
| Source document owner         | Tells them who approves updates                                           |
| Assistant name and `agent_id` | Lets them confirm the assistant is attached to the correct knowledge base |
| Test questions                | Gives them sample cases for QA and support workflows                      |

If an integration stores knowledge base IDs, ask the developer to retrieve and store the correct ID after the knowledge base is trained.
