Your files are split into passages. Each document is broken into chunks so a long manual can contribute just the paragraph that matters instead of drowning the model in everything you've ever written.
The best-matching passages are selected by keyword. When a question arrives, ZChat scores your passages against the words in that question and picks the strongest few. This is keyword matching, not semantic embedding search - we'd rather tell you that than let you assume it understands synonyms it doesn't. In practice it means one thing for you: write your documentation in the words your customers actually use, and the answers get noticeably better.
Those passages go to the model with the question. The AI is told to answer from the supplied material and to say plainly when it can't - which, paired with handoff, turns a gap in your docs into a human conversation rather than a confident invention.