Skip to content

Memory Service

The memory service provides persistent memory management for AI agents. It stores and retrieves conversational context across sessions, manages memory lifecycle (TTL, event counts), and uses PostgreSQL with pgvector for vector-based semantic search over memories. The service includes a bundled embedding service that runs CPU-only ONNX inference for text embedding and reranking.

本機能の提供について

Available in DataRobot version 11.9 and later.

Enabling the service

To enable the Memory Service, edit the values.yaml file:

memoryservice:
  enabled: true 

Database configuration

The Memory Service uses PostgreSQL with the pgvector extension. It connects to the shared DataRobot PostgreSQL instance by default. If you use an external PostgreSQL instance, ensure the pgvector extension is available -- see the external PostgreSQL guides for cloud-specific setup instructions.

Embedding model provisioning

The embedding service requires pre-trained model weights. An init container downloads these weights before the embedding service starts. There are two provisioning modes:

Standard (CDN)

By default, the init container downloads a tar archive from the DataRobot GenAI CDN https://genai.cdn.app.datarobot.com/

This requires HTTPS (port 443) egress from the Kubernetes cluster, which the network policy allows by default.

No additional configuration is needed for standard deployments with internet access.

Install in offline clusters

For restricted-network environments without access to the DataRobot CDN, you must pre-provision embedding model weights in blob storage. This procedure depends on the Generative AI service static files migration—complete the instructions included there before configuring the memory service.

Required: Generative AI static files migration

The memory service reads its embedding models from the same blob storage location provisioned by the Generative AI service static files migration. —complete the instructions included there before proceeding. If you've done so, the embedding models are already available and only the configuration steps below are needed.

The following models must be present in blob storage:

モデル 目的 必須
intfloat/multilingual-e5-base-fp16 Text embedding 常時
cross-encoder/mmarco-mMiniLMv2-L12-H384-v1 Reranking 常時
memoryservice:
  isAirGapped: true 

When isAirGapped is true:

  • The init container downloads models from blob storage instead of the CDN.
  • Blob storage paths are constructed from blobStorageEmbedderModelPrefix and the model name.