Am I able to upload a book and have it respond truthfully to the book in a way that's superior to NotebookLM or similar? Generally most long context solutions are very poor. Or does the data have to be in a specific format?
This is a very common topic, so I wrote a blog post that explains the difference between fine-tuning and RAG if you're interested: https://finetunedb.com/blog/fine-tuning-vs-rag
For a defined specific use-case it's certainly possible to beat their performance, but things get harder when you try to create a general solution.
To answer your question, the format of the data depends entirely on the use-case and how many examples you have. The more examples you have, the more flexible you can be.