package example.advanced;
import org.apache.lucene.document.Document; // For creating and manipulating Lucene documents
import org.apache.lucene.document.Field; // Base class for all fields in a Lucene document
import org.apache.lucene.document.TextField; // For indexing and storing textual content
import org.apache.lucene.document.KnnFloatVectorField; // For storing and indexing float vectors for `KNN` searches
import org.apache.lucene.index.DirectoryReader; // For reading an index
import org.apache.lucene.index.IndexWriter; // For writing documents to an index
import org.apache.lucene.index.IndexWriterConfig; // For configuring the IndexWriter
import org.apache.lucene.search.IndexSearcher; // For searching an index
import org.apache.lucene.search.KnnFloatVectorQuery; // For querying using float vectors
import org.apache.lucene.search.TopDocs; // For holding search results
import org.apache.lucene.store.Directory; // Base class for storage implementations
import org.apache.lucene.store.ByteBuffersDirectory; // In-memory implementation of Directory for testing
public class TextVectorSearchExample {