isage-middleware 0.1.1__py3-none-any.whl → 0.1.4__py3-none-any.whl

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.

Potentially problematic release.


This version of isage-middleware might be problematic. Click here for more details.

Files changed (376) hide show
  1. isage_middleware-0.1.4.dist-info/METADATA +115 -0
  2. isage_middleware-0.1.4.dist-info/RECORD +288 -0
  3. sage/__init__.py +37 -2
  4. sage/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  5. sage/__pycache__/__init__.cpython-311.pyc +0 -0
  6. sage/middleware/__init__.py +31 -77
  7. sage/middleware/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  8. sage/middleware/__pycache__/__init__.cpython-311.pyc +0 -0
  9. sage/middleware/api/__init__.py +32 -17
  10. sage/middleware/api/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  11. sage/middleware/api/__pycache__/__init__.cpython-311.pyc +0 -0
  12. sage/middleware/api/__pycache__/graph_api.cpython-311.opt-2.pyc +0 -0
  13. sage/middleware/api/__pycache__/graph_api.cpython-311.pyc +0 -0
  14. sage/middleware/api/__pycache__/kv_api.cpython-311.opt-2.pyc +0 -0
  15. sage/middleware/api/__pycache__/kv_api.cpython-311.pyc +0 -0
  16. sage/middleware/api/__pycache__/memory_api.cpython-311.opt-2.pyc +0 -0
  17. sage/middleware/api/__pycache__/memory_api.cpython-311.pyc +0 -0
  18. sage/middleware/api/__pycache__/vdb_api.cpython-311.opt-2.pyc +0 -0
  19. sage/middleware/api/__pycache__/vdb_api.cpython-311.pyc +0 -0
  20. sage/middleware/components/enterprise/__init__.py +37 -0
  21. sage/middleware/components/enterprise/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  22. sage/middleware/components/enterprise/__pycache__/__init__.cpython-311.pyc +0 -0
  23. sage/middleware/components/neuromem/__init__.py +37 -0
  24. sage/middleware/components/neuromem/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  25. sage/middleware/components/neuromem/__pycache__/__init__.cpython-311.pyc +0 -0
  26. sage/middleware/components/neuromem/__pycache__/memory_manager.cpython-311.opt-2.pyc +0 -0
  27. sage/middleware/components/neuromem/__pycache__/memory_manager.cpython-311.pyc +0 -0
  28. sage/middleware/components/neuromem/__pycache__/memory_service.cpython-311.opt-2.pyc +0 -0
  29. sage/middleware/components/neuromem/__pycache__/memory_service.cpython-311.pyc +0 -0
  30. sage/middleware/components/neuromem/memory_collection/__init__.py +37 -0
  31. sage/middleware/components/neuromem/memory_collection/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  32. sage/middleware/components/neuromem/memory_collection/__pycache__/__init__.cpython-311.pyc +0 -0
  33. sage/middleware/components/neuromem/memory_collection/__pycache__/base_collection.cpython-311.opt-2.pyc +0 -0
  34. sage/middleware/components/neuromem/memory_collection/__pycache__/base_collection.cpython-311.pyc +0 -0
  35. sage/middleware/components/neuromem/memory_collection/__pycache__/graph_collection.cpython-311.opt-2.pyc +0 -0
  36. sage/middleware/components/neuromem/memory_collection/__pycache__/graph_collection.cpython-311.pyc +0 -0
  37. sage/middleware/components/neuromem/memory_collection/__pycache__/kv_collection.cpython-311.opt-2.pyc +0 -0
  38. sage/middleware/components/neuromem/memory_collection/__pycache__/kv_collection.cpython-311.pyc +0 -0
  39. sage/middleware/components/neuromem/memory_collection/__pycache__/vdb_collection.cpython-311.opt-2.pyc +0 -0
  40. sage/middleware/components/neuromem/memory_collection/__pycache__/vdb_collection.cpython-311.pyc +0 -0
  41. sage/middleware/components/neuromem/memory_collection/base_collection.py +167 -0
  42. sage/middleware/components/neuromem/memory_collection/graph_collection.py +11 -0
  43. sage/middleware/components/neuromem/memory_collection/kv_collection.py +709 -0
  44. sage/middleware/components/neuromem/memory_collection/vdb_collection.py +922 -0
  45. sage/middleware/components/neuromem/memory_manager.py +401 -0
  46. sage/middleware/components/neuromem/memory_service.py +324 -0
  47. sage/middleware/components/neuromem/micro_service/__init__.py +37 -0
  48. sage/middleware/components/neuromem/micro_service/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  49. sage/middleware/components/neuromem/micro_service/__pycache__/__init__.cpython-311.pyc +0 -0
  50. sage/middleware/components/neuromem/micro_service/__pycache__/neuromem_vdb.cpython-311.opt-2.pyc +0 -0
  51. sage/middleware/components/neuromem/micro_service/__pycache__/neuromem_vdb.cpython-311.pyc +0 -0
  52. sage/middleware/components/neuromem/micro_service/__pycache__/neuromem_vdb_service.cpython-311.opt-2.pyc +0 -0
  53. sage/middleware/components/neuromem/micro_service/__pycache__/neuromem_vdb_service.cpython-311.pyc +0 -0
  54. sage/middleware/components/neuromem/micro_service/neuromem_vdb.py +198 -0
  55. sage/middleware/components/neuromem/micro_service/neuromem_vdb_service.py +118 -0
  56. sage/middleware/components/neuromem/search_engine/__init__.py +37 -0
  57. sage/middleware/components/neuromem/search_engine/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  58. sage/middleware/components/neuromem/search_engine/__pycache__/__init__.cpython-311.pyc +0 -0
  59. sage/middleware/components/neuromem/search_engine/graph_index/__init__.py +37 -0
  60. sage/middleware/components/neuromem/search_engine/graph_index/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  61. sage/middleware/components/neuromem/search_engine/graph_index/__pycache__/__init__.cpython-311.pyc +0 -0
  62. sage/middleware/components/neuromem/search_engine/graph_index/__pycache__/base_graph_index.cpython-311.opt-2.pyc +0 -0
  63. sage/middleware/components/neuromem/search_engine/graph_index/__pycache__/base_graph_index.cpython-311.pyc +0 -0
  64. sage/middleware/components/neuromem/search_engine/graph_index/base_graph_index.py +40 -0
  65. sage/middleware/components/neuromem/search_engine/hybird_index/__init__.py +37 -0
  66. sage/middleware/components/neuromem/search_engine/hybird_index/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  67. sage/middleware/components/neuromem/search_engine/hybird_index/__pycache__/__init__.cpython-311.pyc +0 -0
  68. sage/middleware/components/neuromem/search_engine/kv_index/__init__.py +37 -0
  69. sage/middleware/components/neuromem/search_engine/kv_index/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  70. sage/middleware/components/neuromem/search_engine/kv_index/__pycache__/__init__.cpython-311.pyc +0 -0
  71. sage/middleware/components/neuromem/search_engine/kv_index/__pycache__/base_kv_index.cpython-311.opt-2.pyc +0 -0
  72. sage/middleware/components/neuromem/search_engine/kv_index/__pycache__/base_kv_index.cpython-311.pyc +0 -0
  73. sage/middleware/components/neuromem/search_engine/kv_index/__pycache__/bm25s_index.cpython-311.opt-2.pyc +0 -0
  74. sage/middleware/components/neuromem/search_engine/kv_index/__pycache__/bm25s_index.cpython-311.pyc +0 -0
  75. sage/middleware/components/neuromem/search_engine/kv_index/base_kv_index.py +76 -0
  76. sage/middleware/components/neuromem/search_engine/kv_index/bm25s_index.py +320 -0
  77. sage/middleware/components/neuromem/search_engine/vdb_index/__init__.py +37 -0
  78. sage/middleware/components/neuromem/search_engine/vdb_index/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  79. sage/middleware/components/neuromem/search_engine/vdb_index/__pycache__/__init__.cpython-311.pyc +0 -0
  80. sage/middleware/components/neuromem/search_engine/vdb_index/__pycache__/base_vdb_index.cpython-311.opt-2.pyc +0 -0
  81. sage/middleware/components/neuromem/search_engine/vdb_index/__pycache__/base_vdb_index.cpython-311.pyc +0 -0
  82. sage/middleware/components/neuromem/search_engine/vdb_index/__pycache__/faiss_index.cpython-311.opt-2.pyc +0 -0
  83. sage/middleware/components/neuromem/search_engine/vdb_index/__pycache__/faiss_index.cpython-311.pyc +0 -0
  84. sage/middleware/components/neuromem/search_engine/vdb_index/base_vdb_index.py +53 -0
  85. sage/middleware/components/neuromem/search_engine/vdb_index/faiss_index.py +700 -0
  86. sage/middleware/components/neuromem/storage_engine/__init__.py +37 -0
  87. sage/middleware/components/neuromem/storage_engine/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  88. sage/middleware/components/neuromem/storage_engine/__pycache__/__init__.cpython-311.pyc +0 -0
  89. sage/middleware/components/neuromem/storage_engine/__pycache__/metadata_storage.cpython-311.opt-2.pyc +0 -0
  90. sage/middleware/components/neuromem/storage_engine/__pycache__/metadata_storage.cpython-311.pyc +0 -0
  91. sage/middleware/components/neuromem/storage_engine/__pycache__/text_storage.cpython-311.opt-2.pyc +0 -0
  92. sage/middleware/components/neuromem/storage_engine/__pycache__/text_storage.cpython-311.pyc +0 -0
  93. sage/middleware/components/neuromem/storage_engine/__pycache__/vector_storage.cpython-311.opt-2.pyc +0 -0
  94. sage/middleware/components/neuromem/storage_engine/__pycache__/vector_storage.cpython-311.pyc +0 -0
  95. sage/middleware/components/neuromem/storage_engine/kv_backend/__init__.py +37 -0
  96. sage/middleware/components/neuromem/storage_engine/kv_backend/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  97. sage/middleware/components/neuromem/storage_engine/kv_backend/__pycache__/__init__.cpython-311.pyc +0 -0
  98. sage/middleware/components/neuromem/storage_engine/kv_backend/__pycache__/base_kv_backend.cpython-311.opt-2.pyc +0 -0
  99. sage/middleware/components/neuromem/storage_engine/kv_backend/__pycache__/base_kv_backend.cpython-311.pyc +0 -0
  100. sage/middleware/components/neuromem/storage_engine/kv_backend/__pycache__/dict_kv_backend.cpython-311.opt-2.pyc +0 -0
  101. sage/middleware/components/neuromem/storage_engine/kv_backend/__pycache__/dict_kv_backend.cpython-311.pyc +0 -0
  102. sage/middleware/components/neuromem/storage_engine/kv_backend/base_kv_backend.py +65 -0
  103. sage/middleware/components/neuromem/storage_engine/kv_backend/dict_kv_backend.py +54 -0
  104. sage/middleware/components/neuromem/storage_engine/metadata_storage.py +260 -0
  105. sage/middleware/components/neuromem/storage_engine/text_storage.py +106 -0
  106. sage/middleware/components/neuromem/storage_engine/vector_storage.py +85 -0
  107. sage/middleware/components/neuromem/tests/__init__.py +37 -0
  108. sage/middleware/components/neuromem/tests/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  109. sage/middleware/components/neuromem/tests/__pycache__/__init__.cpython-311.pyc +0 -0
  110. sage/middleware/components/neuromem/tests/__pycache__/test_memory_service.cpython-311.opt-2.pyc +0 -0
  111. sage/middleware/components/neuromem/tests/__pycache__/test_memory_service.cpython-311.pyc +0 -0
  112. sage/middleware/components/neuromem/tests/core_test/__init__.py +37 -0
  113. sage/middleware/components/neuromem/tests/core_test/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  114. sage/middleware/components/neuromem/tests/core_test/__pycache__/__init__.cpython-311.pyc +0 -0
  115. sage/middleware/components/neuromem/tests/core_test/collection_test/__init__.py +37 -0
  116. sage/middleware/components/neuromem/tests/core_test/collection_test/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  117. sage/middleware/components/neuromem/tests/core_test/collection_test/__pycache__/__init__.cpython-311.pyc +0 -0
  118. sage/middleware/components/neuromem/tests/core_test/collection_test/__pycache__/kv_collection_test.cpython-311.opt-2.pyc +0 -0
  119. sage/middleware/components/neuromem/tests/core_test/collection_test/__pycache__/kv_collection_test.cpython-311.pyc +0 -0
  120. sage/middleware/components/neuromem/tests/core_test/collection_test/__pycache__/vdb_collection_test.cpython-311.opt-2.pyc +0 -0
  121. sage/middleware/components/neuromem/tests/core_test/collection_test/__pycache__/vdb_collection_test.cpython-311.pyc +0 -0
  122. sage/middleware/components/neuromem/tests/core_test/collection_test/kv_collection_test.py +60 -0
  123. sage/middleware/components/neuromem/tests/core_test/collection_test/vdb_collection_test.py +88 -0
  124. sage/middleware/components/neuromem/tests/core_test/manager_test.py +154 -0
  125. sage/middleware/components/neuromem/tests/test_memory_service.py +293 -0
  126. sage/middleware/components/neuromem/utils/__init__.py +37 -0
  127. sage/middleware/components/neuromem/utils/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  128. sage/middleware/components/neuromem/utils/__pycache__/__init__.cpython-311.pyc +0 -0
  129. sage/middleware/components/neuromem/utils/__pycache__/path_utils.cpython-311.opt-2.pyc +0 -0
  130. sage/middleware/components/neuromem/utils/__pycache__/path_utils.cpython-311.pyc +0 -0
  131. sage/middleware/components/neuromem/utils/path_utils.py +25 -0
  132. sage/middleware/components/sage_db/__init__.py +37 -0
  133. sage/middleware/components/sage_db/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  134. sage/middleware/components/sage_db/__pycache__/__init__.cpython-311.pyc +0 -0
  135. sage/middleware/components/sage_db/__pycache__/sage_db.cpython-311.opt-2.pyc +0 -0
  136. sage/middleware/components/sage_db/__pycache__/sage_db.cpython-311.pyc +0 -0
  137. sage/middleware/components/sage_db/python/__init__.py +37 -0
  138. sage/middleware/components/sage_db/python/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  139. sage/middleware/components/sage_db/python/__pycache__/__init__.cpython-311.pyc +0 -0
  140. sage/middleware/components/sage_db/python/__pycache__/sage_db.cpython-311.opt-2.pyc +0 -0
  141. sage/middleware/components/sage_db/python/__pycache__/sage_db.cpython-311.pyc +0 -0
  142. sage/middleware/components/sage_db/tests/__pycache__/test_python.cpython-311.opt-2.pyc +0 -0
  143. sage/middleware/components/sage_db/tests/__pycache__/test_python.cpython-311.pyc +0 -0
  144. sage/middleware/examples/__pycache__/api_usage_tutorial.cpython-311.opt-2.pyc +0 -0
  145. sage/middleware/examples/__pycache__/api_usage_tutorial.cpython-311.pyc +0 -0
  146. sage/middleware/examples/__pycache__/microservices_demo.cpython-311.opt-2.pyc +0 -0
  147. sage/middleware/examples/__pycache__/microservices_demo.cpython-311.pyc +0 -0
  148. sage/middleware/examples/__pycache__/microservices_registration_demo.cpython-311.opt-2.pyc +0 -0
  149. sage/middleware/examples/__pycache__/microservices_registration_demo.cpython-311.pyc +0 -0
  150. sage/middleware/examples/api_usage_tutorial.py +3 -3
  151. sage/middleware/examples/dag_microservices_demo.py +7 -8
  152. sage/middleware/examples/microservices_integration_demo.py +8 -11
  153. sage/middleware/examples/microservices_registration_demo.py +8 -12
  154. sage/middleware/services/__init__.py +37 -0
  155. sage/middleware/services/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  156. sage/middleware/services/__pycache__/__init__.cpython-311.pyc +0 -0
  157. sage/middleware/services/graph/__init__.py +33 -4
  158. sage/middleware/services/graph/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  159. sage/middleware/services/graph/__pycache__/__init__.cpython-311.pyc +0 -0
  160. sage/middleware/services/graph/__pycache__/graph_index.cpython-311.opt-2.pyc +0 -0
  161. sage/middleware/services/graph/__pycache__/graph_index.cpython-311.pyc +0 -0
  162. sage/middleware/services/graph/__pycache__/graph_service.cpython-311.opt-2.pyc +0 -0
  163. sage/middleware/services/graph/__pycache__/graph_service.cpython-311.pyc +0 -0
  164. sage/middleware/services/graph/examples/__pycache__/graph_demo.cpython-311.opt-2.pyc +0 -0
  165. sage/middleware/services/graph/examples/__pycache__/graph_demo.cpython-311.pyc +0 -0
  166. sage/middleware/services/graph/examples/graph_demo.py +3 -2
  167. sage/middleware/services/graph/graph_service.py +68 -0
  168. sage/middleware/services/graph/search_engine/__init__.py +37 -0
  169. sage/middleware/services/graph/search_engine/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  170. sage/middleware/services/graph/search_engine/__pycache__/__init__.cpython-311.pyc +0 -0
  171. sage/middleware/services/graph/search_engine/__pycache__/base_graph_index.cpython-311.opt-2.pyc +0 -0
  172. sage/middleware/services/graph/search_engine/__pycache__/base_graph_index.cpython-311.pyc +0 -0
  173. sage/middleware/services/kv/__init__.py +33 -4
  174. sage/middleware/services/kv/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  175. sage/middleware/services/kv/__pycache__/__init__.cpython-311.pyc +0 -0
  176. sage/middleware/services/kv/__pycache__/kv_service.cpython-311.opt-2.pyc +0 -0
  177. sage/middleware/services/kv/__pycache__/kv_service.cpython-311.pyc +0 -0
  178. sage/middleware/services/kv/examples/__pycache__/{kv_demo.cpython-313.opt-2.pyc → kv_demo.cpython-311.opt-2.pyc} +0 -0
  179. sage/middleware/services/kv/examples/__pycache__/{kv_demo.cpython-313.pyc → kv_demo.cpython-311.pyc} +0 -0
  180. sage/middleware/services/kv/examples/kv_demo.py +1 -1
  181. sage/middleware/services/kv/search_engine/__init__.py +37 -0
  182. sage/middleware/services/kv/search_engine/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  183. sage/middleware/services/kv/search_engine/__pycache__/__init__.cpython-311.pyc +0 -0
  184. sage/middleware/services/kv/search_engine/__pycache__/base_kv_index.cpython-311.opt-2.pyc +0 -0
  185. sage/middleware/services/kv/search_engine/__pycache__/base_kv_index.cpython-311.pyc +0 -0
  186. sage/middleware/services/kv/search_engine/__pycache__/bm25s_index.cpython-311.opt-2.pyc +0 -0
  187. sage/middleware/services/kv/search_engine/__pycache__/bm25s_index.cpython-311.pyc +0 -0
  188. sage/middleware/services/memory/__init__.py +33 -8
  189. sage/middleware/services/memory/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  190. sage/middleware/services/memory/__pycache__/__init__.cpython-311.pyc +0 -0
  191. sage/middleware/services/memory/__pycache__/memory_service.cpython-311.opt-2.pyc +0 -0
  192. sage/middleware/services/memory/__pycache__/memory_service.cpython-311.pyc +0 -0
  193. sage/middleware/services/memory/examples/__pycache__/{memory_demo.cpython-313.opt-2.pyc → memory_demo.cpython-311.opt-2.pyc} +0 -0
  194. sage/middleware/services/memory/examples/__pycache__/{memory_demo.cpython-313.pyc → memory_demo.cpython-311.pyc} +0 -0
  195. sage/middleware/services/memory/examples/dag_microservices_demo.py +8 -9
  196. sage/middleware/services/memory/examples/memory_demo.py +4 -4
  197. sage/middleware/services/memory/memory_collection/__pycache__/graph_collection.cpython-311.opt-2.pyc +0 -0
  198. sage/middleware/services/memory/memory_collection/__pycache__/graph_collection.cpython-311.pyc +0 -0
  199. sage/middleware/services/memory/memory_service.py +14 -11
  200. sage/middleware/services/memory/utils/__init__.py +37 -0
  201. sage/middleware/services/memory/utils/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  202. sage/middleware/services/memory/utils/__pycache__/__init__.cpython-311.pyc +0 -0
  203. sage/middleware/services/memory/utils/__pycache__/path_utils.cpython-311.opt-2.pyc +0 -0
  204. sage/middleware/services/memory/utils/__pycache__/path_utils.cpython-311.pyc +0 -0
  205. sage/middleware/services/vdb/__init__.py +33 -4
  206. sage/middleware/services/vdb/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  207. sage/middleware/services/vdb/__pycache__/__init__.cpython-311.pyc +0 -0
  208. sage/middleware/services/vdb/__pycache__/vdb_service.cpython-311.opt-2.pyc +0 -0
  209. sage/middleware/services/vdb/__pycache__/vdb_service.cpython-311.pyc +0 -0
  210. sage/middleware/services/vdb/examples/__pycache__/{vdb_demo.cpython-313.opt-2.pyc → vdb_demo.cpython-311.opt-2.pyc} +0 -0
  211. sage/middleware/services/vdb/examples/__pycache__/{vdb_demo.cpython-313.pyc → vdb_demo.cpython-311.pyc} +0 -0
  212. sage/middleware/services/vdb/examples/vdb_demo.py +2 -2
  213. sage/middleware/services/vdb/search_engine/__init__.py +37 -0
  214. sage/middleware/services/vdb/search_engine/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  215. sage/middleware/services/vdb/search_engine/__pycache__/__init__.cpython-311.pyc +0 -0
  216. sage/middleware/services/vdb/search_engine/__pycache__/base_vdb_index.cpython-311.opt-2.pyc +0 -0
  217. sage/middleware/services/vdb/search_engine/__pycache__/base_vdb_index.cpython-311.pyc +0 -0
  218. sage/middleware/services/vdb/search_engine/__pycache__/faiss_index.cpython-311.opt-2.pyc +0 -0
  219. sage/middleware/services/vdb/search_engine/__pycache__/faiss_index.cpython-311.pyc +0 -0
  220. sage/middleware/services/vdb/vdb_service.py +44 -41
  221. sage/middleware/utils/__init__.py +34 -2
  222. sage/middleware/utils/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  223. sage/middleware/utils/__pycache__/__init__.cpython-311.pyc +0 -0
  224. sage/middleware/utils/embedding/__init__.py +33 -31
  225. sage/middleware/utils/embedding/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  226. sage/middleware/utils/embedding/__pycache__/__init__.cpython-311.pyc +0 -0
  227. sage/middleware/utils/embedding/__pycache__/_cohere.cpython-311.opt-2.pyc +0 -0
  228. sage/middleware/utils/embedding/__pycache__/_cohere.cpython-311.pyc +0 -0
  229. sage/middleware/utils/embedding/__pycache__/bedrock.cpython-311.opt-2.pyc +0 -0
  230. sage/middleware/utils/embedding/__pycache__/bedrock.cpython-311.pyc +0 -0
  231. sage/middleware/utils/embedding/__pycache__/embedding_api.cpython-311.opt-2.pyc +0 -0
  232. sage/middleware/utils/embedding/__pycache__/embedding_api.cpython-311.pyc +0 -0
  233. sage/middleware/utils/embedding/__pycache__/embedding_model.cpython-311.opt-2.pyc +0 -0
  234. sage/middleware/utils/embedding/__pycache__/embedding_model.cpython-311.pyc +0 -0
  235. sage/middleware/utils/embedding/__pycache__/hf.cpython-311.opt-2.pyc +0 -0
  236. sage/middleware/utils/embedding/__pycache__/hf.cpython-311.pyc +0 -0
  237. sage/middleware/utils/embedding/__pycache__/instructor.cpython-311.opt-2.pyc +0 -0
  238. sage/middleware/utils/embedding/__pycache__/instructor.cpython-311.pyc +0 -0
  239. sage/middleware/utils/embedding/__pycache__/jina.cpython-311.opt-2.pyc +0 -0
  240. sage/middleware/utils/embedding/__pycache__/jina.cpython-311.pyc +0 -0
  241. sage/middleware/utils/embedding/__pycache__/lollms.cpython-311.opt-2.pyc +0 -0
  242. sage/middleware/utils/embedding/__pycache__/lollms.cpython-311.pyc +0 -0
  243. sage/middleware/utils/embedding/__pycache__/mockembedder.cpython-311.opt-2.pyc +0 -0
  244. sage/middleware/utils/embedding/__pycache__/mockembedder.cpython-311.pyc +0 -0
  245. sage/middleware/utils/embedding/__pycache__/nvidia_openai.cpython-311.opt-2.pyc +0 -0
  246. sage/middleware/utils/embedding/__pycache__/nvidia_openai.cpython-311.pyc +0 -0
  247. sage/middleware/utils/embedding/__pycache__/ollama.cpython-311.opt-2.pyc +0 -0
  248. sage/middleware/utils/embedding/__pycache__/ollama.cpython-311.pyc +0 -0
  249. sage/middleware/utils/embedding/__pycache__/openai.cpython-311.opt-2.pyc +0 -0
  250. sage/middleware/utils/embedding/__pycache__/openai.cpython-311.pyc +0 -0
  251. sage/middleware/utils/embedding/__pycache__/siliconcloud.cpython-311.opt-2.pyc +0 -0
  252. sage/middleware/utils/embedding/__pycache__/siliconcloud.cpython-311.pyc +0 -0
  253. sage/middleware/utils/embedding/__pycache__/zhipu.cpython-311.opt-2.pyc +0 -0
  254. sage/middleware/utils/embedding/__pycache__/zhipu.cpython-311.pyc +0 -0
  255. isage_middleware-0.1.1.dist-info/METADATA +0 -424
  256. isage_middleware-0.1.1.dist-info/RECORD +0 -182
  257. sage/__pycache__/__init__.cpython-313.opt-2.pyc +0 -0
  258. sage/__pycache__/__init__.cpython-313.pyc +0 -0
  259. sage/middleware/__pycache__/__init__.cpython-313.opt-2.pyc +0 -0
  260. sage/middleware/__pycache__/__init__.cpython-313.pyc +0 -0
  261. sage/middleware/api/__pycache__/__init__.cpython-313.opt-2.pyc +0 -0
  262. sage/middleware/api/__pycache__/__init__.cpython-313.pyc +0 -0
  263. sage/middleware/api/__pycache__/graph_api.cpython-313.opt-2.pyc +0 -0
  264. sage/middleware/api/__pycache__/graph_api.cpython-313.pyc +0 -0
  265. sage/middleware/api/__pycache__/kv_api.cpython-313.opt-2.pyc +0 -0
  266. sage/middleware/api/__pycache__/kv_api.cpython-313.pyc +0 -0
  267. sage/middleware/api/__pycache__/memory_api.cpython-313.opt-2.pyc +0 -0
  268. sage/middleware/api/__pycache__/memory_api.cpython-313.pyc +0 -0
  269. sage/middleware/api/__pycache__/vdb_api.cpython-313.opt-2.pyc +0 -0
  270. sage/middleware/api/__pycache__/vdb_api.cpython-313.pyc +0 -0
  271. sage/middleware/enterprise/__init__.py +0 -75
  272. sage/middleware/enterprise/__pycache__/__init__.cpython-313.opt-2.pyc +0 -0
  273. sage/middleware/enterprise/__pycache__/__init__.cpython-313.pyc +0 -0
  274. sage/middleware/enterprise/sage_db/__init__.py +0 -132
  275. sage/middleware/enterprise/sage_db/__pycache__/__init__.cpython-313.opt-2.pyc +0 -0
  276. sage/middleware/enterprise/sage_db/__pycache__/__init__.cpython-313.pyc +0 -0
  277. sage/middleware/enterprise/sage_db/__pycache__/sage_db.cpython-313.opt-2.pyc +0 -0
  278. sage/middleware/enterprise/sage_db/__pycache__/sage_db.cpython-313.pyc +0 -0
  279. sage/middleware/enterprise/sage_db/python/__init__.py +0 -7
  280. sage/middleware/enterprise/sage_db/python/__pycache__/__init__.cpython-313.opt-2.pyc +0 -0
  281. sage/middleware/enterprise/sage_db/python/__pycache__/__init__.cpython-313.pyc +0 -0
  282. sage/middleware/enterprise/sage_db/python/__pycache__/sage_db.cpython-313.opt-2.pyc +0 -0
  283. sage/middleware/enterprise/sage_db/python/__pycache__/sage_db.cpython-313.pyc +0 -0
  284. sage/middleware/enterprise/sage_db/tests/__pycache__/test_python.cpython-313.opt-2.pyc +0 -0
  285. sage/middleware/enterprise/sage_db/tests/__pycache__/test_python.cpython-313.pyc +0 -0
  286. sage/middleware/examples/__pycache__/api_usage_tutorial.cpython-313.opt-2.pyc +0 -0
  287. sage/middleware/examples/__pycache__/api_usage_tutorial.cpython-313.pyc +0 -0
  288. sage/middleware/examples/__pycache__/dag_microservices_demo.cpython-313.opt-2.pyc +0 -0
  289. sage/middleware/examples/__pycache__/dag_microservices_demo.cpython-313.pyc +0 -0
  290. sage/middleware/examples/__pycache__/microservices_demo.cpython-313.opt-2.pyc +0 -0
  291. sage/middleware/examples/__pycache__/microservices_demo.cpython-313.pyc +0 -0
  292. sage/middleware/examples/__pycache__/microservices_integration_demo.cpython-313.opt-2.pyc +0 -0
  293. sage/middleware/examples/__pycache__/microservices_integration_demo.cpython-313.pyc +0 -0
  294. sage/middleware/examples/__pycache__/microservices_registration_demo.cpython-313.opt-2.pyc +0 -0
  295. sage/middleware/examples/__pycache__/microservices_registration_demo.cpython-313.pyc +0 -0
  296. sage/middleware/services/graph/__pycache__/__init__.cpython-313.opt-2.pyc +0 -0
  297. sage/middleware/services/graph/__pycache__/__init__.cpython-313.pyc +0 -0
  298. sage/middleware/services/graph/__pycache__/graph_index.cpython-313.opt-2.pyc +0 -0
  299. sage/middleware/services/graph/__pycache__/graph_index.cpython-313.pyc +0 -0
  300. sage/middleware/services/graph/__pycache__/graph_service.cpython-313.opt-2.pyc +0 -0
  301. sage/middleware/services/graph/__pycache__/graph_service.cpython-313.pyc +0 -0
  302. sage/middleware/services/graph/examples/__pycache__/graph_demo.cpython-313.opt-2.pyc +0 -0
  303. sage/middleware/services/graph/examples/__pycache__/graph_demo.cpython-313.pyc +0 -0
  304. sage/middleware/services/graph/search_engine/__pycache__/__init__.cpython-313.opt-2.pyc +0 -0
  305. sage/middleware/services/graph/search_engine/__pycache__/__init__.cpython-313.pyc +0 -0
  306. sage/middleware/services/graph/search_engine/__pycache__/base_graph_index.cpython-313.opt-2.pyc +0 -0
  307. sage/middleware/services/graph/search_engine/__pycache__/base_graph_index.cpython-313.pyc +0 -0
  308. sage/middleware/services/kv/__pycache__/__init__.cpython-313.opt-2.pyc +0 -0
  309. sage/middleware/services/kv/__pycache__/__init__.cpython-313.pyc +0 -0
  310. sage/middleware/services/kv/__pycache__/kv_service.cpython-313.opt-2.pyc +0 -0
  311. sage/middleware/services/kv/__pycache__/kv_service.cpython-313.pyc +0 -0
  312. sage/middleware/services/kv/search_engine/__pycache__/__init__.cpython-313.opt-2.pyc +0 -0
  313. sage/middleware/services/kv/search_engine/__pycache__/__init__.cpython-313.pyc +0 -0
  314. sage/middleware/services/kv/search_engine/__pycache__/base_kv_index.cpython-313.opt-2.pyc +0 -0
  315. sage/middleware/services/kv/search_engine/__pycache__/base_kv_index.cpython-313.pyc +0 -0
  316. sage/middleware/services/kv/search_engine/__pycache__/bm25s_index.cpython-313.opt-2.pyc +0 -0
  317. sage/middleware/services/kv/search_engine/__pycache__/bm25s_index.cpython-313.pyc +0 -0
  318. sage/middleware/services/memory/__pycache__/__init__.cpython-313.opt-2.pyc +0 -0
  319. sage/middleware/services/memory/__pycache__/__init__.cpython-313.pyc +0 -0
  320. sage/middleware/services/memory/__pycache__/memory_service.cpython-313.opt-2.pyc +0 -0
  321. sage/middleware/services/memory/__pycache__/memory_service.cpython-313.pyc +0 -0
  322. sage/middleware/services/memory/examples/__pycache__/dag_microservices_demo.cpython-313.opt-2.pyc +0 -0
  323. sage/middleware/services/memory/examples/__pycache__/dag_microservices_demo.cpython-313.pyc +0 -0
  324. sage/middleware/services/memory/memory_collection/__pycache__/graph_collection.cpython-313.opt-2.pyc +0 -0
  325. sage/middleware/services/memory/memory_collection/__pycache__/graph_collection.cpython-313.pyc +0 -0
  326. sage/middleware/services/memory/utils/__pycache__/__init__.cpython-313.opt-2.pyc +0 -0
  327. sage/middleware/services/memory/utils/__pycache__/__init__.cpython-313.pyc +0 -0
  328. sage/middleware/services/memory/utils/__pycache__/path_utils.cpython-313.opt-2.pyc +0 -0
  329. sage/middleware/services/memory/utils/__pycache__/path_utils.cpython-313.pyc +0 -0
  330. sage/middleware/services/vdb/__pycache__/__init__.cpython-313.opt-2.pyc +0 -0
  331. sage/middleware/services/vdb/__pycache__/__init__.cpython-313.pyc +0 -0
  332. sage/middleware/services/vdb/__pycache__/vdb_service.cpython-313.opt-2.pyc +0 -0
  333. sage/middleware/services/vdb/__pycache__/vdb_service.cpython-313.pyc +0 -0
  334. sage/middleware/services/vdb/search_engine/__pycache__/__init__.cpython-313.opt-2.pyc +0 -0
  335. sage/middleware/services/vdb/search_engine/__pycache__/__init__.cpython-313.pyc +0 -0
  336. sage/middleware/services/vdb/search_engine/__pycache__/base_vdb_index.cpython-313.opt-2.pyc +0 -0
  337. sage/middleware/services/vdb/search_engine/__pycache__/base_vdb_index.cpython-313.pyc +0 -0
  338. sage/middleware/services/vdb/search_engine/__pycache__/faiss_index.cpython-313.opt-2.pyc +0 -0
  339. sage/middleware/services/vdb/search_engine/__pycache__/faiss_index.cpython-313.pyc +0 -0
  340. sage/middleware/utils/__pycache__/__init__.cpython-313.opt-2.pyc +0 -0
  341. sage/middleware/utils/__pycache__/__init__.cpython-313.pyc +0 -0
  342. sage/middleware/utils/embedding/__pycache__/__init__.cpython-313.opt-2.pyc +0 -0
  343. sage/middleware/utils/embedding/__pycache__/__init__.cpython-313.pyc +0 -0
  344. sage/middleware/utils/embedding/__pycache__/_cohere.cpython-313.opt-2.pyc +0 -0
  345. sage/middleware/utils/embedding/__pycache__/_cohere.cpython-313.pyc +0 -0
  346. sage/middleware/utils/embedding/__pycache__/bedrock.cpython-313.opt-2.pyc +0 -0
  347. sage/middleware/utils/embedding/__pycache__/bedrock.cpython-313.pyc +0 -0
  348. sage/middleware/utils/embedding/__pycache__/embedding_api.cpython-313.opt-2.pyc +0 -0
  349. sage/middleware/utils/embedding/__pycache__/embedding_api.cpython-313.pyc +0 -0
  350. sage/middleware/utils/embedding/__pycache__/embedding_model.cpython-313.opt-2.pyc +0 -0
  351. sage/middleware/utils/embedding/__pycache__/embedding_model.cpython-313.pyc +0 -0
  352. sage/middleware/utils/embedding/__pycache__/hf.cpython-313.opt-2.pyc +0 -0
  353. sage/middleware/utils/embedding/__pycache__/hf.cpython-313.pyc +0 -0
  354. sage/middleware/utils/embedding/__pycache__/instructor.cpython-313.opt-2.pyc +0 -0
  355. sage/middleware/utils/embedding/__pycache__/instructor.cpython-313.pyc +0 -0
  356. sage/middleware/utils/embedding/__pycache__/jina.cpython-313.opt-2.pyc +0 -0
  357. sage/middleware/utils/embedding/__pycache__/jina.cpython-313.pyc +0 -0
  358. sage/middleware/utils/embedding/__pycache__/lollms.cpython-313.opt-2.pyc +0 -0
  359. sage/middleware/utils/embedding/__pycache__/lollms.cpython-313.pyc +0 -0
  360. sage/middleware/utils/embedding/__pycache__/mockembedder.cpython-313.opt-2.pyc +0 -0
  361. sage/middleware/utils/embedding/__pycache__/mockembedder.cpython-313.pyc +0 -0
  362. sage/middleware/utils/embedding/__pycache__/nvidia_openai.cpython-313.opt-2.pyc +0 -0
  363. sage/middleware/utils/embedding/__pycache__/nvidia_openai.cpython-313.pyc +0 -0
  364. sage/middleware/utils/embedding/__pycache__/ollama.cpython-313.opt-2.pyc +0 -0
  365. sage/middleware/utils/embedding/__pycache__/ollama.cpython-313.pyc +0 -0
  366. sage/middleware/utils/embedding/__pycache__/openai.cpython-313.opt-2.pyc +0 -0
  367. sage/middleware/utils/embedding/__pycache__/openai.cpython-313.pyc +0 -0
  368. sage/middleware/utils/embedding/__pycache__/siliconcloud.cpython-313.opt-2.pyc +0 -0
  369. sage/middleware/utils/embedding/__pycache__/siliconcloud.cpython-313.pyc +0 -0
  370. sage/middleware/utils/embedding/__pycache__/zhipu.cpython-313.opt-2.pyc +0 -0
  371. sage/middleware/utils/embedding/__pycache__/zhipu.cpython-313.pyc +0 -0
  372. {isage_middleware-0.1.1.dist-info → isage_middleware-0.1.4.dist-info}/WHEEL +0 -0
  373. {isage_middleware-0.1.1.dist-info → isage_middleware-0.1.4.dist-info}/top_level.txt +0 -0
  374. /sage/middleware/{enterprise → components}/sage_db/python/sage_db.py +0 -0
  375. /sage/middleware/{enterprise → components}/sage_db/sage_db.py +0 -0
  376. /sage/middleware/{enterprise → components}/sage_db/tests/test_python.py +0 -0
