ragit 0.6__tar.gz → 0.7__tar.gz

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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: ragit
3
- Version: 0.6
3
+ Version: 0.7
4
4
  Home-page: https://github.com/stsfaroz/ragit
5
5
  Author: Salman Faroz
6
6
  License: MIT
@@ -72,13 +72,15 @@ db_manager.create_database(
72
72
  ```
73
73
  ### Reloading Your Database
74
74
 
75
- Once your database is created and your data is added, simply load it for later use by specifying the same folder:
75
+ To reuse your existing vector database, initialize VectorDBManager with the same parameters that were used when creating the database.
76
76
 
77
77
  ```python
78
78
  from ragit import VectorDBManager
79
79
 
80
80
  db_manager = VectorDBManager(
81
81
  persist_directory="./my_vector_db",
82
+ provider="sentence_transformer",
83
+ model_name="all-mpnet-base-v2"
82
84
  )
83
85
  ```
84
86
 
@@ -131,17 +133,7 @@ for item in results:
131
133
  print(f"Distance ({item['metric']}): {item['raw_distance']}")
132
134
  ```
133
135
 
134
- ### 7. Deleting an Entry
135
- Remove an entry from the collection by its ID:
136
-
137
- ```python
138
- db_manager.delete_entry_by_id(
139
- id_="1",
140
- collection_name="my_collection"
141
- )
142
- ```
143
-
144
- ### 8. Fetching Texts by IDs
136
+ ### 7. Fetching Texts by IDs
145
137
  Retrieve text entries for a list of IDs:
146
138
 
147
139
  ```python
@@ -150,18 +142,18 @@ texts = db_manager.get_by_ids(ids_to_fetch, "my_collection")
150
142
  print("Texts:", texts)
151
143
  ```
152
144
 
153
- ### 9. Fetching IDs by Texts
154
- For an exact text match, get the corresponding IDs:
145
+ ### 8. Deleting a Row / Collection
146
+
147
+ Remove an entry from the collection by its ID:
155
148
 
156
149
  ```python
157
- texts_to_fetch = [
158
- "Plato was an ancient Greek philosopher of the Classical period who is considered a foundational thinker in Western philosophy"
159
- ]
160
- ids = db_manager.get_by_texts(texts_to_fetch, "my_collection")
161
- print("IDs:", ids)
150
+ db_manager.delete_entry_by_id(
151
+ id_="1",
152
+ collection_name="my_collection"
153
+ )
162
154
  ```
163
155
 
164
- ### 10. Deleting a Collection
156
+
165
157
  Delete an entire collection. **Note:** You must pass `confirmation="yes"` to proceed with deletion.
166
158
 
167
159
  ```python
@@ -52,13 +52,15 @@ db_manager.create_database(
52
52
  ```
53
53
  ### Reloading Your Database
54
54
 
55
- Once your database is created and your data is added, simply load it for later use by specifying the same folder:
55
+ To reuse your existing vector database, initialize VectorDBManager with the same parameters that were used when creating the database.
56
56
 
57
57
  ```python
58
58
  from ragit import VectorDBManager
59
59
 
60
60
  db_manager = VectorDBManager(
61
61
  persist_directory="./my_vector_db",
62
+ provider="sentence_transformer",
63
+ model_name="all-mpnet-base-v2"
62
64
  )
63
65
  ```
64
66
 
@@ -111,17 +113,7 @@ for item in results:
111
113
  print(f"Distance ({item['metric']}): {item['raw_distance']}")
112
114
  ```
113
115
 
114
- ### 7. Deleting an Entry
115
- Remove an entry from the collection by its ID:
116
-
117
- ```python
118
- db_manager.delete_entry_by_id(
119
- id_="1",
120
- collection_name="my_collection"
121
- )
122
- ```
123
-
124
- ### 8. Fetching Texts by IDs
116
+ ### 7. Fetching Texts by IDs
125
117
  Retrieve text entries for a list of IDs:
126
118
 
127
119
  ```python
@@ -130,18 +122,18 @@ texts = db_manager.get_by_ids(ids_to_fetch, "my_collection")
130
122
  print("Texts:", texts)
131
123
  ```
132
124
 
133
- ### 9. Fetching IDs by Texts
134
- For an exact text match, get the corresponding IDs:
125
+ ### 8. Deleting a Row / Collection
126
+
127
+ Remove an entry from the collection by its ID:
135
128
 
136
129
  ```python
137
- texts_to_fetch = [
138
- "Plato was an ancient Greek philosopher of the Classical period who is considered a foundational thinker in Western philosophy"
139
- ]
140
- ids = db_manager.get_by_texts(texts_to_fetch, "my_collection")
141
- print("IDs:", ids)
130
+ db_manager.delete_entry_by_id(
131
+ id_="1",
132
+ collection_name="my_collection"
133
+ )
142
134
  ```
143
135
 
144
- ### 10. Deleting a Collection
136
+
145
137
  Delete an entire collection. **Note:** You must pass `confirmation="yes"` to proceed with deletion.
146
138
 
147
139
  ```python
@@ -5,7 +5,6 @@ from sentence_transformers import SentenceTransformer
5
5
  from typing import List, Dict, Optional, Union
6
6
  import os
7
7
 
8
-
9
8
  class VectorDBManager:
10
9
  def __init__(
11
10
  self,
@@ -353,32 +352,3 @@ class VectorDBManager:
353
352
  except Exception as e:
354
353
  self.logger.error(f"Error getting texts by IDs: {str(e)}")
355
354
  return {}
356
-
357
- def get_by_texts(self, texts: List[str], collection_name: str) -> Dict[str, str]:
358
- """
359
- Get IDs for given texts in batch.
360
- Note: For exact text matching. For similar texts, use find_nearby_texts.
361
-
362
- Args:
363
- texts (List[str]): List of texts to fetch
364
- collection_name (str): Name of the collection
365
-
366
- Returns:
367
- Dict[str, str]: Dictionary mapping texts to their corresponding IDs
368
- """
369
- try:
370
- collection = self.client.get_collection(collection_name)
371
-
372
- all_data = collection.get()
373
-
374
- text_to_id = {
375
- text: id_
376
- for text, id_ in zip(all_data["documents"], all_data["ids"])
377
- if text in texts
378
- }
379
-
380
- return text_to_id
381
-
382
- except Exception as e:
383
- self.logger.error(f"Error getting IDs by texts: {str(e)}")
384
- return {}
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: ragit
3
- Version: 0.6
3
+ Version: 0.7
4
4
  Home-page: https://github.com/stsfaroz/ragit
5
5
  Author: Salman Faroz
6
6
  License: MIT
@@ -72,13 +72,15 @@ db_manager.create_database(
72
72
  ```
73
73
  ### Reloading Your Database
74
74
 
75
- Once your database is created and your data is added, simply load it for later use by specifying the same folder:
75
+ To reuse your existing vector database, initialize VectorDBManager with the same parameters that were used when creating the database.
76
76
 
77
77
  ```python
78
78
  from ragit import VectorDBManager
79
79
 
80
80
  db_manager = VectorDBManager(
81
81
  persist_directory="./my_vector_db",
82
+ provider="sentence_transformer",
83
+ model_name="all-mpnet-base-v2"
82
84
  )
83
85
  ```
84
86
 
@@ -131,17 +133,7 @@ for item in results:
131
133
  print(f"Distance ({item['metric']}): {item['raw_distance']}")
132
134
  ```
133
135
 
134
- ### 7. Deleting an Entry
135
- Remove an entry from the collection by its ID:
136
-
137
- ```python
138
- db_manager.delete_entry_by_id(
139
- id_="1",
140
- collection_name="my_collection"
141
- )
142
- ```
143
-
144
- ### 8. Fetching Texts by IDs
136
+ ### 7. Fetching Texts by IDs
145
137
  Retrieve text entries for a list of IDs:
146
138
 
147
139
  ```python
@@ -150,18 +142,18 @@ texts = db_manager.get_by_ids(ids_to_fetch, "my_collection")
150
142
  print("Texts:", texts)
151
143
  ```
152
144
 
153
- ### 9. Fetching IDs by Texts
154
- For an exact text match, get the corresponding IDs:
145
+ ### 8. Deleting a Row / Collection
146
+
147
+ Remove an entry from the collection by its ID:
155
148
 
156
149
  ```python
157
- texts_to_fetch = [
158
- "Plato was an ancient Greek philosopher of the Classical period who is considered a foundational thinker in Western philosophy"
159
- ]
160
- ids = db_manager.get_by_texts(texts_to_fetch, "my_collection")
161
- print("IDs:", ids)
150
+ db_manager.delete_entry_by_id(
151
+ id_="1",
152
+ collection_name="my_collection"
153
+ )
162
154
  ```
163
155
 
164
- ### 10. Deleting a Collection
156
+
165
157
  Delete an entire collection. **Note:** You must pass `confirmation="yes"` to proceed with deletion.
166
158
 
167
159
  ```python
@@ -5,7 +5,7 @@ with open("README.md", "r") as f:
5
5
 
6
6
  setup(
7
7
  name="ragit",
8
- version="0.6",
8
+ version="0.7",
9
9
  packages=find_packages(),
10
10
  install_requires = ['sentence-transformers>=3.4.1',
11
11
  'pandas>=2.2.3', 'chromadb>=0.6.3',
File without changes
File without changes
File without changes
File without changes
File without changes