Augmented generation is very difficult to implement for increased complexity. The chunking size and strategy is difficult and unique for each use case. While it may work at a surface level, in my experience with my own tailored learning using llama.cpp, langchain, and chroma db with parts of the computer science intermediate curriculum, automated chunking strategies are not effective for reliable assistance with open source models I can run on my hardware. The database needs to be human curated first from the perspective of an educator.
You might have a look at Storm.
https://www.youtube.com/watch?v=Rrls3Uvb7ic
I think that is a more practical form of augmentation that is more accessible. I haven't tried it yet, but it looks interesting.