Work / AI Agents / Sourcebook
Sourcebook Answers with sources, or says it does not know.
A knowledge assistant for one team. It answers only from your documents, shows the exact source for every answer, and says so when the documents do not contain the answer. This page shows what it does and how it is built. Every real engagement is fitted to your documents, systems and rules.
| Question | Result | Why |
|---|---|---|
| Topic in the documents | Answered | Quote, page and section shown |
| Topic not in the documents | Not found | Says so, shows the closest passages |
| Unknown product code | Not found | Will not guess |
| Request to guess | Declined | Answers only from the documents |
How one question travels through it.
Documents are indexed once. Each question is searched, answered from the passages found, and checked in code before anyone sees it.
- IngestA manifest lists each document with its checksum and the pages to index. A changed file fails the check instead of being quietly re-indexed.
- Extract and labelText is read page by page. Printed page numbers are verified against the page itself.
- Split into passagesPassages stay within a page and keep their section heading.
- SearchKeyword and semantic search together, so exact codes and loose wording both match.
- AnswerThe model sees only the retrieved passages and must cite them.
- Verify in codeEach cited source must have been retrieved, each quote must appear in it, each number must appear in the cited text.
- Show or refuseA verified answer with sources, or "not found in these documents" with the closest passages marked as not an answer.
What can happen to a question, and where it can go next.
Weak evidence and failed verification both end in a clear "not found". Technical failures are shown as errors, so a refusal always means the documents did not say.
A small set of parts, and a verifier at the end.
The model never talks to the user directly. Whatever it writes passes through the verifier first, and the model can be local or hosted without changing anything else.
The parts that do the work.
Citations you can check
Document, printed page, section, the quoted words, the full passage and a link to the original page.
A clear "not found"
Absent topics, unknown product codes and requests to guess get a refusal, not an invented answer.
Honest errors
A model outage or unreadable output is shown as an error. It is never presented as a refusal.
Spend and abuse controls
A cap on question length, a per-minute rate limit and a hard daily request cap.
Written down first, then enforced in code.
- Answers come only from the indexed documents. Nothing is added from the model’s general knowledge.
- An answer is shown only if it passes the checks. Citation retrieved, quote present, numbers present.
- It starts with one team, not the company. A narrow collection is easier to get right and to check.
Plain parts, chosen to be swapped.
Python (FastAPI) · hybrid keyword and vector search · local model through Ollama, or a hosted model · accessible web interface
Where your data lives, and which model ever sees it, is your decision. We design to it.
It runs with a model on your own machine, so documents and questions never leave it. If you prefer a hosted model, the same code calls one in the region you choose, with the key held in your environment.
- In your own cloud account, in the region you name.
- On your own servers, with nothing in our hands.
- With a language model that runs on your hardware, so no data goes to an AI provider.
- With a hosted model in a region you approve, under the terms you choose.
Australia
The Privacy Act 1988 and the Australian Privacy Principles. Principle 8 covers sending personal information overseas: the sender stays accountable for how it is handled there. Some sectors and government work require data to stay onshore.
New Zealand
The Privacy Act 2020. Information privacy principle 12 limits disclosing personal information to a body outside New Zealand unless it is protected to a comparable standard or the person has agreed.
European Union
The GDPR. Moving personal data outside the EEA needs a legal basis for the transfer. Hosting and model endpoints inside the EU avoid the question.
United States
No single federal privacy law. State laws such as California’s CCPA, and sector rules such as HIPAA for health and GLBA for finance, decide what applies. Contracts often require US-only processing.
This is a summary to explain how we work, not legal advice. Your own counsel confirms what applies to you, and we build to what they decide. More on the privacy page.