Vertex AI Vector Search - Mem0

Usage

To use Google Cloud Vertex AI Vector Search with mem0, you need to configure the vector_store in your mem0 config:

Python

import os
from mem0 import Memory

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

config = {
    "vector_store": {
        "provider": "vertex_ai_vector_search",
        "config": {
            "endpoint_id": "YOUR_ENDPOINT_ID",            # Required: Vector Search endpoint ID
            "index_id": "YOUR_INDEX_ID",                  # Required: Vector Search index ID
            "deployment_index_id": "YOUR_DEPLOYMENT_INDEX_ID",  # Required: Deployment-specific ID
            "project_id": "YOUR_PROJECT_ID",              # Required: Google Cloud project ID
            "project_number": "YOUR_PROJECT_NUMBER",      # Required: Google Cloud project number
            "region": "YOUR_REGION",                      # Required: Google Cloud region
            "credentials_path": "path/to/credentials.json", # Optional: Defaults to GOOGLE_APPLICATION_CREDENTIALS
            "vector_search_api_endpoint": "YOUR_API_ENDPOINT" # Required for get operations
        }
    }
}
m = Memory.from_config(config)
m.add("Your text here", user_id="user", metadata={"category": "example"})

TypeScript

import { Memory } from "mem0ai/oss";

// Authenticate with GOOGLE_APPLICATION_CREDENTIALS in your environment,
// or pass credentialsPath / serviceAccountJson in the config below.
const config = {
  vectorStore: {
    provider: "vertex_ai_vector_search",
    config: {
      endpointId: "YOUR_ENDPOINT_ID", // Required: Vector Search endpoint ID
      indexId: "YOUR_INDEX_ID", // Required: Vector Search index ID
      deploymentIndexId: "YOUR_DEPLOYMENT_INDEX_ID", // Required: Deployment-specific ID
      projectId: "YOUR_PROJECT_ID", // Required: Google Cloud project ID
      projectNumber: "YOUR_PROJECT_NUMBER", // Required: Google Cloud project number
      region: "YOUR_REGION", // Required: Google Cloud region
      credentialsPath: "path/to/credentials.json", // Optional: defaults to GOOGLE_APPLICATION_CREDENTIALS
      vectorSearchApiEndpoint: "YOUR_API_ENDPOINT", // Required for search/get operations
    },
  },
};

const memory = new Memory(config);
await memory.add("Your text here", {
  userId: "user",
  metadata: { category: "example" },
});

Required Parameters

Python

Parameter Description Required
endpoint_id Vector Search endpoint ID Yes
index_id Vector Search index ID Yes
deployment_index_id Deployment-specific index ID Yes
project_id Google Cloud project ID Yes
project_number Google Cloud project number Yes
vector_search_api_endpoint Vector search API endpoint Yes (for get operations)
region Google Cloud region Yes
credentials_path Path to service account credentials No (defaults to GOOGLE_APPLICATION_CREDENTIALS)
service_account_json Service account credentials as a dictionary (alternative to credentials_path) None

TypeScript

Parameter Description Required
endpointId Vector Search endpoint ID Yes
indexId Vector Search index ID Yes
deploymentIndexId Deployment-specific index ID Yes
projectId Google Cloud project ID Yes
projectNumber Google Cloud project number Yes
vectorSearchApiEndpoint Vector search API endpoint Yes (for get operations)
region Google Cloud region Yes
credentialsPath Path to service account credentials No (defaults to GOOGLE_APPLICATION_CREDENTIALS)
serviceAccountJson Service account credentials as an object (alternative to credentialsPath) No