llm_memory 0.1.12 → 0.1.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7d5876cf6c293ca2371eab3021704be2710c8b3d558e501543bde4acf6898595
4
- data.tar.gz: 232d45abb20fb82b09b0f8ba6b22c12168d498cd8e23110d56446ae5265991aa
3
+ metadata.gz: 783f2bf830c8e3bf6ac8f033c200bcdc068ac51e23c444a15a28ce4c3fdb3faf
4
+ data.tar.gz: 0705cd834c8877f368bb8827e7916f72ec81d1e70839b2455fd27f030b1d9346
5
5
  SHA512:
6
- metadata.gz: 128b6f275d904d2fafb8c7e0c1a26d33462edc015a33b1a3da6b4f1dc6f73ba51ae15f76f25d00221baa167956af06f1d5cd081fe8ab54e54b44c783c7380a98
7
- data.tar.gz: 693ec575ca7b4add6b64afb6f3608a3ca6c989274c4f896aaf7520df5e82a0c051d062dd24bd6975a12c585bfaed91b6c4c1a96195e5f1831b05ee3c3679659a
6
+ metadata.gz: 6adf9915342427085ec647c1475f4169159d8670731b76100820bd13780d43ab7e74e31e36f8eed48453ea7f3a63dd1d4da11e784ab6124a16dfe0a853c17199
7
+ data.tar.gz: fecd053b1881b4d52a6f587469b7ffb50501d1e75b100eedc27a33039805dfdccb33b2904cb0482754bcbce9c5d034369364db28b7749bcd511eac51176c01a2
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- llm_memory (0.1.12)
4
+ llm_memory (0.1.13)
5
5
  redis (~> 4.6.0)
6
6
  ruby-openai (~> 3.7.0)
7
7
  tokenizers (~> 0.3.3)
@@ -57,6 +57,14 @@ module LlmMemory
57
57
  @store.drop_index if @store.index_exists?
58
58
  end
59
59
 
60
+ def forget(key)
61
+ @store.delete(key)
62
+ end
63
+
64
+ def list(array = [])
65
+ @store.list(array)
66
+ end
67
+
60
68
  def add_vectors(docs)
61
69
  # embed documents and add vector
62
70
  result = []
@@ -27,6 +27,14 @@ module LlmMemory
27
27
  raise NotImplementedError, "Each store must implement the 'add' method."
28
28
  end
29
29
 
30
+ def list
31
+ raise NotImplementedError, "Each store must implement the 'list' method."
32
+ end
33
+
34
+ def delete
35
+ raise NotImplementedError, "Each store must implement the 'delete' method."
36
+ end
37
+
30
38
  def search
31
39
  raise NotImplementedError, "Each store must implement the 'search' method."
32
40
  end
@@ -123,7 +123,33 @@ module LlmMemory
123
123
  puts "Unexpected Error: #{e.message}"
124
124
  end
125
125
 
126
- def delete
126
+ def delete(key)
127
+ @client.del(key) if @client.exists?(key)
128
+ end
129
+
130
+ def delete_all
131
+ list.keys.each do |key|
132
+ delete(key)
133
+ end
134
+ end
135
+
136
+ def list(patterns = [])
137
+ patterns = if patterns.empty?
138
+ ["#{@index_name}:*"]
139
+ else
140
+ patterns.map { |pattern| "#{@index_name}:#{pattern}" }
141
+ end
142
+ data = {}
143
+ patterns.each do |pattern|
144
+ @client.keys(pattern).each do |key|
145
+ obj = @client.hgetall(key)
146
+ data[key] = {
147
+ content: obj.dig("content"),
148
+ metadata: JSON.parse(obj.dig("metadata"))
149
+ }
150
+ end
151
+ end
152
+ data
127
153
  end
128
154
 
129
155
  def update
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module LlmMemory
4
- VERSION = "0.1.12"
4
+ VERSION = "0.1.13"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: llm_memory
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.12
4
+ version: 0.1.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shohei Kameda
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-07-27 00:00:00.000000000 Z
11
+ date: 2023-07-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: tokenizers