Yea similarity_top_k will help here! You can also try response_mode="compact" to try and reduce calls to the LLM too (by default, it will make one call per top_k)
You could also try playing with the chunk_size_limit during index construction
One last option could be using an NLTK or Spacy text splitter to split at the sentence level
You can use any text splitter from langchain. There's a list of splitters here:
https://langchain.readthedocs.io/en/latest/reference/modules/text_splitter.htmlThen when you construct your index, you can pass it in with
text_splitter=MyTextSplitter()
or something like that