Qdrant - Mem0

Qdrant

Qdrant is an open-source vector search engine. It is designed to work with large-scale datasets and provides a high-performance search engine for vector data.

Usage

Python

import os
from mem0 import Memory

os.environ["OPENAI_API_KEY"] = "sk-xx"

config = {
    "vector_store": {
        "provider": "qdrant",
        "config": {
            "collection_name": "test",
            "host": "localhost",
            "port": 6333,
        }
    }
}

m = Memory.from_config(config)
messages = [
    {"role": "user", "content": "I'm planning to watch a movie tonight. Any recommendations?"},
    {"role": "assistant", "content": "How about thriller movies? They can be quite engaging."},
    {"role": "user", "content": "I’m not a big fan of thriller movies but I love sci-fi movies."},
    {"role": "assistant", "content": "Got it! I'll avoid thriller recommendations and suggest sci-fi movies in the future."}
]
m.add(messages, user_id="alice", metadata={"category": "movies"})

TypeScript

import { Memory } from 'mem0ai/oss';

const config = {
  vectorStore: {
    provider: 'qdrant',
    config: {
      collectionName: 'memories',
      dimension: 1536,
      host: 'localhost',
      port: 6333,
    },
  },
};

const memory = new Memory(config);
const messages = [
    {"role": "user", "content": "I'm planning to watch a movie tonight. Any recommendations?"},
    {"role": "assistant", "content": "How about thriller movies? They can be quite engaging."},
    {"role": "user", "content": "I’m not a big fan of thriller movies but I love sci-fi movies."},
    {"role": "assistant", "content": "Got it! I'll avoid thriller recommendations and suggest sci-fi movies in the future."}
]
await memory.add(messages, { userId: "alice", metadata: { category: "movies" } });

Config

Let’s see the available parameters for the qdrant config:

Parameter Description Default Value
collection_name The name of the collection to store the vectors mem0
embedding_model_dims Dimensions of the embedding model 1536
client Custom client for qdrant None
host The host where the qdrant server is running None
port The port where the qdrant server is running None
path Path for the qdrant database /tmp/qdrant
url Full URL for the qdrant server None
api_key API key for the qdrant server None
https Whether to force HTTPS on or off. None lets the client decide; set False for plain HTTP Qdrant with API key authentication. None
on_disk For enabling persistent storage False
Parameter Description Default Value
collectionName The name of the collection to store the vectors mem0
dimension Dimensions of the embedding model 1536
host The host where the Qdrant server is running None
port The port where the Qdrant server is running None
path Path for the Qdrant database /tmp/qdrant
url Full URL for the Qdrant server None
apiKey API key for the Qdrant server None
onDisk For enabling persistent storage False