write about indexes and generic retriever interfaces