mem0ai/mem0

feat(ts-sdk): add Elasticsearch vector store

Open

#5775 aperta il 23 giu 2026

Vedi su GitHub
 (3 commenti) (0 reazioni) (0 assegnatari)Python (6343 fork)batch import
enhancementgood first issuehelp wantedsdk-typescriptsize:Mvector-store

Metriche repository

Star
 (55.741 star)
Metriche merge PR
 (Merge medio 6g 11h) (208 PR mergiate in 30 g)

Descrizione

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).

Guida contributor