@@ -1,8 +1,37 @@
1
1
  """
2
- VDB Service Module
3
- 向量数据库服务模块
2
+ SAGE - Streaming-Augmented Generative Execution
4
3
  """
5
4
 
6
- from .vdb_service import VDBService, create_vdb_service_factory
5
+ # 动态版本加载
6
+ def _load_version():
7
+ """从项目根目录动态加载版本信息"""
8
+ from pathlib import Path
9
+
10
+ # 获取项目根目录
11
+ current_file = Path(__file__).resolve()
12
+ root_dir = current_file.parent.parent.parent.parent.parent.parent.parent
13
+ version_file = root_dir / "_version.py"
14
+
15
+ # 加载版本信息
16
+ if version_file.exists():
17
+ version_globals = {}
18
+ with open(version_file, 'r', encoding='utf-8') as f:
19
+ exec(f.read(), version_globals)
20
+ return {
21
+ 'version': version_globals.get('__version__', '0.1.4'),
22
+ 'author': version_globals.get('__author__', 'SAGE Team'),
23
+ 'email': version_globals.get('__email__', 'shuhao_zhang@hust.edu.cn')
24
+ }
25
+
26
+ # 默认值
27
+ return {
28
+ 'version': '0.1.4',
29
+ 'author': 'SAGE Team',
30
+ 'email': 'shuhao_zhang@hust.edu.cn'
31
+ }
7
32
 
8
- __all__ = ["VDBService", "create_vdb_service_factory"]
33
+ # 加载信息
34
+ _info = _load_version()
35
+ __version__ = _info['version']
36
+ __author__ = _info['author']
37
+ __email__ = _info['email']
@@ -4,8 +4,8 @@ VDB Service API 使用示例
4
4
  """
5
5
  import numpy as np
6
6
  from sage.core.api.local_environment import LocalEnvironment
7
- from sage.middleware.services.services.vdb import create_vdb_service_factory
8
- from sage.middleware.services.api.vdb_api import VDBServiceAPI
7
+ from sage.middleware.services.vdb import create_vdb_service_factory
8
+ from sage.middleware.api.vdb_api import VDBServiceAPI
9
9
 
10
10
 
11
11
  def test_vdb_service_api():
@@ -0,0 +1,37 @@
1
+ """
2
+ SAGE - Streaming-Augmented Generative Execution
3
+ """
4
+
5
+ # 动态版本加载
6
+ def _load_version():
7
+ """从项目根目录动态加载版本信息"""
8
+ from pathlib import Path
9
+
10
+ # 获取项目根目录
11
+ current_file = Path(__file__).resolve()
12
+ root_dir = current_file.parent.parent.parent.parent.parent.parent.parent.parent
13
+ version_file = root_dir / "_version.py"
14
+
15
+ # 加载版本信息
16
+ if version_file.exists():
17
+ version_globals = {}
18
+ with open(version_file, 'r', encoding='utf-8') as f:
19
+ exec(f.read(), version_globals)
20
+ return {
21
+ 'version': version_globals.get('__version__', '0.1.4'),
22
+ 'author': version_globals.get('__author__', 'SAGE Team'),
23
+ 'email': version_globals.get('__email__', 'shuhao_zhang@hust.edu.cn')
24
+ }
25
+
26
+ # 默认值
27
+ return {
28
+ 'version': '0.1.4',
29
+ 'author': 'SAGE Team',
30
+ 'email': 'shuhao_zhang@hust.edu.cn'
31
+ }
32
+
33
+ # 加载信息
34
+ _info = _load_version()
35
+ __version__ = _info['version']
36
+ __author__ = _info['author']
37
+ __email__ = _info['email']
@@ -55,22 +55,24 @@ class FaissVDBBackend:
55
55
  # 导入FaissIndex
56
56
  try:
57
57
  from sage.middleware.services.vdb.search_engine.faiss_index import FaissIndex
58
-
59
- # 初始化FAISS索引
58
+
59
+ # 初始化FAISS索引(使用我们内部的 FaissIndex 实现)
60
60
  self.faiss_index = FaissIndex(
61
61
  name="vdb_index",
62
62
  dim=embedding_dimension,
63
63
  config={
64
64
  "index_type": index_type,
65
- **self.faiss_config
66
- }
65
+ **self.faiss_config,
66
+ },
67
67
  )
68
-
68
+
69
69
  # 文档存储 (id -> VectorDocument)
70
70
  self.documents: Dict[str, VectorDocument] = {}
71
-
72
- self.logger.info(f"FaissVDBBackend initialized with {index_type}, dim={embedding_dimension}")
73
-
71
+
72
+ self.logger.info(
73
+ f"FaissVDBBackend initialized with {index_type}, dim={embedding_dimension}"
74
+ )
75
+
74
76
  except ImportError as e:
75
77
  self.logger.error(f"Failed to import FaissIndex: {e}")
76
78
  raise ImportError("FAISS dependencies not available. Install with: pip install faiss-cpu")
@@ -102,10 +104,9 @@ class FaissVDBBackend:
102
104
  self.documents[doc.id] = doc
103
105
 
104
106
  if vector_arrays:
105
- # 添加到FAISS索引
106
- vectors_np = np.vstack(vector_arrays)
107
- self.faiss_index.add(vectors_np, vector_ids)
108
-
107
+ # 添加到FAISS索引(使用 batch_insert 接口)
108
+ self.faiss_index.batch_insert(vector_arrays, vector_ids)
109
+
109
110
  self.logger.debug(f"Added {len(vector_ids)} vectors to FAISS index")
110
111
  return vector_ids
111
112
  else:
@@ -120,27 +121,31 @@ class FaissVDBBackend:
120
121
  """搜索相似向量"""
121
122
  try:
122
123
  if len(query_vector) != self.embedding_dimension:
123
- raise ValueError(f"Query vector dimension mismatch: expected {self.embedding_dimension}, got {len(query_vector)}")
124
-
125
- # 转换查询向量
126
- query_np = np.array([query_vector], dtype=np.float32)
127
-
128
- # 在FAISS中搜索
129
- distances, indices, ids = self.faiss_index.search(query_np, top_k)
130
-
131
- results = []
132
- for i, (distance, doc_id) in enumerate(zip(distances[0], ids[0])):
124
+ raise ValueError(
125
+ f"Query vector dimension mismatch: expected {self.embedding_dimension}, got {len(query_vector)}"
126
+ )
127
+
128
+ # 转换查询向量(FaissIndex.search 接受 1D np.ndarray)
129
+ query_np = np.array(query_vector, dtype=np.float32)
130
+
131
+ # 在FAISS中搜索(返回 string_ids 和 distances)
132
+ ids, distances = self.faiss_index.search(query_np, top_k)
133
+
134
+ results: List[Tuple[VectorDocument, float]] = []
135
+ for doc_id, distance in zip(ids, distances):
133
136
  if doc_id in self.documents:
134
137
  doc = self.documents[doc_id]
135
-
138
+
136
139
  # 应用元数据过滤
137
140
  if metadata_filter and not self._matches_filter(doc.metadata, metadata_filter):
138
141
  continue
139
-
142
+
140
143
  results.append((doc, float(distance)))
141
144
  else:
142
- self.logger.warning(f"Document {doc_id} found in index but not in storage")
143
-
145
+ self.logger.warning(
146
+ f"Document {doc_id} found in index but not in storage"
147
+ )
148
+
144
149
  self.logger.debug(f"Search returned {len(results)} results")
145
150
  return results
146
151
 
@@ -156,18 +161,19 @@ class FaissVDBBackend:
156
161
  """删除向量文档"""
157
162
  try:
158
163
  deleted_count = 0
159
- valid_ids = []
160
-
164
+
161
165
  for doc_id in doc_ids:
162
166
  if doc_id in self.documents:
163
167
  del self.documents[doc_id]
164
- valid_ids.append(doc_id)
168
+ try:
169
+ # 从FAISS索引中删除(逐个删除)
170
+ self.faiss_index.delete(doc_id)
171
+ except Exception as e:
172
+ self.logger.warning(
173
+ f"Error deleting id {doc_id} from FAISS: {e}"
174
+ )
165
175
  deleted_count += 1
166
176
 
167
- # 从FAISS索引中删除
168
- if valid_ids:
169
- self.faiss_index.delete(valid_ids)
170
-
171
177
  self.logger.debug(f"Deleted {deleted_count} vectors")
172
178
  return deleted_count
173
179
 
@@ -198,8 +204,8 @@ class FaissVDBBackend:
198
204
  dim=self.embedding_dimension,
199
205
  config={
200
206
  "index_type": self.index_type,
201
- **self.faiss_config
202
- }
207
+ **self.faiss_config,
208
+ },
203
209
  )
204
210
  except Exception as e:
205
211
  self.logger.error(f"Error reinitializing FAISS index: {e}")
@@ -207,7 +213,7 @@ class FaissVDBBackend:
207
213
  def save_index(self, path: str) -> bool:
208
214
  """保存索引到磁盘"""
209
215
  try:
210
- self.faiss_index.save(path)
216
+ self.faiss_index.store(path)
211
217
  return True
212
218
  except Exception as e:
213
219
  self.logger.error(f"Error saving index: {e}")
@@ -217,11 +223,8 @@ class FaissVDBBackend:
217
223
  """从磁盘加载索引"""
218
224
  try:
219
225
  from sage.middleware.services.vdb.search_engine.faiss_index import FaissIndex
220
- self.faiss_index = FaissIndex(
221
- name="vdb_index",
222
- dim=self.embedding_dimension,
223
- load_path=path
224
- )
226
+ # 使用类方法 load 恢复索引
227
+ self.faiss_index = FaissIndex.load(name="vdb_index", load_path=path)
225
228
  return True
226
229
  except Exception as e:
227
230
  self.logger.error(f"Error loading index: {e}")
@@ -1,5 +1,37 @@
1
1
  """
2
- Llm module for SAGE framework
2
+ SAGE - Streaming-Augmented Generative Execution
3
3
  """
4
4
 
5
- __version__ = "1.0.0"
5
+ # 动态版本加载
6
+ def _load_version():
7
+ """从项目根目录动态加载版本信息"""
8
+ from pathlib import Path
9
+
10
+ # 获取项目根目录
11
+ current_file = Path(__file__).resolve()
12
+ root_dir = current_file.parent.parent.parent.parent.parent.parent
13
+ version_file = root_dir / "_version.py"
14
+
15
+ # 加载版本信息
16
+ if version_file.exists():
17
+ version_globals = {}
18
+ with open(version_file, 'r', encoding='utf-8') as f:
19
+ exec(f.read(), version_globals)
20
+ return {
21
+ 'version': version_globals.get('__version__', '0.1.4'),
22
+ 'author': version_globals.get('__author__', 'SAGE Team'),
23
+ 'email': version_globals.get('__email__', 'shuhao_zhang@hust.edu.cn')
24
+ }
25
+
26
+ # 默认值
27
+ return {
28
+ 'version': '0.1.4',
29
+ 'author': 'SAGE Team',
30
+ 'email': 'shuhao_zhang@hust.edu.cn'
31
+ }
32
+
33
+ # 加载信息
34
+ _info = _load_version()
35
+ __version__ = _info['version']
36
+ __author__ = _info['author']
37
+ __email__ = _info['email']
@@ -1,35 +1,37 @@
1
1
  """
2
- Embedding methods and models for SAGE middleware.
2
+ SAGE - Streaming-Augmented Generative Execution
3
3
  """
4
4
 
5
- from .embedding_api import apply_embedding_model
6
- from .embedding_model import EmbeddingModel
5
+ # 动态版本加载
6
+ def _load_version():
7
+ """从项目根目录动态加载版本信息"""
8
+ from pathlib import Path
9
+
10
+ # 获取项目根目录
11
+ current_file = Path(__file__).resolve()
12
+ root_dir = current_file.parent.parent.parent.parent.parent.parent.parent
13
+ version_file = root_dir / "_version.py"
14
+
15
+ # 加载版本信息
16
+ if version_file.exists():
17
+ version_globals = {}
18
+ with open(version_file, 'r', encoding='utf-8') as f:
19
+ exec(f.read(), version_globals)
20
+ return {
21
+ 'version': version_globals.get('__version__', '0.1.4'),
22
+ 'author': version_globals.get('__author__', 'SAGE Team'),
23
+ 'email': version_globals.get('__email__', 'shuhao_zhang@hust.edu.cn')
24
+ }
25
+
26
+ # 默认值
27
+ return {
28
+ 'version': '0.1.4',
29
+ 'author': 'SAGE Team',
30
+ 'email': 'shuhao_zhang@hust.edu.cn'
31
+ }
7
32
 
8
- # Import specific embedding implementations
9
- from . import hf
10
- from . import ollama
11
- from . import siliconcloud
12
- from . import openai
13
- from . import bedrock
14
- from . import zhipu
15
- from . import mockembedder
16
- from . import _cohere
17
- from . import nvidia_openai
18
- from . import lollms
19
- from . import jina
20
-
21
- __all__ = [
22
- 'apply_embedding_model',
23
- 'EmbeddingModel',
24
- 'hf',
25
- 'ollama',
26
- 'siliconcloud',
27
- 'openai',
28
- 'bedrock',
29
- 'zhipu',
30
- 'mockembedder',
31
- '_cohere',
32
- 'nvidia_openai',
33
- 'lollms',
34
- 'jina'
35
- ]
33
+ # 加载信息
34
+ _info = _load_version()
35
+ __version__ = _info['version']
36
+ __author__ = _info['author']
37
+ __email__ = _info['email']