Knowledge base (RAG)

Upload company materials, product docs, and client briefs so the LLM speaks your business instead of generic AI.

Last updated: 2026-05-13

RAG (Retrieval-Augmented Generation) lets the LLM "know your business". This guide covers uploads, retrieval, and how it pairs with glossary.

1. The problem it solves

LLMs translate from a general corpus. When industry jargon, company terms, or specific client context shows up, they have to guess. The result is often:

  • Translation is "technically correct" but reads like AI
  • Important context ("Our Phoenix-7 is a laser-cutting unit") is dropped
  • The same concept is rendered inconsistently across the call

RAG injects relevant document snippets into the prompt to fix all three.

2. How it works

incoming sentence →  ✦ Embedding   →  vector search → top-k relevant chunks
                                           ↓
                          ┌─ chunks injected into LLM prompt
                          ↓
                     LLM translates with business context grounded

End-to-end the pipeline runs 200–400 ms — invisible to feel.

3. Upload documents

  1. CrossMeet → Settings → Knowledge Base
  2. Click Add Document
  3. Pick a PDF / DOCX / TXT / MD file (multi-language supported)
  4. Wait for indexing (10 seconds to 2 minutes, by size)

Once done you'll see title, chunk count, and last-indexed time.

Supported

  • PDF (including scanned + OCR)
  • DOCX / DOC
  • TXT / MD
  • HTML
  • PPTX (experimental)

Not supported

  • Encrypted PDF (decrypt first)
  • Images (unless embedded in a PDF as recognizable text)
  • Video / audio

4. Groups

Like Glossary, organize by client / project:

  • acme-corp — all Acme product manuals + earnings summaries
  • internal-wiki — team wiki excerpts
  • competitor-brief — competitive analysis reports

When you activate one or more groups, only those groups are searched.

5. Retrieval mechanism

For every new ASR sentence, CrossMeet:

  1. Takes the sentence + the previous N (default 3) as the query
  2. Vector-searches active KB groups for top-k chunks (default k=3)
  3. Stitches them into a "Reference" section in the prompt
  4. The LLM generates while consulting Glossary + RAG + history

Tunable in Settings → Knowledge Base → Retrieval:

  • top_k: chunks to retrieve (1–10, default 3)
  • chunk_size: characters per chunk (128–1024, default 512)
  • similarity_threshold: below this, don't inject (0–1)

6. Glossary vs RAG — which when?

Scenario Glossary RAG
Force single term rendering
Keep brand / person names
Long-form business context
Client product descriptions ⚠️ concepts may need RAG
Industry-jargon atmosphere

Best combo: Glossary for keywords, RAG for business context. They run in parallel without conflict.

7. Privacy

Indexing is fully local:

  • Parse, chunk, embed all happen on your machine (CPU or GPU)
  • Vector DB sits in %APPDATA%\CrossMeet\rag\
  • No document content uploaded to CrossMeet servers
  • When you call a cloud LLM (GPT / Claude), only top-k snippets (~1.5 KB) are sent — never the full document

If you're worried about cloud LLM leakage, swap to a local LLM (Ollama + Llama 3 etc.) for a fully offline pipeline.

8. Embedding engines

Settings → Knowledge Base → Embedding Engine:

Engine Speed Quality Privacy
OpenAI text-embedding-3-small Fast Excellent Chunks sent to OpenAI
Aliyun text-embedding-v2 Medium Good Chunks sent to Aliyun
Local bge-m3 Slow Excellent (best CN) Fully offline
Local multilingual-e5 Slow Excellent Fully offline

Rule of thumb: OpenAI for daily meetings (fast), local bge-m3 for sensitive docs.

9. Best practices

  • Small & focused: < 50 docs per KB group, beyond that retrieval gets noisy
  • Activate per meeting: don't keep everything on
  • Well-structured docs: clear headings and paragraphs → better chunking
  • Prune regularly: delete outdated product manuals and old contracts

10. FAQ

Q: How long to index one document?

  • 50-page PDF: ~30s (OpenAI embedding), 1.5 min (local bge-m3)
  • 200-page DOCX: ~2 min (OpenAI), 5 min (local)

Q: I updated a doc — how to refresh?

  • Find it in KB page, click Re-index
  • Or delete and re-upload

Q: Sync from cloud drives / SharePoint?

  • v0.3 planned. Today only local file upload.

Q: Retrieval is poor — what now?

  • Check chunk_size (too small loses context, too large dilutes similarity)
  • Check doc quality (OCR'd scans are noisy — re-export if possible)
  • Swap embedding engines (Chinese docs → bge-m3)

11. Related

Get started

Ready to make every conversation feel native?

NO CREDIT CARD CANCEL ANYTIME LOCAL-FIRST
~100ms
End-to-end latency
30+
Languages
4
ASR engines
WIN 10/11
Native platform