mem0ai/mem0

feat(ts-sdk): add Elasticsearch vector store

Open

#5.775 aberto em 23 de jun. de 2026

Ver no GitHub
 (3 comments) (0 reactions) (0 assignees)Python (6.343 forks)batch import
enhancementgood first issuehelp wantedsdk-typescriptsize:Mvector-store

Métricas do repositório

Stars
 (55.741 stars)
Métricas de merge de PR
 (Mesclagem média 6d 11h) (208 fundiu PRs em 30d)

Description

Summary

The Python SDK supports Elasticsearch as a vector store provider, but the TypeScript OSS SDK (mem0ai/oss) does not. Add it to bring the TS SDK to parity.

Python reference mem0/vector_stores/elasticsearch.py
Registered in (Python) mem0/utils/factory.py (VectorStoreFactory)
Target file (TypeScript) mem0-ts/src/oss/src/vector_stores/elasticsearch.ts
Suggested implementation Use @elastic/elasticsearch (v9) with dense_vector + kNN.

Requirements

  • Implement Elasticsearch in mem0-ts/src/oss/src/vector_stores/elasticsearch.ts, extending VectorStore (mem0-ts/src/oss/src/vector_stores/base.ts) and mirroring the Python provider's behavior (insert / search / get / update / delete / list / reset).
  • Register the "elasticsearch" provider in mem0-ts/src/oss/src/utils/factory.ts (VectorStoreFactory).
  • Add config typing in mem0-ts/src/oss/src/types/.
  • Add a unit test under mem0-ts/src/oss/src/tests/.
  • Add @elastic/elasticsearch to mem0-ts/package.json (optional/peer dependency, lazy-imported like other providers).
  • Update docs under docs/ if this provider is user-facing.

Reference pattern

Mirror an existing TS provider: vector_stores/qdrant.ts.

Notes

Mirror mem0/vector_stores/elasticsearch.py.


Part of the TypeScript ↔ Python SDK provider-parity effort. One provider per issue (atomic).

Guia do colaborador