Embeddings & search

FAQBot turns your content into searchable chunks and uses embeddings to find the most relevant pieces of text before it asks the model to answer. You don't need to manage any of this directly, but understanding the flow helps when you&aposre debugging answers.

High-level overview

Every answer from FAQBot goes through a retrieval step before the model writes anything. In simple terms:

  1. Your documents are split into smaller sections (“chunks”).
  2. Each chunk is converted into an embedding (a numeric representation of meaning).
  3. When a question comes in, FAQBot finds the closest matching chunks.
  4. Those chunks are sent to the model as context, and the model writes an answer based on that context.

If the right chunks aren't there, the answer will either be vague, generic, or clearly say it can't find what it needs.

1. Chunking your content

When you upload or sync content, FAQBot doesn't treat each file as a single blob. Instead, it breaks the text into smaller units:

  • Chunks are usually based on paragraphs, headings or logical sections.
  • Each chunk should contain one clear idea or topic where possible.
  • If you update or replace a document, the associated chunks are regenerated on the next processing run.

Good structure going in (headings, short sections, clear copy) leads to better chunks and more accurate answers coming out.

2. Creating embeddings

For each chunk, FAQBot creates an embedding: a list of numbers that capture the meaning of that text. You can think of it as a coordinate in a high-dimensional space where similar chunks live close together.

  • Embeddings are stored in a private search index for your workspace.
  • Different workspaces have separate indexes; data is not shared between customers.
  • The original chunk text is stored in your database; the embedding is stored alongside it for fast similarity search.

3. What happens when someone asks a question

When a user (or you, in the chat console) asks a question, FAQBot runs a retrieval step before generating any answer:

  1. The question is converted into its own embedding using the same model that processed your chunks.
  2. FAQBot searches your index for the closest embeddings – effectively “nearest neighbours” to that question.
  3. The top matches (for example, the best 5–10 chunks) are collected and turned into a context block.
  4. The model is asked to answer the question using that context, and to show citations for the chunks it relied on.

This is why you'll see source documents and snippets attached to most answers in the chat console.

4. Grounded answers vs generic answers

FAQBot is designed to answer from your content first. When there isn't enough relevant context, you'll typically see one of these behaviours:

  • The bot explains it can't find the answer in your docs (strict, safest option).
  • The bot gives a generic answer and makes it clear it's general guidance, not workspace-specific.
  • If you enable any future fallback behaviour, it may use a broader model response with limited or no citations.

If you want answers to stay tightly grounded, the most important thing is to keep your source content complete and up to date.

5. Practical tips for better search

  • Write like you talk to customers. Short, direct sentences turn into better chunks than dense legalese.
  • Group related topics together. Keep pricing, shipping, refunds, features, etc. in their own sections.
  • Remove contradictions. If two docs disagree, FAQBot may surface the wrong one.
  • Update and re-process. When you change important details (pricing, policies, menus), update the docs and re-run processing.

6. Debugging bad or missing answers

If the bot's answer doesn't match what you expect, work through this checklist:

  1. Check the citations in the chat console. Are they pointing at the right document and section?
  2. Open the cited document. Confirm the underlying text is correct and clearly written.
  3. Confirm the document was processed. Look at its status in the Knowledge base / Upload & process screens.
  4. Search for a keyword in your docs. If search can't find it, embeddings probably never saw that content.
  5. Try rephrasing the question. If a small wording change fixes it, you may need clearer copy or an extra document section.

If you've checked all of the above and answers still look wrong, collect a few example questions and screenshots from the chat console and include them when you contact support.