Qdrantex

Client library and SDK for the Qdrant vector search engine.

Library contains type definitions for all Qdrant API with gRPC.

Quickstart

Security

API Key

Add api key as a parameter for your Repo in any suitable place:

import Config

config :my_app, MyApp.QdrantRepo
  auth_key: "your_secret_api_key_here"

or

  # somewhere in main supervisor
      children = [
        {MyApp.QdrantRepo, [api_key: "your_secret_api_key_here"]}
        # ...
      ]

mTLS Configuration

Add ssl config to repo opts

import Config

config :my_app, MyApp.QdrantRepo
  ssl: [
    cacertfile: Path.expand("./ca.crt", :code.priv_dir(:myapp)), 
    certfile: Path.expand("./client.crt", :code.priv_dir(:myapp)), 
    keyfile: Path.expand("./client.key", :code.priv_dir(:myapp)),
    verify: :verify_peer,
    server_name_indication: 'myapp'
]

Versions match

MAJOR.MINOR version for this library matches MAJOR.MINOR version of QDrant's protbuf

Installation

The package can be installed by adding qdrantex to your list of dependencies in mix.exs:

def deps do
  [
    {:qdrantex, "~> 1.8.0"}
  ]
end

The docs can be found at https://hexdocs.pm/qdrantex.