vector

package
v1.2.2 Latest Latest
Warning

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

Go to latest
Published: Jan 27, 2026 License: MIT Imports: 8 Imported by: 0

Documentation

Overview

Package vector provides Qdrant vector database client.

Implements vector storage and similarity search using Qdrant with HNSW configuration (m=16, ef_construct=100) and cosine distance.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CollectionInfo

type CollectionInfo struct {
	VectorCount int64  `json:"vectors_count"`
	PointsCount int64  `json:"points_count"`
	Status      string `json:"status"`
}

CollectionInfo represents collection statistics

type Point

type Point struct {
	ID      string                 `json:"id"`
	Vector  []float64              `json:"vector"`
	Payload map[string]interface{} `json:"payload,omitempty"`
}

Point represents a vector point in Qdrant

type QdrantClient

type QdrantClient struct {
	// contains filtered or unexported fields
}

QdrantClient provides vector storage capabilities via Qdrant VERIFIED: Matches local-memory Qdrant integration

func NewQdrantClient

func NewQdrantClient(cfg *config.QdrantConfig) *QdrantClient

NewQdrantClient creates a new Qdrant client

func (*QdrantClient) CollectionName

func (c *QdrantClient) CollectionName() string

CollectionName returns the collection name

func (*QdrantClient) Delete

func (c *QdrantClient) Delete(ctx context.Context, ids []string) error

Delete removes a vector by ID

func (*QdrantClient) Dimension

func (c *QdrantClient) Dimension() int

Dimension returns the vector dimension

func (*QdrantClient) GetCollectionInfo

func (c *QdrantClient) GetCollectionInfo(ctx context.Context) (*CollectionInfo, error)

GetCollectionInfo returns collection statistics

func (*QdrantClient) GetPoint

func (c *QdrantClient) GetPoint(ctx context.Context, id string) (*Point, error)

GetPoint retrieves a point by ID

func (*QdrantClient) InitCollection

func (c *QdrantClient) InitCollection(ctx context.Context) error

InitCollection creates the collection if it doesn't exist VERIFIED: HNSW configuration (m=16, ef_construct=100)

func (*QdrantClient) IsAvailable

func (c *QdrantClient) IsAvailable() bool

IsAvailable checks if Qdrant is available

func (*QdrantClient) IsEnabled

func (c *QdrantClient) IsEnabled() bool

IsEnabled returns whether Qdrant is enabled

func (*QdrantClient) Search

func (c *QdrantClient) Search(ctx context.Context, opts *SearchOptions) ([]SearchResult, error)

Search performs vector similarity search

func (*QdrantClient) Upsert

func (c *QdrantClient) Upsert(ctx context.Context, id string, vector []float64, payload map[string]interface{}) error

Upsert inserts or updates a single vector

func (*QdrantClient) UpsertPoints

func (c *QdrantClient) UpsertPoints(ctx context.Context, points []Point) error

UpsertPoints inserts or updates vector points

type SearchOptions

type SearchOptions struct {
	Vector      []float64
	Limit       int
	MinScore    float64
	Filter      map[string]interface{}
	WithPayload bool
}

SearchOptions contains options for vector search

type SearchResult

type SearchResult struct {
	ID      string                 `json:"id"`
	Score   float64                `json:"score"`
	Payload map[string]interface{} `json:"payload,omitempty"`
}

SearchResult represents a search result from Qdrant

Jump to

Keyboard shortcuts

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