Chunking is where most RAG systems are quietly lost. Retrieval cannot return what chunking destroyed.
Implement chunk_text(text, max_tokens, overlap_tokens):
text into sentences on ., ! or ? followed by whitespacemax_tokens tokens (a token is a whitespace-separated word)overlap_tokens tokens, carrying the trailing sentences of the previous chunk into the nextmax_tokens becomes its own chunk, oversizedReturn a list of chunk strings.
Overlap exists because the sentence that answers a question is often the one after the sentence that matches it. Without overlap, a boundary falling between them makes the answer unretrievable.
Build the architecture on a canvas: place the components, configure them, connect them into a data flow, and write a short reason for each one. The AI reviewer grades your design against a rubric written specifically for this problem.
Minimum 5 components · needs a wide desktop screen