Documentation
¶
Index ¶
- Variables
- type Option
- func WithAPIKey(apiKey string) Option
- func WithBatchSize(size int) Option
- func WithCollectionName(name string) Option
- func WithContentKey(contentKey string) Option
- func WithEmbedder(embedder embeddings.Embedder) Option
- func WithHost(host string) Option
- func WithHostAndPort(host string, port int) Option
- func WithLogger(logger *slog.Logger) Option
- func WithRetryAttempts(attempts int) Option
- func WithTLS(useTLS bool) Option
- func WithTimeout(timeoutSeconds int) Option
- func WithURL(qdrantURL url.URL) Option
- type Store
- func (s *Store) AddDocuments(ctx context.Context, docs []schema.Document, options ...vectorstores.Option) ([]string, error)
- func (s *Store) CreateCollection(ctx context.Context, name string, dimension int, ...) error
- func (s *Store) DeleteCollection(ctx context.Context, name string) error
- func (s *Store) DeleteDocuments(ctx context.Context, ids []string, options ...vectorstores.Option) error
- func (s *Store) Health(ctx context.Context) error
- func (s *Store) ListCollections(ctx context.Context) ([]string, error)
- func (s *Store) SimilaritySearch(ctx context.Context, query string, numDocuments int, ...) ([]schema.Document, error)
- func (s *Store) SimilaritySearchWithScores(ctx context.Context, query string, numDocuments int, ...) ([]vectorstores.DocumentWithScore, error)
Constants ¶
This section is empty.
Variables ¶
var ( ErrMissingEmbedder = errors.New("qdrant: embedder is required but not provided") ErrMissingCollectionName = errors.New("qdrant: collection name is required") ErrCollectionNotFound = errors.New("qdrant: collection not found") ErrInvalidNumDocuments = errors.New("qdrant: number of documents must be positive") ErrConnectionFailed = errors.New("qdrant: connection failed") ErrInvalidURL = errors.New("qdrant: invalid URL provided") ErrCollectionExists = errors.New("qdrant: collection already exists") ErrEmptyQuery = errors.New("qdrant: query cannot be empty") ErrDimensionMismatch = errors.New("qdrant: vector dimension mismatch") )
Common errors returned by the Qdrant vector store implementation.
var ErrInvalidOptions = errors.New("qdrant: invalid options provided")
Functions ¶
This section is empty.
Types ¶
type Option ¶
type Option func(*options)
Option defines a function type for configuring Qdrant store options.
func WithAPIKey ¶
WithAPIKey sets the API key for Qdrant authentication.
func WithBatchSize ¶
WithBatchSize sets the batch size for bulk operations.
func WithCollectionName ¶
WithCollectionName sets the collection name for the Qdrant store.
func WithContentKey ¶
WithContentKey sets the key used to store document content in Qdrant payload.
func WithEmbedder ¶
func WithEmbedder(embedder embeddings.Embedder) Option
WithEmbedder sets the embedder for generating vector embeddings.
func WithHostAndPort ¶
WithHostAndPort sets the Qdrant server host and port.
func WithLogger ¶
WithLogger sets the logger for the Qdrant store.
func WithRetryAttempts ¶
WithRetryAttempts sets the number of retry attempts for failed operations.
func WithTimeout ¶
WithTimeout sets the connection timeout in seconds.
type Store ¶
type Store struct {
// contains filtered or unexported fields
}
Store provides a comprehensive Qdrant vector database integration with full CRUD operations, collection management, and advanced search capabilities.
func (*Store) AddDocuments ¶
func (s *Store) AddDocuments(ctx context.Context, docs []schema.Document, options ...vectorstores.Option) ([]string, error)
AddDocuments adds multiple documents to the vector store with comprehensive error handling.
func (*Store) CreateCollection ¶
func (s *Store) CreateCollection(ctx context.Context, name string, dimension int, options ...vectorstores.Option) error
CreateCollection creates a new collection with specified parameters.
func (*Store) DeleteCollection ¶
DeleteCollection removes a collection and all its data.
func (*Store) DeleteDocuments ¶
func (s *Store) DeleteDocuments(ctx context.Context, ids []string, options ...vectorstores.Option) error
DeleteDocuments removes documents from the vector store by their IDs.
func (*Store) ListCollections ¶
ListCollections returns all collection names in the Qdrant instance.
func (*Store) SimilaritySearch ¶
func (s *Store) SimilaritySearch(ctx context.Context, query string, numDocuments int, options ...vectorstores.Option) ([]schema.Document, error)
SimilaritySearch performs vector similarity search with comprehensive logging.
func (*Store) SimilaritySearchWithScores ¶
func (s *Store) SimilaritySearchWithScores(ctx context.Context, query string, numDocuments int, options ...vectorstores.Option) ([]vectorstores.DocumentWithScore, error)
SimilaritySearchWithScores performs similarity search returning documents with similarity scores.