Query rewriting
A student's phrasing rarely matches the lecture's. The tool expands the question into the vocabulary your documents actually use.
A fresh state graph is compiled per request. The agent calls the search tool, judges the result, and either answers or goes round again.
Query rewriting, fusion and budgeting live in the search tool rather than the agent. The agent's only decision is whether what came back is good enough.
A student's phrasing rarely matches the lecture's. The tool expands the question into the vocabulary your documents actually use.
Several searches run and their rankings are fused into one list, so a passage that surfaces under multiple phrasings rises to the top.
Only as much context as the chosen model can genuinely use is passed forward. The rest is dropped rather than truncated mid-sentence.
| State | What is true here | Enforced by | Queue |
|---|---|---|---|
| uploaded | Bytes stored, nothing parsed yet | API + row constraint | — |
| extracting | Text pulled out of the container format | Worker lease | 1 |
| chunking | Split on structure, not a fixed window | Worker lease | 2 |
| embedding | Vectors written to the tenant's index | Worker lease | 3 |
| mapping | Topics inferred and linked to chunks | Worker lease | 4 |
| ready | Searchable — and only now visible to students | DB check constraint | — |
| failed | Terminal, with the reason kept for you | DB check constraint | — |
A document cannot be answered from until it reaches ready. That is a database constraint, not a convention.
Powered by Claude. The grounding contract does not move with the model.
The default. Best balance of reasoning depth and cost for long technical material.
For courses where the questions are genuinely hard and the answer has to hold up.
Fastest and cheapest. Well suited to high-volume introductory cohorts.
Students ask the assistant things they would not put their hand up for. Those questions roll up into topic analytics every night.
| Question | Asked |
|---|---|
| How do I read an EXPLAIN plan? | 11 |
| When does the planner pick a seq scan? | 7 |
| What is a bitmap heap scan? | 5 |
| Is work_mem per query or per node? | 4 |
Nothing in your uploads covers these. Twenty-seven students went away empty-handed.
Upload your material, pick a model, share the link. Most courses are answering questions the same afternoon.