Class: DSPy::Memory::MemoryStore

Inherits:
Object
  • Object
show all
Extended by:
T::Helpers, T::Sig
Defined in:
lib/dspy/memory/memory_store.rb

Overview

Abstract base class for memory storage backends

Direct Known Subclasses

InMemoryStore

Instance Method Summary collapse

Instance Method Details

#clear(user_id: nil) ⇒ Object



51
# File 'lib/dspy/memory/memory_store.rb', line 51

def clear(user_id: nil); end

#count(user_id: nil) ⇒ Object



47
# File 'lib/dspy/memory/memory_store.rb', line 47

def count(user_id: nil); end

#delete(id) ⇒ Object



27
# File 'lib/dspy/memory/memory_store.rb', line 27

def delete(id); end

#delete_batch(ids) ⇒ Object



85
86
87
# File 'lib/dspy/memory/memory_store.rb', line 85

def delete_batch(ids)
  ids.map { |id| delete(id) }
end

#list(user_id: nil, limit: nil, offset: nil) ⇒ Object



31
# File 'lib/dspy/memory/memory_store.rb', line 31

def list(user_id: nil, limit: nil, offset: nil); end

#retrieve(id) ⇒ Object



19
# File 'lib/dspy/memory/memory_store.rb', line 19

def retrieve(id); end

#retrieve_batch(ids) ⇒ Object



75
76
77
# File 'lib/dspy/memory/memory_store.rb', line 75

def retrieve_batch(ids)
  ids.map { |id| retrieve(id) }
end

#search(query, user_id: nil, limit: nil) ⇒ Object



35
# File 'lib/dspy/memory/memory_store.rb', line 35

def search(query, user_id: nil, limit: nil); end

#search_by_tags(tags, user_id: nil, limit: nil) ⇒ Object



39
# File 'lib/dspy/memory/memory_store.rb', line 39

def search_by_tags(tags, user_id: nil, limit: nil); end

#statsObject



61
62
63
64
65
66
# File 'lib/dspy/memory/memory_store.rb', line 61

def stats
  {
    total_memories: count,
    supports_vector_search: supports_vector_search?
  }
end

#store(record) ⇒ Object



15
# File 'lib/dspy/memory/memory_store.rb', line 15

def store(record); end

#store_batch(records) ⇒ Object



70
71
72
# File 'lib/dspy/memory/memory_store.rb', line 70

def store_batch(records)
  records.map { |record| store(record) }
end

#supports_vector_search?Boolean

Returns:

  • (Boolean)


55
56
57
# File 'lib/dspy/memory/memory_store.rb', line 55

def supports_vector_search?
  false
end

#update(record) ⇒ Object



23
# File 'lib/dspy/memory/memory_store.rb', line 23

def update(record); end

#update_batch(records) ⇒ Object



80
81
82
# File 'lib/dspy/memory/memory_store.rb', line 80

def update_batch(records)
  records.map { |record| update(record) }
end

#vector_search(embedding, user_id: nil, limit: nil, threshold: nil) ⇒ Object



43
# File 'lib/dspy/memory/memory_store.rb', line 43

def vector_search(embedding, user_id: nil, limit: nil, threshold: nil); end