qdrant

package
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 17, 2025 License: MIT Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
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.

View Source
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

func WithAPIKey(apiKey string) Option

WithAPIKey sets the API key for Qdrant authentication.

func WithBatchSize

func WithBatchSize(size int) Option

WithBatchSize sets the batch size for bulk operations.

func WithCollectionName

func WithCollectionName(name string) Option

WithCollectionName sets the collection name for the Qdrant store.

func WithContentKey

func WithContentKey(contentKey string) Option

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 WithHost

func WithHost(host string) Option

WithHost sets the Qdrant server host and constructs the URL.

func WithHostAndPort

func WithHostAndPort(host string, port int) Option

WithHostAndPort sets the Qdrant server host and port.

func WithLogger

func WithLogger(logger *slog.Logger) Option

WithLogger sets the logger for the Qdrant store.

func WithRetryAttempts

func WithRetryAttempts(attempts int) Option

WithRetryAttempts sets the number of retry attempts for failed operations.

func WithTLS

func WithTLS(useTLS bool) Option

WithTLS enables or disables TLS for the Qdrant connection.

func WithTimeout

func WithTimeout(timeoutSeconds int) Option

WithTimeout sets the connection timeout in seconds.

func WithURL

func WithURL(qdrantURL url.URL) Option

WithURL sets the Qdrant server URL.

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 New

func New(opts ...Option) (*Store, error)

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

func (s *Store) DeleteCollection(ctx context.Context, name string) error

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) Health

func (s *Store) Health(ctx context.Context) error

Health checks the health of the Qdrant connection.

func (*Store) ListCollections

func (s *Store) ListCollections(ctx context.Context) ([]string, error)

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.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL