isage-middleware 0.1.3.1__py3-none-any.whl → 0.2.0.0__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.
Files changed (464) hide show
  1. isage_middleware-0.2.0.0.dist-info/METADATA +258 -0
  2. isage_middleware-0.2.0.0.dist-info/RECORD +186 -0
  3. sage/middleware/__init__.py +56 -53
  4. sage/middleware/__init__.pyc +0 -0
  5. sage/middleware/__pycache__/__init__.cpython-311.pyc +0 -0
  6. sage/middleware/__pycache__/_version.cpython-311.pyc +0 -0
  7. sage/middleware/_version.py +4 -36
  8. sage/middleware/_version.pyc +0 -0
  9. sage/middleware/components/__init__.py +26 -0
  10. sage/middleware/components/__init__.pyc +0 -0
  11. sage/middleware/components/__pycache__/__init__.cpython-311.pyc +0 -0
  12. sage/middleware/components/__pycache__/extensions_compat.cpython-311.pyc +0 -0
  13. sage/middleware/components/extensions_compat.pyc +0 -0
  14. sage/middleware/components/sage_db/__init__.py +114 -54
  15. sage/middleware/components/sage_db/__init__.pyc +0 -0
  16. sage/middleware/components/sage_db/__pycache__/__init__.cpython-311.pyc +0 -0
  17. sage/middleware/components/sage_db/__pycache__/backend.cpython-311.pyc +0 -0
  18. sage/middleware/components/sage_db/backend.pyc +0 -0
  19. sage/middleware/components/sage_db/service.pyc +0 -0
  20. sage/middleware/components/sage_flow/__init__.py +76 -0
  21. sage/middleware/components/sage_flow/__init__.pyc +0 -0
  22. sage/middleware/components/sage_flow/__pycache__/__init__.cpython-311.pyc +0 -0
  23. sage/middleware/components/sage_flow/examples/basic_service.pyc +0 -0
  24. sage/middleware/components/sage_flow/python/__init__.py +14 -0
  25. sage/middleware/components/sage_flow/python/__init__.pyc +0 -0
  26. sage/middleware/components/sage_flow/python/__pycache__/__init__.cpython-311.pyc +0 -0
  27. sage/middleware/components/sage_flow/python/__pycache__/sage_flow.cpython-311.pyc +0 -0
  28. sage/middleware/components/sage_flow/python/micro_service/__init__.py +4 -0
  29. sage/middleware/components/sage_flow/python/micro_service/__init__.pyc +0 -0
  30. sage/middleware/components/sage_flow/python/micro_service/__pycache__/__init__.cpython-311.pyc +0 -0
  31. sage/middleware/components/sage_flow/python/micro_service/__pycache__/sage_flow_service.cpython-311.pyc +0 -0
  32. sage/middleware/components/sage_flow/python/micro_service/sage_flow_service.pyc +0 -0
  33. sage/middleware/components/sage_flow/python/sage_flow.pyc +0 -0
  34. sage/middleware/components/sage_flow/service.pyc +0 -0
  35. sage/middleware/components/sage_mem/__init__.py +83 -0
  36. sage/middleware/components/sage_mem/__init__.pyc +0 -0
  37. sage/middleware/components/sage_mem/__pycache__/__init__.cpython-311.pyc +0 -0
  38. sage/middleware/components/sage_refiner/__init__.py +103 -0
  39. sage/middleware/components/sage_refiner/__init__.pyc +0 -0
  40. sage/middleware/components/sage_refiner/__pycache__/__init__.cpython-311.pyc +0 -0
  41. sage/middleware/components/sage_refiner/examples/basic_usage.pyc +0 -0
  42. sage/middleware/components/sage_refiner/examples/context_service_demo.pyc +0 -0
  43. sage/middleware/components/sage_refiner/examples/rag_integration.pyc +0 -0
  44. sage/middleware/components/sage_refiner/python/__init__.py +38 -0
  45. sage/middleware/components/sage_refiner/python/__init__.pyc +0 -0
  46. sage/middleware/components/sage_refiner/python/__pycache__/__init__.cpython-311.pyc +0 -0
  47. sage/middleware/components/sage_refiner/python/__pycache__/context_service.cpython-311.pyc +0 -0
  48. sage/middleware/components/sage_refiner/python/__pycache__/service.cpython-311.pyc +0 -0
  49. sage/middleware/components/sage_refiner/python/adapter.pyc +0 -0
  50. sage/middleware/components/sage_refiner/python/context_service.pyc +0 -0
  51. sage/middleware/components/sage_refiner/python/service.pyc +0 -0
  52. sage/middleware/components/sage_tsdb/__init__.py +81 -0
  53. sage/middleware/components/sage_tsdb/__init__.pyc +0 -0
  54. sage/middleware/components/sage_tsdb/__pycache__/__init__.cpython-311.pyc +0 -0
  55. sage/middleware/components/sage_tsdb/examples/basic_usage.pyc +0 -0
  56. sage/middleware/components/sage_tsdb/examples/service_demo.pyc +0 -0
  57. sage/middleware/components/sage_tsdb/examples/stream_join_demo.pyc +0 -0
  58. sage/middleware/components/sage_tsdb/python/__init__.py +21 -0
  59. sage/middleware/components/sage_tsdb/python/__init__.pyc +0 -0
  60. sage/middleware/components/sage_tsdb/python/__pycache__/__init__.cpython-311.pyc +0 -0
  61. sage/middleware/components/sage_tsdb/python/__pycache__/sage_tsdb.cpython-311.pyc +0 -0
  62. sage/middleware/components/sage_tsdb/python/_sage_tsdb.cpython-311-x86_64-linux-gnu.so +0 -0
  63. sage/middleware/components/sage_tsdb/python/_sage_tsdb.pyi +17 -0
  64. sage/middleware/components/sage_tsdb/python/algorithms/__init__.py +17 -0
  65. sage/middleware/components/sage_tsdb/python/algorithms/__init__.pyc +0 -0
  66. sage/middleware/components/sage_tsdb/python/algorithms/__pycache__/__init__.cpython-311.pyc +0 -0
  67. sage/middleware/components/sage_tsdb/python/algorithms/__pycache__/base.cpython-311.pyc +0 -0
  68. sage/middleware/components/sage_tsdb/python/algorithms/__pycache__/out_of_order_join.cpython-311.pyc +0 -0
  69. sage/middleware/components/sage_tsdb/python/algorithms/__pycache__/window_aggregator.cpython-311.pyc +0 -0
  70. sage/middleware/components/sage_tsdb/python/algorithms/base.pyc +0 -0
  71. sage/middleware/components/sage_tsdb/python/algorithms/out_of_order_join.pyc +0 -0
  72. sage/middleware/components/sage_tsdb/python/algorithms/window_aggregator.pyc +0 -0
  73. sage/middleware/components/sage_tsdb/python/libsage_tsdb_algorithms.so +0 -0
  74. sage/middleware/components/sage_tsdb/python/libsage_tsdb_core.so +0 -0
  75. sage/middleware/components/sage_tsdb/python/micro_service/__init__.py +7 -0
  76. sage/middleware/components/sage_tsdb/python/micro_service/__init__.pyc +0 -0
  77. sage/middleware/components/sage_tsdb/python/micro_service/__pycache__/__init__.cpython-311.pyc +0 -0
  78. sage/middleware/components/sage_tsdb/python/micro_service/__pycache__/sage_tsdb_service.cpython-311.pyc +0 -0
  79. sage/middleware/components/sage_tsdb/python/micro_service/sage_tsdb_service.pyc +0 -0
  80. sage/middleware/components/sage_tsdb/python/sage_tsdb.pyc +0 -0
  81. sage/middleware/components/sage_tsdb/service.pyc +0 -0
  82. sage/middleware/operators/__init__.py +32 -0
  83. sage/middleware/operators/__init__.pyc +0 -0
  84. sage/middleware/operators/__pycache__/__init__.cpython-311.pyc +0 -0
  85. sage/middleware/operators/agent/__init__.py +9 -0
  86. sage/middleware/operators/agent/__init__.pyc +0 -0
  87. sage/middleware/operators/agent/__pycache__/__init__.cpython-311.pyc +0 -0
  88. sage/middleware/operators/agent/__pycache__/runtime.cpython-311.pyc +0 -0
  89. sage/middleware/operators/agent/planning/__init__.py +5 -0
  90. sage/middleware/operators/agent/planning/__init__.pyc +0 -0
  91. sage/middleware/operators/agent/planning/__pycache__/__init__.cpython-311.pyc +0 -0
  92. sage/middleware/operators/agent/planning/__pycache__/llm_adapter.cpython-311.pyc +0 -0
  93. sage/middleware/operators/agent/planning/__pycache__/planner_adapter.cpython-311.pyc +0 -0
  94. sage/middleware/operators/agent/planning/__pycache__/router.cpython-311.pyc +0 -0
  95. sage/middleware/operators/agent/planning/llm_adapter.pyc +0 -0
  96. sage/middleware/operators/agent/planning/planner_adapter.pyc +0 -0
  97. sage/middleware/operators/agent/planning/router.pyc +0 -0
  98. sage/middleware/operators/agent/runtime.pyc +0 -0
  99. sage/middleware/operators/agentic/__init__.py +20 -0
  100. sage/middleware/operators/agentic/__init__.pyc +0 -0
  101. sage/middleware/operators/agentic/__pycache__/__init__.cpython-311.pyc +0 -0
  102. sage/middleware/operators/agentic/__pycache__/planning_operator.cpython-311.pyc +0 -0
  103. sage/middleware/operators/agentic/__pycache__/refined_searcher.cpython-311.pyc +0 -0
  104. sage/middleware/operators/agentic/__pycache__/runtime.cpython-311.pyc +0 -0
  105. sage/middleware/operators/agentic/__pycache__/timing_operator.cpython-311.pyc +0 -0
  106. sage/middleware/operators/agentic/__pycache__/tool_selection_operator.cpython-311.pyc +0 -0
  107. sage/middleware/operators/agentic/planning_operator.pyc +0 -0
  108. sage/middleware/operators/agentic/refined_searcher.pyc +0 -0
  109. sage/middleware/operators/agentic/runtime.pyc +0 -0
  110. sage/middleware/operators/agentic/timing_operator.pyc +0 -0
  111. sage/middleware/operators/agentic/tool_selection_operator.pyc +0 -0
  112. sage/middleware/operators/context/__init__.py +17 -0
  113. sage/middleware/operators/context/__init__.pyc +0 -0
  114. sage/middleware/operators/context/__pycache__/__init__.cpython-311.pyc +0 -0
  115. sage/middleware/operators/context/__pycache__/critic_evaluation.cpython-311.pyc +0 -0
  116. sage/middleware/operators/context/__pycache__/model_context.cpython-311.pyc +0 -0
  117. sage/middleware/operators/context/__pycache__/quality_label.cpython-311.pyc +0 -0
  118. sage/middleware/operators/context/__pycache__/search_query_results.cpython-311.pyc +0 -0
  119. sage/middleware/operators/context/__pycache__/search_result.cpython-311.pyc +0 -0
  120. sage/middleware/operators/context/__pycache__/search_session.cpython-311.pyc +0 -0
  121. sage/middleware/operators/context/critic_evaluation.pyc +0 -0
  122. sage/middleware/operators/context/model_context.pyc +0 -0
  123. sage/middleware/operators/context/quality_label.pyc +0 -0
  124. sage/middleware/operators/context/search_query_results.pyc +0 -0
  125. sage/middleware/operators/context/search_result.pyc +0 -0
  126. sage/middleware/operators/context/search_session.pyc +0 -0
  127. sage/middleware/operators/filters/__init__.py +26 -0
  128. sage/middleware/operators/filters/__init__.pyc +0 -0
  129. sage/middleware/operators/filters/__pycache__/__init__.cpython-311.pyc +0 -0
  130. sage/middleware/operators/filters/__pycache__/context_sink.cpython-311.pyc +0 -0
  131. sage/middleware/operators/filters/__pycache__/context_source.cpython-311.pyc +0 -0
  132. sage/middleware/operators/filters/__pycache__/evaluate_filter.cpython-311.pyc +0 -0
  133. sage/middleware/operators/filters/__pycache__/tool_filter.cpython-311.pyc +0 -0
  134. sage/middleware/operators/filters/context_sink.pyc +0 -0
  135. sage/middleware/operators/filters/context_source.pyc +0 -0
  136. sage/middleware/operators/filters/evaluate_filter.pyc +0 -0
  137. sage/middleware/operators/filters/tool_filter.pyc +0 -0
  138. sage/middleware/operators/llm/__init__.py +9 -0
  139. sage/middleware/operators/llm/__init__.pyc +0 -0
  140. sage/middleware/operators/llm/__pycache__/__init__.cpython-311.pyc +0 -0
  141. sage/middleware/operators/llm/__pycache__/vllm_generator.cpython-311.pyc +0 -0
  142. sage/middleware/operators/llm/vllm_generator.pyc +0 -0
  143. sage/middleware/operators/rag/__init__.py +146 -0
  144. sage/middleware/operators/rag/__init__.pyc +0 -0
  145. sage/middleware/operators/rag/__pycache__/__init__.cpython-311.pyc +0 -0
  146. sage/middleware/operators/rag/__pycache__/generator.cpython-311.pyc +0 -0
  147. sage/middleware/operators/rag/arxiv.pyc +0 -0
  148. sage/middleware/operators/rag/chunk.pyc +0 -0
  149. sage/middleware/operators/rag/document_loaders.pyc +0 -0
  150. sage/middleware/operators/rag/evaluate.pyc +0 -0
  151. sage/middleware/operators/rag/generator.pyc +0 -0
  152. sage/middleware/operators/rag/index_builder/__init__.py +48 -0
  153. sage/middleware/operators/rag/index_builder/__init__.pyc +0 -0
  154. sage/middleware/operators/rag/index_builder/builder.pyc +0 -0
  155. sage/middleware/operators/rag/index_builder/manifest.pyc +0 -0
  156. sage/middleware/operators/rag/index_builder/storage.pyc +0 -0
  157. sage/middleware/operators/rag/pipeline.pyc +0 -0
  158. sage/middleware/operators/rag/profiler.pyc +0 -0
  159. sage/middleware/operators/rag/promptor.pyc +0 -0
  160. sage/middleware/operators/rag/refiner.pyc +0 -0
  161. sage/middleware/operators/rag/reranker.pyc +0 -0
  162. sage/middleware/operators/rag/retriever.pyc +0 -0
  163. sage/middleware/operators/rag/searcher.pyc +0 -0
  164. sage/middleware/operators/rag/types.pyc +0 -0
  165. sage/middleware/operators/rag/writer.pyc +0 -0
  166. sage/middleware/operators/tools/__init__.py +28 -0
  167. sage/middleware/operators/tools/__init__.pyc +0 -0
  168. sage/middleware/operators/tools/__pycache__/__init__.cpython-311.pyc +0 -0
  169. sage/middleware/operators/tools/__pycache__/arxiv_paper_searcher.cpython-311.pyc +0 -0
  170. sage/middleware/operators/tools/__pycache__/arxiv_searcher.cpython-311.pyc +0 -0
  171. sage/middleware/operators/tools/__pycache__/image_captioner.cpython-311.pyc +0 -0
  172. sage/middleware/operators/tools/__pycache__/nature_news_fetcher.cpython-311.pyc +0 -0
  173. sage/middleware/operators/tools/__pycache__/searcher_tool.cpython-311.pyc +0 -0
  174. sage/middleware/operators/tools/__pycache__/text_detector.cpython-311.pyc +0 -0
  175. sage/middleware/operators/tools/__pycache__/url_text_extractor.cpython-311.pyc +0 -0
  176. sage/middleware/operators/tools/arxiv_paper_searcher.pyc +0 -0
  177. sage/middleware/operators/tools/arxiv_searcher.pyc +0 -0
  178. sage/middleware/operators/tools/duckduckgo_searcher.pyc +0 -0
  179. sage/middleware/operators/tools/image_captioner.pyc +0 -0
  180. sage/middleware/operators/tools/nature_news_fetcher.pyc +0 -0
  181. sage/middleware/operators/tools/searcher_tool.pyc +0 -0
  182. sage/middleware/operators/tools/text_detector.pyc +0 -0
  183. sage/middleware/operators/tools/url_text_extractor.pyc +0 -0
  184. isage_middleware-0.1.3.1.dist-info/METADATA +0 -115
  185. isage_middleware-0.1.3.1.dist-info/RECORD +0 -288
  186. sage/middleware/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  187. sage/middleware/__pycache__/_version.cpython-311.opt-2.pyc +0 -0
  188. sage/middleware/api/__init__.py +0 -56
  189. sage/middleware/api/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  190. sage/middleware/api/__pycache__/__init__.cpython-311.pyc +0 -0
  191. sage/middleware/api/__pycache__/graph_api.cpython-311.opt-2.pyc +0 -0
  192. sage/middleware/api/__pycache__/graph_api.cpython-311.pyc +0 -0
  193. sage/middleware/api/__pycache__/kv_api.cpython-311.opt-2.pyc +0 -0
  194. sage/middleware/api/__pycache__/kv_api.cpython-311.pyc +0 -0
  195. sage/middleware/api/__pycache__/memory_api.cpython-311.opt-2.pyc +0 -0
  196. sage/middleware/api/__pycache__/memory_api.cpython-311.pyc +0 -0
  197. sage/middleware/api/__pycache__/vdb_api.cpython-311.opt-2.pyc +0 -0
  198. sage/middleware/api/__pycache__/vdb_api.cpython-311.pyc +0 -0
  199. sage/middleware/api/graph_api.py +0 -74
  200. sage/middleware/api/kv_api.py +0 -45
  201. sage/middleware/api/memory_api.py +0 -64
  202. sage/middleware/api/vdb_api.py +0 -60
  203. sage/middleware/components/enterprise/__init__.py +0 -56
  204. sage/middleware/components/enterprise/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  205. sage/middleware/components/enterprise/__pycache__/__init__.cpython-311.pyc +0 -0
  206. sage/middleware/components/neuromem/__init__.py +0 -56
  207. sage/middleware/components/neuromem/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  208. sage/middleware/components/neuromem/__pycache__/__init__.cpython-311.pyc +0 -0
  209. sage/middleware/components/neuromem/__pycache__/memory_manager.cpython-311.opt-2.pyc +0 -0
  210. sage/middleware/components/neuromem/__pycache__/memory_manager.cpython-311.pyc +0 -0
  211. sage/middleware/components/neuromem/__pycache__/memory_service.cpython-311.opt-2.pyc +0 -0
  212. sage/middleware/components/neuromem/__pycache__/memory_service.cpython-311.pyc +0 -0
  213. sage/middleware/components/neuromem/memory_collection/__init__.py +0 -56
  214. sage/middleware/components/neuromem/memory_collection/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  215. sage/middleware/components/neuromem/memory_collection/__pycache__/__init__.cpython-311.pyc +0 -0
  216. sage/middleware/components/neuromem/memory_collection/__pycache__/base_collection.cpython-311.opt-2.pyc +0 -0
  217. sage/middleware/components/neuromem/memory_collection/__pycache__/base_collection.cpython-311.pyc +0 -0
  218. sage/middleware/components/neuromem/memory_collection/__pycache__/graph_collection.cpython-311.opt-2.pyc +0 -0
  219. sage/middleware/components/neuromem/memory_collection/__pycache__/graph_collection.cpython-311.pyc +0 -0
  220. sage/middleware/components/neuromem/memory_collection/__pycache__/kv_collection.cpython-311.opt-2.pyc +0 -0
  221. sage/middleware/components/neuromem/memory_collection/__pycache__/kv_collection.cpython-311.pyc +0 -0
  222. sage/middleware/components/neuromem/memory_collection/__pycache__/vdb_collection.cpython-311.opt-2.pyc +0 -0
  223. sage/middleware/components/neuromem/memory_collection/__pycache__/vdb_collection.cpython-311.pyc +0 -0
  224. sage/middleware/components/neuromem/memory_collection/base_collection.py +0 -167
  225. sage/middleware/components/neuromem/memory_collection/graph_collection.py +0 -11
  226. sage/middleware/components/neuromem/memory_collection/kv_collection.py +0 -709
  227. sage/middleware/components/neuromem/memory_collection/vdb_collection.py +0 -922
  228. sage/middleware/components/neuromem/memory_manager.py +0 -401
  229. sage/middleware/components/neuromem/memory_service.py +0 -324
  230. sage/middleware/components/neuromem/micro_service/__init__.py +0 -56
  231. sage/middleware/components/neuromem/micro_service/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  232. sage/middleware/components/neuromem/micro_service/__pycache__/__init__.cpython-311.pyc +0 -0
  233. sage/middleware/components/neuromem/micro_service/__pycache__/neuromem_vdb.cpython-311.opt-2.pyc +0 -0
  234. sage/middleware/components/neuromem/micro_service/__pycache__/neuromem_vdb.cpython-311.pyc +0 -0
  235. sage/middleware/components/neuromem/micro_service/__pycache__/neuromem_vdb_service.cpython-311.opt-2.pyc +0 -0
  236. sage/middleware/components/neuromem/micro_service/__pycache__/neuromem_vdb_service.cpython-311.pyc +0 -0
  237. sage/middleware/components/neuromem/micro_service/neuromem_vdb.py +0 -198
  238. sage/middleware/components/neuromem/micro_service/neuromem_vdb_service.py +0 -118
  239. sage/middleware/components/neuromem/search_engine/__init__.py +0 -56
  240. sage/middleware/components/neuromem/search_engine/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  241. sage/middleware/components/neuromem/search_engine/__pycache__/__init__.cpython-311.pyc +0 -0
  242. sage/middleware/components/neuromem/search_engine/graph_index/__init__.py +0 -56
  243. sage/middleware/components/neuromem/search_engine/graph_index/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  244. sage/middleware/components/neuromem/search_engine/graph_index/__pycache__/__init__.cpython-311.pyc +0 -0
  245. sage/middleware/components/neuromem/search_engine/graph_index/__pycache__/base_graph_index.cpython-311.opt-2.pyc +0 -0
  246. sage/middleware/components/neuromem/search_engine/graph_index/__pycache__/base_graph_index.cpython-311.pyc +0 -0
  247. sage/middleware/components/neuromem/search_engine/graph_index/base_graph_index.py +0 -40
  248. sage/middleware/components/neuromem/search_engine/hybird_index/__init__.py +0 -56
  249. sage/middleware/components/neuromem/search_engine/hybird_index/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  250. sage/middleware/components/neuromem/search_engine/hybird_index/__pycache__/__init__.cpython-311.pyc +0 -0
  251. sage/middleware/components/neuromem/search_engine/kv_index/__init__.py +0 -56
  252. sage/middleware/components/neuromem/search_engine/kv_index/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  253. sage/middleware/components/neuromem/search_engine/kv_index/__pycache__/__init__.cpython-311.pyc +0 -0
  254. sage/middleware/components/neuromem/search_engine/kv_index/__pycache__/base_kv_index.cpython-311.opt-2.pyc +0 -0
  255. sage/middleware/components/neuromem/search_engine/kv_index/__pycache__/base_kv_index.cpython-311.pyc +0 -0
  256. sage/middleware/components/neuromem/search_engine/kv_index/__pycache__/bm25s_index.cpython-311.opt-2.pyc +0 -0
  257. sage/middleware/components/neuromem/search_engine/kv_index/__pycache__/bm25s_index.cpython-311.pyc +0 -0
  258. sage/middleware/components/neuromem/search_engine/kv_index/base_kv_index.py +0 -76
  259. sage/middleware/components/neuromem/search_engine/kv_index/bm25s_index.py +0 -320
  260. sage/middleware/components/neuromem/search_engine/vdb_index/__init__.py +0 -56
  261. sage/middleware/components/neuromem/search_engine/vdb_index/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  262. sage/middleware/components/neuromem/search_engine/vdb_index/__pycache__/__init__.cpython-311.pyc +0 -0
  263. sage/middleware/components/neuromem/search_engine/vdb_index/__pycache__/base_vdb_index.cpython-311.opt-2.pyc +0 -0
  264. sage/middleware/components/neuromem/search_engine/vdb_index/__pycache__/base_vdb_index.cpython-311.pyc +0 -0
  265. sage/middleware/components/neuromem/search_engine/vdb_index/__pycache__/faiss_index.cpython-311.opt-2.pyc +0 -0
  266. sage/middleware/components/neuromem/search_engine/vdb_index/__pycache__/faiss_index.cpython-311.pyc +0 -0
  267. sage/middleware/components/neuromem/search_engine/vdb_index/base_vdb_index.py +0 -53
  268. sage/middleware/components/neuromem/search_engine/vdb_index/faiss_index.py +0 -700
  269. sage/middleware/components/neuromem/storage_engine/__init__.py +0 -56
  270. sage/middleware/components/neuromem/storage_engine/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  271. sage/middleware/components/neuromem/storage_engine/__pycache__/__init__.cpython-311.pyc +0 -0
  272. sage/middleware/components/neuromem/storage_engine/__pycache__/metadata_storage.cpython-311.opt-2.pyc +0 -0
  273. sage/middleware/components/neuromem/storage_engine/__pycache__/metadata_storage.cpython-311.pyc +0 -0
  274. sage/middleware/components/neuromem/storage_engine/__pycache__/text_storage.cpython-311.opt-2.pyc +0 -0
  275. sage/middleware/components/neuromem/storage_engine/__pycache__/text_storage.cpython-311.pyc +0 -0
  276. sage/middleware/components/neuromem/storage_engine/__pycache__/vector_storage.cpython-311.opt-2.pyc +0 -0
  277. sage/middleware/components/neuromem/storage_engine/__pycache__/vector_storage.cpython-311.pyc +0 -0
  278. sage/middleware/components/neuromem/storage_engine/kv_backend/__init__.py +0 -56
  279. sage/middleware/components/neuromem/storage_engine/kv_backend/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  280. sage/middleware/components/neuromem/storage_engine/kv_backend/__pycache__/__init__.cpython-311.pyc +0 -0
  281. sage/middleware/components/neuromem/storage_engine/kv_backend/__pycache__/base_kv_backend.cpython-311.opt-2.pyc +0 -0
  282. sage/middleware/components/neuromem/storage_engine/kv_backend/__pycache__/base_kv_backend.cpython-311.pyc +0 -0
  283. sage/middleware/components/neuromem/storage_engine/kv_backend/__pycache__/dict_kv_backend.cpython-311.opt-2.pyc +0 -0
  284. sage/middleware/components/neuromem/storage_engine/kv_backend/__pycache__/dict_kv_backend.cpython-311.pyc +0 -0
  285. sage/middleware/components/neuromem/storage_engine/kv_backend/base_kv_backend.py +0 -65
  286. sage/middleware/components/neuromem/storage_engine/kv_backend/dict_kv_backend.py +0 -54
  287. sage/middleware/components/neuromem/storage_engine/metadata_storage.py +0 -260
  288. sage/middleware/components/neuromem/storage_engine/text_storage.py +0 -106
  289. sage/middleware/components/neuromem/storage_engine/vector_storage.py +0 -85
  290. sage/middleware/components/neuromem/tests/__init__.py +0 -56
  291. sage/middleware/components/neuromem/tests/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  292. sage/middleware/components/neuromem/tests/__pycache__/__init__.cpython-311.pyc +0 -0
  293. sage/middleware/components/neuromem/tests/__pycache__/test_memory_service.cpython-311.opt-2.pyc +0 -0
  294. sage/middleware/components/neuromem/tests/__pycache__/test_memory_service.cpython-311.pyc +0 -0
  295. sage/middleware/components/neuromem/tests/core_test/__init__.py +0 -56
  296. sage/middleware/components/neuromem/tests/core_test/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  297. sage/middleware/components/neuromem/tests/core_test/__pycache__/__init__.cpython-311.pyc +0 -0
  298. sage/middleware/components/neuromem/tests/core_test/collection_test/__init__.py +0 -56
  299. sage/middleware/components/neuromem/tests/core_test/collection_test/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  300. sage/middleware/components/neuromem/tests/core_test/collection_test/__pycache__/__init__.cpython-311.pyc +0 -0
  301. sage/middleware/components/neuromem/tests/core_test/collection_test/__pycache__/kv_collection_test.cpython-311.opt-2.pyc +0 -0
  302. sage/middleware/components/neuromem/tests/core_test/collection_test/__pycache__/kv_collection_test.cpython-311.pyc +0 -0
  303. sage/middleware/components/neuromem/tests/core_test/collection_test/__pycache__/vdb_collection_test.cpython-311.opt-2.pyc +0 -0
  304. sage/middleware/components/neuromem/tests/core_test/collection_test/__pycache__/vdb_collection_test.cpython-311.pyc +0 -0
  305. sage/middleware/components/neuromem/tests/core_test/collection_test/kv_collection_test.py +0 -60
  306. sage/middleware/components/neuromem/tests/core_test/collection_test/vdb_collection_test.py +0 -88
  307. sage/middleware/components/neuromem/tests/core_test/manager_test.py +0 -154
  308. sage/middleware/components/neuromem/tests/test_memory_service.py +0 -293
  309. sage/middleware/components/neuromem/utils/__init__.py +0 -56
  310. sage/middleware/components/neuromem/utils/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  311. sage/middleware/components/neuromem/utils/__pycache__/__init__.cpython-311.pyc +0 -0
  312. sage/middleware/components/neuromem/utils/__pycache__/path_utils.cpython-311.opt-2.pyc +0 -0
  313. sage/middleware/components/neuromem/utils/__pycache__/path_utils.cpython-311.pyc +0 -0
  314. sage/middleware/components/neuromem/utils/path_utils.py +0 -25
  315. sage/middleware/components/sage_db/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  316. sage/middleware/components/sage_db/__pycache__/sage_db.cpython-311.opt-2.pyc +0 -0
  317. sage/middleware/components/sage_db/__pycache__/sage_db.cpython-311.pyc +0 -0
  318. sage/middleware/components/sage_db/python/__init__.py +0 -56
  319. sage/middleware/components/sage_db/python/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  320. sage/middleware/components/sage_db/python/__pycache__/__init__.cpython-311.pyc +0 -0
  321. sage/middleware/components/sage_db/python/__pycache__/sage_db.cpython-311.opt-2.pyc +0 -0
  322. sage/middleware/components/sage_db/python/__pycache__/sage_db.cpython-311.pyc +0 -0
  323. sage/middleware/components/sage_db/python/sage_db.py +0 -44
  324. sage/middleware/components/sage_db/sage_db.py +0 -187
  325. sage/middleware/components/sage_db/tests/__pycache__/test_python.cpython-311.opt-2.pyc +0 -0
  326. sage/middleware/components/sage_db/tests/__pycache__/test_python.cpython-311.pyc +0 -0
  327. sage/middleware/components/sage_db/tests/test_python.py +0 -144
  328. sage/middleware/examples/__pycache__/api_usage_tutorial.cpython-311.opt-2.pyc +0 -0
  329. sage/middleware/examples/__pycache__/api_usage_tutorial.cpython-311.pyc +0 -0
  330. sage/middleware/examples/__pycache__/microservices_demo.cpython-311.opt-2.pyc +0 -0
  331. sage/middleware/examples/__pycache__/microservices_demo.cpython-311.pyc +0 -0
  332. sage/middleware/examples/__pycache__/microservices_registration_demo.cpython-311.opt-2.pyc +0 -0
  333. sage/middleware/examples/__pycache__/microservices_registration_demo.cpython-311.pyc +0 -0
  334. sage/middleware/examples/api_usage_tutorial.py +0 -339
  335. sage/middleware/examples/dag_microservices_demo.py +0 -219
  336. sage/middleware/examples/microservices_demo.py +0 -0
  337. sage/middleware/examples/microservices_integration_demo.py +0 -370
  338. sage/middleware/examples/microservices_registration_demo.py +0 -140
  339. sage/middleware/services/__init__.py +0 -56
  340. sage/middleware/services/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  341. sage/middleware/services/__pycache__/__init__.cpython-311.pyc +0 -0
  342. sage/middleware/services/graph/__init__.py +0 -56
  343. sage/middleware/services/graph/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  344. sage/middleware/services/graph/__pycache__/__init__.cpython-311.pyc +0 -0
  345. sage/middleware/services/graph/__pycache__/graph_index.cpython-311.opt-2.pyc +0 -0
  346. sage/middleware/services/graph/__pycache__/graph_index.cpython-311.pyc +0 -0
  347. sage/middleware/services/graph/__pycache__/graph_service.cpython-311.opt-2.pyc +0 -0
  348. sage/middleware/services/graph/__pycache__/graph_service.cpython-311.pyc +0 -0
  349. sage/middleware/services/graph/examples/__pycache__/graph_demo.cpython-311.opt-2.pyc +0 -0
  350. sage/middleware/services/graph/examples/__pycache__/graph_demo.cpython-311.pyc +0 -0
  351. sage/middleware/services/graph/examples/graph_demo.py +0 -178
  352. sage/middleware/services/graph/graph_index.py +0 -194
  353. sage/middleware/services/graph/graph_service.py +0 -609
  354. sage/middleware/services/graph/search_engine/__init__.py +0 -56
  355. sage/middleware/services/graph/search_engine/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  356. sage/middleware/services/graph/search_engine/__pycache__/__init__.cpython-311.pyc +0 -0
  357. sage/middleware/services/graph/search_engine/__pycache__/base_graph_index.cpython-311.opt-2.pyc +0 -0
  358. sage/middleware/services/graph/search_engine/__pycache__/base_graph_index.cpython-311.pyc +0 -0
  359. sage/middleware/services/graph/search_engine/base_graph_index.py +0 -0
  360. sage/middleware/services/kv/__init__.py +0 -56
  361. sage/middleware/services/kv/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  362. sage/middleware/services/kv/__pycache__/__init__.cpython-311.pyc +0 -0
  363. sage/middleware/services/kv/__pycache__/kv_service.cpython-311.opt-2.pyc +0 -0
  364. sage/middleware/services/kv/__pycache__/kv_service.cpython-311.pyc +0 -0
  365. sage/middleware/services/kv/examples/__pycache__/kv_demo.cpython-311.opt-2.pyc +0 -0
  366. sage/middleware/services/kv/examples/__pycache__/kv_demo.cpython-311.pyc +0 -0
  367. sage/middleware/services/kv/examples/kv_demo.py +0 -213
  368. sage/middleware/services/kv/kv_service.py +0 -306
  369. sage/middleware/services/kv/search_engine/__init__.py +0 -56
  370. sage/middleware/services/kv/search_engine/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  371. sage/middleware/services/kv/search_engine/__pycache__/__init__.cpython-311.pyc +0 -0
  372. sage/middleware/services/kv/search_engine/__pycache__/base_kv_index.cpython-311.opt-2.pyc +0 -0
  373. sage/middleware/services/kv/search_engine/__pycache__/base_kv_index.cpython-311.pyc +0 -0
  374. sage/middleware/services/kv/search_engine/__pycache__/bm25s_index.cpython-311.opt-2.pyc +0 -0
  375. sage/middleware/services/kv/search_engine/__pycache__/bm25s_index.cpython-311.pyc +0 -0
  376. sage/middleware/services/kv/search_engine/base_kv_index.py +0 -75
  377. sage/middleware/services/kv/search_engine/bm25s_index.py +0 -238
  378. sage/middleware/services/memory/__init__.py +0 -56
  379. sage/middleware/services/memory/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  380. sage/middleware/services/memory/__pycache__/__init__.cpython-311.pyc +0 -0
  381. sage/middleware/services/memory/__pycache__/memory_service.cpython-311.opt-2.pyc +0 -0
  382. sage/middleware/services/memory/__pycache__/memory_service.cpython-311.pyc +0 -0
  383. sage/middleware/services/memory/examples/__pycache__/memory_demo.cpython-311.opt-2.pyc +0 -0
  384. sage/middleware/services/memory/examples/__pycache__/memory_demo.cpython-311.pyc +0 -0
  385. sage/middleware/services/memory/examples/dag_microservices_demo.py +0 -219
  386. sage/middleware/services/memory/examples/memory_demo.py +0 -490
  387. sage/middleware/services/memory/memory_collection/__pycache__/graph_collection.cpython-311.opt-2.pyc +0 -0
  388. sage/middleware/services/memory/memory_collection/__pycache__/graph_collection.cpython-311.pyc +0 -0
  389. sage/middleware/services/memory/memory_collection/graph_collection.py +0 -0
  390. sage/middleware/services/memory/memory_service.py +0 -477
  391. sage/middleware/services/memory/utils/__init__.py +0 -56
  392. sage/middleware/services/memory/utils/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  393. sage/middleware/services/memory/utils/__pycache__/__init__.cpython-311.pyc +0 -0
  394. sage/middleware/services/memory/utils/__pycache__/path_utils.cpython-311.opt-2.pyc +0 -0
  395. sage/middleware/services/memory/utils/__pycache__/path_utils.cpython-311.pyc +0 -0
  396. sage/middleware/services/memory/utils/path_utils.py +0 -0
  397. sage/middleware/services/vdb/__init__.py +0 -56
  398. sage/middleware/services/vdb/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  399. sage/middleware/services/vdb/__pycache__/__init__.cpython-311.pyc +0 -0
  400. sage/middleware/services/vdb/__pycache__/vdb_service.cpython-311.opt-2.pyc +0 -0
  401. sage/middleware/services/vdb/__pycache__/vdb_service.cpython-311.pyc +0 -0
  402. sage/middleware/services/vdb/examples/__pycache__/vdb_demo.cpython-311.opt-2.pyc +0 -0
  403. sage/middleware/services/vdb/examples/__pycache__/vdb_demo.cpython-311.pyc +0 -0
  404. sage/middleware/services/vdb/examples/vdb_demo.py +0 -447
  405. sage/middleware/services/vdb/search_engine/__init__.py +0 -56
  406. sage/middleware/services/vdb/search_engine/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  407. sage/middleware/services/vdb/search_engine/__pycache__/__init__.cpython-311.pyc +0 -0
  408. sage/middleware/services/vdb/search_engine/__pycache__/base_vdb_index.cpython-311.opt-2.pyc +0 -0
  409. sage/middleware/services/vdb/search_engine/__pycache__/base_vdb_index.cpython-311.pyc +0 -0
  410. sage/middleware/services/vdb/search_engine/__pycache__/faiss_index.cpython-311.opt-2.pyc +0 -0
  411. sage/middleware/services/vdb/search_engine/__pycache__/faiss_index.cpython-311.pyc +0 -0
  412. sage/middleware/services/vdb/search_engine/base_vdb_index.py +0 -58
  413. sage/middleware/services/vdb/search_engine/faiss_index.py +0 -461
  414. sage/middleware/services/vdb/vdb_service.py +0 -436
  415. sage/middleware/utils/__init__.py +0 -56
  416. sage/middleware/utils/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  417. sage/middleware/utils/__pycache__/__init__.cpython-311.pyc +0 -0
  418. sage/middleware/utils/embedding/__init__.py +0 -56
  419. sage/middleware/utils/embedding/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
  420. sage/middleware/utils/embedding/__pycache__/__init__.cpython-311.pyc +0 -0
  421. sage/middleware/utils/embedding/__pycache__/_cohere.cpython-311.opt-2.pyc +0 -0
  422. sage/middleware/utils/embedding/__pycache__/_cohere.cpython-311.pyc +0 -0
  423. sage/middleware/utils/embedding/__pycache__/bedrock.cpython-311.opt-2.pyc +0 -0
  424. sage/middleware/utils/embedding/__pycache__/bedrock.cpython-311.pyc +0 -0
  425. sage/middleware/utils/embedding/__pycache__/embedding_api.cpython-311.opt-2.pyc +0 -0
  426. sage/middleware/utils/embedding/__pycache__/embedding_api.cpython-311.pyc +0 -0
  427. sage/middleware/utils/embedding/__pycache__/embedding_model.cpython-311.opt-2.pyc +0 -0
  428. sage/middleware/utils/embedding/__pycache__/embedding_model.cpython-311.pyc +0 -0
  429. sage/middleware/utils/embedding/__pycache__/hf.cpython-311.opt-2.pyc +0 -0
  430. sage/middleware/utils/embedding/__pycache__/hf.cpython-311.pyc +0 -0
  431. sage/middleware/utils/embedding/__pycache__/instructor.cpython-311.opt-2.pyc +0 -0
  432. sage/middleware/utils/embedding/__pycache__/instructor.cpython-311.pyc +0 -0
  433. sage/middleware/utils/embedding/__pycache__/jina.cpython-311.opt-2.pyc +0 -0
  434. sage/middleware/utils/embedding/__pycache__/jina.cpython-311.pyc +0 -0
  435. sage/middleware/utils/embedding/__pycache__/lollms.cpython-311.opt-2.pyc +0 -0
  436. sage/middleware/utils/embedding/__pycache__/lollms.cpython-311.pyc +0 -0
  437. sage/middleware/utils/embedding/__pycache__/mockembedder.cpython-311.opt-2.pyc +0 -0
  438. sage/middleware/utils/embedding/__pycache__/mockembedder.cpython-311.pyc +0 -0
  439. sage/middleware/utils/embedding/__pycache__/nvidia_openai.cpython-311.opt-2.pyc +0 -0
  440. sage/middleware/utils/embedding/__pycache__/nvidia_openai.cpython-311.pyc +0 -0
  441. sage/middleware/utils/embedding/__pycache__/ollama.cpython-311.opt-2.pyc +0 -0
  442. sage/middleware/utils/embedding/__pycache__/ollama.cpython-311.pyc +0 -0
  443. sage/middleware/utils/embedding/__pycache__/openai.cpython-311.opt-2.pyc +0 -0
  444. sage/middleware/utils/embedding/__pycache__/openai.cpython-311.pyc +0 -0
  445. sage/middleware/utils/embedding/__pycache__/siliconcloud.cpython-311.opt-2.pyc +0 -0
  446. sage/middleware/utils/embedding/__pycache__/siliconcloud.cpython-311.pyc +0 -0
  447. sage/middleware/utils/embedding/__pycache__/zhipu.cpython-311.opt-2.pyc +0 -0
  448. sage/middleware/utils/embedding/__pycache__/zhipu.cpython-311.pyc +0 -0
  449. sage/middleware/utils/embedding/_cohere.py +0 -68
  450. sage/middleware/utils/embedding/bedrock.py +0 -174
  451. sage/middleware/utils/embedding/embedding_api.py +0 -12
  452. sage/middleware/utils/embedding/embedding_model.py +0 -150
  453. sage/middleware/utils/embedding/hf.py +0 -90
  454. sage/middleware/utils/embedding/instructor.py +0 -10
  455. sage/middleware/utils/embedding/jina.py +0 -115
  456. sage/middleware/utils/embedding/lollms.py +0 -100
  457. sage/middleware/utils/embedding/mockembedder.py +0 -46
  458. sage/middleware/utils/embedding/nvidia_openai.py +0 -97
  459. sage/middleware/utils/embedding/ollama.py +0 -97
  460. sage/middleware/utils/embedding/openai.py +0 -112
  461. sage/middleware/utils/embedding/siliconcloud.py +0 -133
  462. sage/middleware/utils/embedding/zhipu.py +0 -85
  463. {isage_middleware-0.1.3.1.dist-info → isage_middleware-0.2.0.0.dist-info}/WHEEL +0 -0
  464. {isage_middleware-0.1.3.1.dist-info → isage_middleware-0.2.0.0.dist-info}/top_level.txt +0 -0
@@ -1,100 +0,0 @@
1
- import sys
2
-
3
- if sys.version_info < (3, 9):
4
- from typing import AsyncIterator
5
- else:
6
- from collections.abc import AsyncIterator
7
- import pipmaster as pm # Pipmaster for dynamic library install
8
-
9
- # Dependencies should be installed via requirements.txt
10
- # aiohttp and tenacity are required for this module
11
-
12
- try:
13
- import aiohttp
14
- except ImportError:
15
- raise ImportError(
16
- "aiohttp package is required for Lollms embedding functionality. "
17
- "Please install it via: pip install aiohttp"
18
- )
19
-
20
- try:
21
- import tenacity
22
- except ImportError:
23
- raise ImportError(
24
- "tenacity package is required for Lollms embedding functionality. "
25
- "Please install it via: pip install tenacity"
26
- )
27
-
28
-
29
-
30
- async def lollms_embed(
31
- text: str,
32
- embed_model=None,
33
- base_url="http://localhost:9600",
34
- **kwargs,
35
- ) -> list:
36
- """
37
- Generate embedding for a single text using lollms server.
38
-
39
- Args:
40
- text: The string to embed
41
- embed_model: Model name (not used directly as lollms uses configured vectorizer)
42
- base_url: URL of the lollms server
43
- **kwargs: Additional arguments passed to the request
44
-
45
- Returns:
46
- list[float]: The embedding vector
47
- """
48
- api_key = kwargs.pop("api_key", None)
49
- headers = (
50
- {"Content-Type": "application/json", "Authorization": api_key}
51
- if api_key
52
- else {"Content-Type": "application/json"}
53
- )
54
-
55
- async with aiohttp.ClientSession(headers=headers) as session:
56
- request_data = {"text": text}
57
-
58
- async with session.post(
59
- f"{base_url}/lollms_embed",
60
- json=request_data,
61
- ) as response:
62
- result = await response.json()
63
- return result["vector"]
64
-
65
- import requests
66
-
67
- def lollms_embed_sync(
68
- text: str,
69
- embed_model=None,
70
- base_url="http://localhost:9600",
71
- **kwargs,
72
- ) -> list[float]:
73
- """
74
- 同步版本:使用 lollms 本地服务生成 embedding。
75
-
76
- Args:
77
- text: 输入文本
78
- embed_model: 模型名(未直接使用)
79
- base_url: lollms 服务地址
80
- **kwargs: 可选参数,例如 api_key
81
-
82
- Returns:
83
- list[float]: 生成的向量
84
- """
85
- api_key = kwargs.pop("api_key", None)
86
- headers = {
87
- "Content-Type": "application/json",
88
- }
89
- if api_key:
90
- headers["Authorization"] = api_key
91
-
92
- request_data = {"text": text}
93
-
94
- try:
95
- response = requests.post(f"{base_url}/lollms_embed", json=request_data, headers=headers)
96
- response.raise_for_status()
97
- result = response.json()
98
- return result["vector"]
99
- except Exception as e:
100
- raise RuntimeError(f"lollms embedding request failed: {str(e)}")
@@ -1,46 +0,0 @@
1
- import torch
2
- import hashlib
3
- from typing import Optional
4
-
5
- class MockTextEmbedder:
6
- def __init__(self, model_name: str = 'mock-model', fixed_dim: int = 128):
7
- """Mock 模型,输出固定维度的随机张量(但相同文本输出一致)"""
8
- self.fixed_dim = fixed_dim
9
- # 用模型名作为随机种子的一部分,确保不同实例行为一致
10
- self.seed = int(hashlib.sha256(model_name.encode()).hexdigest()[:8], 16)
11
- # 添加 method_name 属性以兼容 MemoryManager
12
- self.method_name = "mockembedder"
13
-
14
- def encode(self, text: str, max_length: int = 512, stride: Optional[int] = None) -> torch.Tensor:
15
- """生成固定维度的伪嵌入(相同文本输出相同)"""
16
- if not text.strip():
17
- return torch.zeros(self.fixed_dim)
18
-
19
- # 根据文本内容生成确定性随机数
20
- text_seed = self.seed + int(hashlib.sha256(text.encode()).hexdigest()[:8], 16)
21
- torch.manual_seed(text_seed)
22
-
23
- # 生成随机向量(与原有代码维度逻辑一致)
24
- if stride is None or len(text.split()) <= max_length:
25
- return self._embed_single()
26
- else:
27
- return self._embed_with_sliding_window()
28
-
29
- def _embed_single(self) -> torch.Tensor:
30
- """模拟单文本嵌入"""
31
- embedding = torch.randn(384) # 模拟原始模型的中间维度
32
- return self._adjust_dimension(embedding)
33
-
34
- def _embed_with_sliding_window(self) -> torch.Tensor:
35
- """模拟长文本滑动窗口嵌入"""
36
- embeddings = torch.stack([torch.randn(384) for _ in range(3)]) # 模拟3个窗口
37
- return self._adjust_dimension(embeddings.mean(dim=0))
38
-
39
- def _adjust_dimension(self, embedding: torch.Tensor) -> torch.Tensor:
40
- """保持与原代码一致的维度调整逻辑"""
41
- if embedding.size(0) > self.fixed_dim:
42
- return embedding[:self.fixed_dim]
43
- elif embedding.size(0) < self.fixed_dim:
44
- padding = torch.zeros(self.fixed_dim - embedding.size(0))
45
- return torch.cat((embedding, padding))
46
- return embedding
@@ -1,97 +0,0 @@
1
- import asyncio
2
- import sys
3
- import os
4
-
5
- if sys.version_info < (3, 9):
6
- pass
7
- else:
8
- pass
9
-
10
- import pipmaster as pm # Pipmaster for dynamic library install
11
-
12
- # Dependencies should be installed via requirements.txt
13
- # openai is required for this module
14
-
15
- try:
16
- from openai import AsyncOpenAI
17
- except ImportError:
18
- raise ImportError(
19
- "openai package is required for NVIDIA OpenAI embedding functionality. "
20
- "Please install it via: pip install openai"
21
- )
22
-
23
- async def nvidia_openai_embed(
24
- text: str,
25
- model: str = "nvidia/llama-3.2-nv-embedqa-1b-v1",
26
- base_url: str = "https://integrate.api.nvidia.com/v1",
27
- api_key: str = None,
28
- input_type: str = "passage", # query for retrieval, passage for embedding
29
- trunc: str = "NONE", # NONE or START or END
30
- encode: str = "float", # float or base64
31
- ) -> list:
32
- """
33
- Generate embedding for a single text using NVIDIA NIM-compatible OpenAI API.
34
-
35
- Returns:
36
- list[float]: The embedding vector.
37
- """
38
- if api_key:
39
- os.environ["OPENAI_API_KEY"] = api_key
40
-
41
- openai_async_client = (
42
- AsyncOpenAI() if base_url is None else AsyncOpenAI(base_url=base_url)
43
- )
44
-
45
- response = await openai_async_client.embeddings.create(
46
- model=model,
47
- input=text,
48
- encoding_format=encode,
49
- extra_body={"input_type": input_type, "truncate": trunc},
50
- )
51
-
52
- return response.data[0].embedding
53
-
54
-
55
- import os
56
- from openai import OpenAI # 同步 client
57
-
58
- def nvidia_openai_embed_sync(
59
- text: str,
60
- model: str = "nvidia/llama-3.2-nv-embedqa-1b-v1",
61
- base_url: str = "https://integrate.api.nvidia.com/v1",
62
- api_key: str = None,
63
- input_type: str = "passage", # query for retrieval, passage for embedding
64
- trunc: str = "NONE", # NONE or START or END
65
- encode: str = "float", # float or base64
66
- ) -> list[float]:
67
- """
68
- 同步版本:使用 NVIDIA NIM 接口生成文本 embedding。
69
-
70
- Args:
71
- text: 输入文本
72
- model: 使用的模型 ID
73
- base_url: 接口地址(默认为 NVIDIA 接口)
74
- api_key: API 密钥(使用 OPENAI_API_KEY 环境变量)
75
- input_type: 输入类型(passage / query)
76
- trunc: 截断策略
77
- encode: 返回格式(float / base64)
78
-
79
- Returns:
80
- list[float]: 嵌入向量
81
- """
82
- if api_key:
83
- os.environ["OPENAI_API_KEY"] = api_key
84
-
85
- client = OpenAI(base_url=base_url)
86
-
87
- response = client.embeddings.create(
88
- model=model,
89
- input=text,
90
- encoding_format=encode,
91
- extra_body={
92
- "input_type": input_type,
93
- "truncate": trunc
94
- },
95
- )
96
-
97
- return response.data[0].embedding
@@ -1,97 +0,0 @@
1
- import sys
2
-
3
- if sys.version_info < (3, 9):
4
- from typing import AsyncIterator
5
- else:
6
- from collections.abc import AsyncIterator
7
-
8
- import pipmaster as pm # Pipmaster for dynamic library install
9
-
10
- # Dependencies should be installed via requirements.txt
11
- # ollama and tenacity are required for this module to work
12
-
13
- try:
14
- import ollama
15
- except ImportError:
16
- raise ImportError(
17
- "ollama package is required for Ollama embedding functionality. "
18
- "Please install it via: pip install ollama"
19
- )
20
-
21
- try:
22
- import tenacity
23
- except ImportError:
24
- raise ImportError(
25
- "tenacity package is required for Ollama embedding functionality. "
26
- "Please install it via: pip install tenacity"
27
- )
28
-
29
-
30
-
31
- import numpy as np
32
- from typing import Union
33
-
34
-
35
-
36
-
37
- async def ollama_embed(
38
- text: str,
39
- embed_model,
40
- **kwargs
41
- ) -> list:
42
- """
43
- Generate embedding for a single text using Ollama.
44
-
45
- Args:
46
- text: A single input string
47
- embed_model: The name of the Ollama embedding model
48
- **kwargs: Optional arguments (e.g. base_url, api_key)
49
-
50
- Returns:
51
- list[float]: The embedding vector
52
- """
53
- import ollama
54
-
55
- api_key = kwargs.pop("api_key", None)
56
- headers = {
57
- "Content-Type": "application/json",
58
- "User-Agent": "SAGE/0.0",
59
- }
60
- if api_key:
61
- headers["Authorization"] = api_key
62
- kwargs["headers"] = headers
63
-
64
- ollama_client = ollama.Client(**kwargs)
65
- data = ollama_client.embed(model=embed_model, input=text)
66
- return data["embedding"]
67
-
68
- def ollama_embed_sync(
69
- text: str,
70
- embed_model,
71
- **kwargs
72
- ) -> list[float]:
73
- """
74
- 同步版本:使用 Ollama 客户端生成 embedding 向量。
75
-
76
- Args:
77
- text: 输入文本
78
- embed_model: 使用的模型名
79
- **kwargs: 额外参数(可包含 base_url、api_key)
80
-
81
- Returns:
82
- list[float]: embedding 向量
83
- """
84
- import ollama
85
-
86
- api_key = kwargs.pop("api_key", None)
87
- headers = {
88
- "Content-Type": "application/json",
89
- "User-Agent": "SAGE/0.0",
90
- }
91
- if api_key:
92
- headers["Authorization"] = api_key
93
- kwargs["headers"] = headers
94
-
95
- ollama_client = ollama.Client(**kwargs)
96
- data = ollama_client.embed(model=embed_model, input=text)
97
- return data["embedding"]
@@ -1,112 +0,0 @@
1
- import asyncio
2
- import sys
3
- import os
4
- import logging
5
-
6
-
7
-
8
- if sys.version_info < (3, 9):
9
- from typing import AsyncIterator
10
- else:
11
- from collections.abc import AsyncIterator
12
- import pipmaster as pm # Pipmaster for dynamic library install
13
-
14
- # Dependencies should be installed via requirements.txt
15
- # openai is required for this module
16
-
17
- try:
18
- from openai import AsyncOpenAI # 确保导入了这个
19
- except ImportError:
20
- raise ImportError(
21
- "openai package is required for OpenAI embedding functionality. "
22
- "Please install it via: pip install openai"
23
- )
24
-
25
- async def openai_embed(
26
- text: str,
27
- model: str = "text-embedding-3-small",
28
- base_url: str = None,
29
- api_key: str = None,
30
- ) -> list:
31
- """
32
- Generate embedding for a single text using OpenAI Embedding API.
33
-
34
- Args:
35
- text: Input string
36
- model: OpenAI embedding model name
37
- base_url: Optional custom endpoint
38
- api_key: OpenAI API key
39
-
40
- Returns:
41
- list[float]: The embedding vector
42
- """
43
- if not api_key:
44
- api_key = os.environ["OPENAI_API_KEY"]
45
-
46
- default_headers = {
47
- "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_8) SAGE/0.0",
48
- "Content-Type": "application/json",
49
- }
50
-
51
- openai_async_client = (
52
- AsyncOpenAI(default_headers=default_headers, api_key=api_key)
53
- if base_url is None
54
- else AsyncOpenAI(
55
- base_url=base_url, default_headers=default_headers, api_key=api_key
56
- )
57
- )
58
-
59
- response = await openai_async_client.embeddings.create(
60
- model=model,
61
- input=text,
62
- encoding_format="float"
63
- )
64
-
65
- return response.data[0].embedding
66
-
67
-
68
- import os
69
- from openai import OpenAI # 同步版 client
70
- from openai.types import CreateEmbeddingResponse
71
-
72
- def openai_embed_sync(
73
- text: str,
74
- model: str = "text-embedding-3-small",
75
- base_url: str = None,
76
- api_key: str = None,
77
- ) -> list[float]:
78
- """
79
- 同步生成 OpenAI embedding。
80
-
81
- Args:
82
- text: 输入文本
83
- model: OpenAI embedding 模型名
84
- base_url: 可选自定义 API endpoint
85
- api_key: OpenAI API 密钥
86
-
87
- Returns:
88
- list[float]: embedding 向量
89
- """
90
- if not api_key:
91
- api_key = os.environ["OPENAI_API_KEY"]
92
-
93
- default_headers = {
94
- "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_8) SAGE/0.0",
95
- "Content-Type": "application/json",
96
- }
97
-
98
- openai_sync_client = (
99
- OpenAI(default_headers=default_headers, api_key=api_key)
100
- if base_url is None
101
- else OpenAI(
102
- base_url=base_url, default_headers=default_headers, api_key=api_key
103
- )
104
- )
105
-
106
- response: CreateEmbeddingResponse = openai_sync_client.embeddings.create(
107
- model=model,
108
- input=text,
109
- encoding_format="float"
110
- )
111
-
112
- return response.data[0].embedding
@@ -1,133 +0,0 @@
1
- import asyncio
2
- import os
3
- import sys
4
-
5
- if sys.version_info < (3, 9):
6
- pass
7
- else:
8
- pass
9
- import pipmaster as pm # Pipmaster for dynamic library install
10
-
11
-
12
- from openai import (
13
- APIConnectionError,
14
- RateLimitError,
15
- APITimeoutError,
16
- )
17
- from tenacity import (
18
- retry,
19
- stop_after_attempt,
20
- wait_exponential,
21
- retry_if_exception_type,
22
- )
23
-
24
- import numpy as np
25
- import aiohttp
26
- import base64
27
- import struct
28
-
29
-
30
-
31
-
32
- async def siliconcloud_embedding(
33
- text: str,
34
- model: str = "netease-youdao/bce-embedding-base_v1",
35
- base_url: str = "https://api.siliconflow.cn/v1/embeddings",
36
- max_token_size: int = 512,
37
- api_key: str = None,
38
- ) -> list:
39
- """
40
- Generate embedding for a single text using SiliconCloud (NetEase Youdao).
41
-
42
- Args:
43
- text: Input string
44
- model: Embedding model name
45
- base_url: API endpoint
46
- max_token_size: Max text length in tokens (cut if needed)
47
- api_key: Your SiliconCloud API key
48
-
49
- Returns:
50
- list[float]: The embedding vector
51
- """
52
- if api_key and not api_key.startswith("Bearer "):
53
- api_key = "Bearer " + api_key
54
-
55
- headers = {
56
- "Authorization": api_key,
57
- "Content-Type": "application/json",
58
- }
59
-
60
- text = text[:max_token_size]
61
- payload = {
62
- "model": model,
63
- "input": [text],
64
- "encoding_format": "base64",
65
- }
66
-
67
- async with aiohttp.ClientSession() as session:
68
- async with session.post(base_url, headers=headers, json=payload) as response:
69
- content = await response.json()
70
- if "code" in content:
71
- raise ValueError(content)
72
- base64_string = content["data"][0]["embedding"]
73
-
74
- decode_bytes = base64.b64decode(base64_string)
75
- n = len(decode_bytes) // 4
76
- float_array = struct.unpack("<" + "f" * n, decode_bytes)
77
- return list(float_array)
78
-
79
- import requests
80
- import base64
81
- import struct
82
-
83
- def siliconcloud_embedding_sync(
84
- text: str,
85
- model: str = "netease-youdao/bce-embedding-base_v1",
86
- base_url: str = "https://api.siliconflow.cn/v1/embeddings",
87
- max_token_size: int = 512,
88
- api_key: str = None,
89
- ) -> list[float]:
90
- """
91
- 同步版本:使用 SiliconCloud (NetEase Youdao) 接口获取文本 embedding。
92
-
93
- Args:
94
- text: 输入文本
95
- model: 模型名称
96
- base_url: 接口地址
97
- max_token_size: 截断长度(按字符)
98
- api_key: API 密钥(可选,带或不带 "Bearer ")
99
-
100
- Returns:
101
- list[float]: embedding 向量
102
- """
103
- if api_key and not api_key.startswith("Bearer "):
104
- api_key = "Bearer " + api_key
105
-
106
- headers = {
107
- "Authorization": api_key,
108
- "Content-Type": "application/json",
109
- }
110
-
111
- text = text[:max_token_size]
112
- payload = {
113
- "model": model,
114
- "input": [text],
115
- "encoding_format": "base64",
116
- }
117
-
118
- try:
119
- response = requests.post(base_url, headers=headers, json=payload)
120
- response.raise_for_status()
121
- content = response.json()
122
-
123
- if "code" in content:
124
- raise ValueError(f"SiliconCloud API error: {content}")
125
-
126
- base64_string = content["data"][0]["embedding"]
127
- decode_bytes = base64.b64decode(base64_string)
128
- n = len(decode_bytes) // 4
129
- float_array = struct.unpack("<" + "f" * n, decode_bytes)
130
- return list(float_array)
131
-
132
- except Exception as e:
133
- raise RuntimeError(f"SiliconCloud embedding failed: {str(e)}")
@@ -1,85 +0,0 @@
1
- import sys
2
- import re
3
- import json
4
-
5
-
6
- if sys.version_info < (3, 9):
7
- pass
8
- else:
9
- pass
10
- import pipmaster as pm # Pipmaster for dynamic library install
11
-
12
- # Dependencies should be installed via requirements.txt
13
- # zhipuai is required for this module
14
-
15
- try:
16
- import zhipuai
17
- except ImportError:
18
- raise ImportError(
19
- "zhipuai package is required for ZhipuAI embedding functionality. "
20
- "Please install it via: pip install zhipuai"
21
- )
22
-
23
-
24
- async def zhipu_embedding(
25
- text: str,
26
- model: str = "embedding-3",
27
- api_key: str = None,
28
- **kwargs
29
- ) -> list:
30
- """
31
- Generate embedding for a single text using ZhipuAI.
32
-
33
- Args:
34
- text: Input string
35
- model: Embedding model name
36
- api_key: ZhipuAI API key
37
- **kwargs: Additional arguments to ZhipuAI client
38
-
39
- Returns:
40
- list[float]: Embedding vector
41
- """
42
- try:
43
- from zhipuai import ZhipuAI
44
- except ImportError:
45
- raise ImportError("Please install zhipuai before using this backend.")
46
-
47
- client = ZhipuAI(api_key=api_key) if api_key else ZhipuAI()
48
-
49
- try:
50
- response = client.embeddings.create(model=model, input=[text], **kwargs)
51
- return response.data[0].embedding
52
- except Exception as e:
53
- raise Exception(f"Error calling ChatGLM Embedding API: {str(e)}")
54
-
55
- def zhipu_embedding_sync(
56
- text: str,
57
- model: str = "embedding-3",
58
- api_key: str = None,
59
- **kwargs
60
- ) -> list[float]:
61
- """
62
- 同步调用 ZhipuAI 生成 embedding 向量。
63
-
64
- Args:
65
- text: 输入字符串
66
- model: 使用的 ZhipuAI 模型名称
67
- api_key: API 密钥(可选)
68
- **kwargs: 额外参数
69
-
70
- Returns:
71
- list[float]: 生成的 embedding 向量
72
- """
73
- try:
74
- from zhipuai import ZhipuAI
75
- except ImportError:
76
- raise ImportError("Please install zhipuai before using this backend.")
77
-
78
- client = ZhipuAI(api_key=api_key) if api_key else ZhipuAI()
79
-
80
- try:
81
- response = client.embeddings.create(model=model, input=[text], **kwargs)
82
- return response.data[0].embedding
83
- except Exception as e:
84
- raise Exception(f"Error calling ChatGLM Embedding API: {str(e)}")
85
-