isage-middleware 0.1.4__py3-none-any.whl → 0.1.5.1__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.
- isage_middleware-0.1.5.1.dist-info/METADATA +241 -0
- isage_middleware-0.1.5.1.dist-info/RECORD +530 -0
- sage/__init__.py +3 -36
- sage/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/__init__.py +8 -33
- sage/middleware/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/__pycache__/_version.cpython-311.opt-2.pyc +0 -0
- sage/middleware/__pycache__/_version.cpython-311.pyc +0 -0
- sage/middleware/_version.py +6 -0
- sage/middleware/components/__pycache__/extensions_compat.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/__pycache__/extensions_compat.cpython-311.pyc +0 -0
- sage/middleware/components/cmake/pybind11_dependency.cmake +34 -0
- sage/middleware/components/cmake/sage_shared_dependencies.cmake +64 -0
- sage/middleware/components/extensions_compat.py +102 -0
- sage/middleware/components/neuromem/__init__.py +12 -32
- sage/middleware/components/neuromem/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/__pycache__/memory_manager.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/__pycache__/memory_manager.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/memory_collection/__init__.py +8 -33
- sage/middleware/components/neuromem/memory_collection/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/memory_collection/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/memory_collection/__pycache__/base_collection.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/memory_collection/__pycache__/base_collection.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/memory_collection/__pycache__/graph_collection.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/memory_collection/__pycache__/graph_collection.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/memory_collection/__pycache__/kv_collection.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/memory_collection/__pycache__/kv_collection.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/memory_collection/__pycache__/vdb_collection.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/memory_collection/__pycache__/vdb_collection.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/memory_collection/base_collection.py +57 -26
- sage/middleware/components/neuromem/memory_collection/graph_collection.py +5 -4
- sage/middleware/components/neuromem/memory_collection/kv_collection.py +187 -159
- sage/middleware/components/neuromem/memory_collection/vdb_collection.py +699 -700
- sage/middleware/components/neuromem/memory_manager.py +144 -121
- sage/middleware/components/neuromem/micro_service/__init__.py +8 -33
- sage/middleware/components/neuromem/micro_service/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/micro_service/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/micro_service/__pycache__/neuromem_vdb.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/micro_service/__pycache__/neuromem_vdb.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/micro_service/__pycache__/neuromem_vdb_service.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/micro_service/__pycache__/neuromem_vdb_service.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/micro_service/neuromem_vdb.py +100 -53
- sage/middleware/components/neuromem/micro_service/neuromem_vdb_service.py +52 -32
- sage/middleware/components/neuromem/search_engine/__init__.py +8 -33
- sage/middleware/components/neuromem/search_engine/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/search_engine/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/search_engine/graph_index/__init__.py +8 -33
- sage/middleware/components/neuromem/search_engine/graph_index/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/search_engine/graph_index/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/search_engine/graph_index/__pycache__/base_graph_index.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/search_engine/graph_index/__pycache__/base_graph_index.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/search_engine/graph_index/base_graph_index.py +1 -0
- sage/middleware/components/neuromem/search_engine/hybrid_index/__init__.py +12 -0
- sage/middleware/components/neuromem/search_engine/hybrid_index/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/search_engine/hybrid_index/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/search_engine/kv_index/__init__.py +133 -35
- sage/middleware/components/neuromem/search_engine/kv_index/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/search_engine/kv_index/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/search_engine/kv_index/__pycache__/base_kv_index.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/search_engine/kv_index/__pycache__/base_kv_index.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/search_engine/kv_index/__pycache__/bm25s_index.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/search_engine/kv_index/__pycache__/bm25s_index.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/search_engine/kv_index/base_kv_index.py +3 -2
- sage/middleware/components/neuromem/search_engine/kv_index/bm25s_index.py +34 -35
- sage/middleware/components/neuromem/search_engine/vdb_index/__init__.py +82 -37
- sage/middleware/components/neuromem/search_engine/vdb_index/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/search_engine/vdb_index/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/search_engine/vdb_index/__pycache__/base_vdb_index.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/search_engine/vdb_index/__pycache__/base_vdb_index.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/search_engine/vdb_index/__pycache__/faiss_index.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/search_engine/vdb_index/__pycache__/faiss_index.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/search_engine/vdb_index/base_vdb_index.py +8 -6
- sage/middleware/components/neuromem/search_engine/vdb_index/faiss_index.py +301 -151
- sage/middleware/components/neuromem/storage_engine/__init__.py +8 -33
- sage/middleware/components/neuromem/storage_engine/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/storage_engine/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/storage_engine/__pycache__/metadata_storage.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/storage_engine/__pycache__/metadata_storage.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/storage_engine/__pycache__/text_storage.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/storage_engine/__pycache__/text_storage.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/storage_engine/__pycache__/vector_storage.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/storage_engine/__pycache__/vector_storage.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/storage_engine/kv_backend/__init__.py +8 -33
- sage/middleware/components/neuromem/storage_engine/kv_backend/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/storage_engine/kv_backend/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/storage_engine/kv_backend/__pycache__/base_kv_backend.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/storage_engine/kv_backend/__pycache__/base_kv_backend.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/storage_engine/kv_backend/__pycache__/dict_kv_backend.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/storage_engine/kv_backend/__pycache__/dict_kv_backend.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/storage_engine/kv_backend/base_kv_backend.py +5 -3
- sage/middleware/components/neuromem/storage_engine/kv_backend/dict_kv_backend.py +9 -5
- sage/middleware/components/neuromem/storage_engine/metadata_storage.py +22 -21
- sage/middleware/components/neuromem/storage_engine/text_storage.py +12 -7
- sage/middleware/components/neuromem/storage_engine/vector_storage.py +14 -9
- sage/middleware/components/neuromem/utils/__init__.py +8 -33
- sage/middleware/components/neuromem/utils/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/utils/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/utils/__pycache__/path_utils.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/utils/__pycache__/path_utils.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/utils/path_utils.py +2 -1
- sage/middleware/components/sage_db/__init__.py +8 -33
- sage/middleware/components/sage_db/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_db/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/sage_db/cmake/FindBLASLAPACK.cmake +125 -0
- sage/middleware/components/sage_db/cmake/gperftools.cmake +24 -0
- sage/middleware/components/sage_db/cmake/pybind11_dependency.cmake +27 -0
- sage/middleware/components/sage_db/examples/__pycache__/faiss_plugin_demo.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_db/examples/__pycache__/faiss_plugin_demo.cpython-311.pyc +0 -0
- sage/middleware/components/sage_db/examples/__pycache__/quickstart.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_db/examples/__pycache__/quickstart.cpython-311.pyc +0 -0
- sage/middleware/components/sage_db/examples/faiss_plugin_demo.py +134 -0
- sage/middleware/components/sage_db/examples/quickstart.py +160 -0
- sage/middleware/components/sage_db/python/__init__.py +8 -33
- sage/middleware/components/sage_db/python/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_db/python/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/sage_db/python/__pycache__/multimodal_sage_db.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_db/python/__pycache__/multimodal_sage_db.cpython-311.pyc +0 -0
- sage/middleware/components/sage_db/python/__pycache__/sage_db.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_db/python/__pycache__/sage_db.cpython-311.pyc +0 -0
- sage/middleware/components/sage_db/python/_sage_db.cpython-311-x86_64-linux-gnu.so +0 -0
- sage/middleware/components/sage_db/python/micro_service/__init__.py +8 -0
- sage/middleware/components/sage_db/python/micro_service/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_db/python/micro_service/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/sage_db/python/micro_service/__pycache__/sage_db_service.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_db/python/micro_service/__pycache__/sage_db_service.cpython-311.pyc +0 -0
- sage/middleware/components/sage_db/python/micro_service/sage_db_service.py +84 -0
- sage/middleware/components/sage_db/python/multimodal_sage_db.py +398 -0
- sage/middleware/components/sage_db/python/sage_db.py +277 -37
- sage/middleware/components/sage_flow/__init__.py +6 -0
- sage/middleware/components/sage_flow/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/argparse-src/__pycache__/conanfile.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/argparse-src/__pycache__/conanfile.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/argparse-src/conanfile.py +10 -0
- sage/middleware/components/sage_flow/build/_deps/fmt-src/support/__pycache__/docopt.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/fmt-src/support/__pycache__/docopt.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/fmt-src/support/__pycache__/manage.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/fmt-src/support/__pycache__/manage.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/fmt-src/support/__pycache__/printable.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/fmt-src/support/__pycache__/printable.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/fmt-src/support/docopt.py +581 -0
- sage/middleware/components/sage_flow/build/_deps/fmt-src/support/manage.py +218 -0
- sage/middleware/components/sage_flow/build/_deps/fmt-src/support/printable.py +201 -0
- sage/middleware/components/sage_flow/build/_deps/fmt-src/support/python/mkdocstrings_handlers/cxx/__init__.py +317 -0
- sage/middleware/components/sage_flow/build/_deps/fmt-src/support/python/mkdocstrings_handlers/cxx/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/fmt-src/support/python/mkdocstrings_handlers/cxx/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googlemock/test/__pycache__/gmock_leak_test.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googlemock/test/__pycache__/gmock_leak_test.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googlemock/test/__pycache__/gmock_output_test.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googlemock/test/__pycache__/gmock_output_test.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googlemock/test/__pycache__/gmock_test_utils.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googlemock/test/__pycache__/gmock_test_utils.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googlemock/test/gmock_leak_test.py +113 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googlemock/test/gmock_output_test.py +190 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googlemock/test/gmock_test_utils.py +91 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-break-on-failure-unittest.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-break-on-failure-unittest.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-catch-exceptions-test.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-catch-exceptions-test.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-color-test.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-color-test.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-env-var-test.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-env-var-test.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-failfast-unittest.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-failfast-unittest.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-filter-unittest.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-filter-unittest.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-global-environment-unittest.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-global-environment-unittest.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-json-outfiles-test.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-json-outfiles-test.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-json-output-unittest.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-json-output-unittest.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-list-tests-unittest.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-list-tests-unittest.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-output-test.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-output-test.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-param-test-invalid-name1-test.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-param-test-invalid-name1-test.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-param-test-invalid-name2-test.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-param-test-invalid-name2-test.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-setuptestsuite-test.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-setuptestsuite-test.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-shuffle-test.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-shuffle-test.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-throw-on-failure-test.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-throw-on-failure-test.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-uninitialized-test.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/googletest-uninitialized-test.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/gtest_help_test.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/gtest_help_test.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/gtest_json_test_utils.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/gtest_json_test_utils.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/gtest_list_output_unittest.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/gtest_list_output_unittest.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/gtest_skip_check_output_test.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/gtest_skip_check_output_test.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/gtest_skip_environment_check_output_test.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/gtest_skip_environment_check_output_test.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/gtest_test_utils.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/gtest_test_utils.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/gtest_testbridge_test.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/gtest_testbridge_test.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/gtest_xml_outfiles_test.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/gtest_xml_outfiles_test.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/gtest_xml_output_unittest.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/gtest_xml_output_unittest.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/gtest_xml_test_utils.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/__pycache__/gtest_xml_test_utils.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/googletest-break-on-failure-unittest.py +195 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/googletest-catch-exceptions-test.py +315 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/googletest-color-test.py +130 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/googletest-env-var-test.py +120 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/googletest-failfast-unittest.py +461 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/googletest-filter-unittest.py +746 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/googletest-global-environment-unittest.py +141 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/googletest-json-outfiles-test.py +180 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/googletest-json-output-unittest.py +835 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/googletest-list-tests-unittest.py +225 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/googletest-output-test.py +385 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/googletest-param-test-invalid-name1-test.py +63 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/googletest-param-test-invalid-name2-test.py +63 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/googletest-setuptestsuite-test.py +58 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/googletest-shuffle-test.py +378 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/googletest-throw-on-failure-test.py +166 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/googletest-uninitialized-test.py +70 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/gtest_help_test.py +183 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/gtest_json_test_utils.py +67 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/gtest_list_output_unittest.py +289 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/gtest_skip_check_output_test.py +60 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/gtest_skip_environment_check_output_test.py +55 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/gtest_test_utils.py +262 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/gtest_testbridge_test.py +63 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/gtest_xml_outfiles_test.py +147 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/gtest_xml_output_unittest.py +472 -0
- sage/middleware/components/sage_flow/build/_deps/googletest-src/googletest/test/gtest_xml_test_utils.py +242 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/__pycache__/noxfile.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/__pycache__/noxfile.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/__pycache__/setup.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/__pycache__/setup.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/docs/__pycache__/benchmark.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/docs/__pycache__/benchmark.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/docs/__pycache__/conf.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/docs/__pycache__/conf.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/docs/benchmark.py +89 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/docs/conf.py +369 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/noxfile.py +107 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/pybind11/__init__.py +19 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/pybind11/__main__.py +63 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/pybind11/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/pybind11/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/pybind11/__pycache__/__main__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/pybind11/__pycache__/__main__.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/pybind11/__pycache__/_version.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/pybind11/__pycache__/_version.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/pybind11/__pycache__/commands.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/pybind11/__pycache__/commands.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/pybind11/__pycache__/setup_helpers.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/pybind11/__pycache__/setup_helpers.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/pybind11/_version.py +12 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/pybind11/commands.py +39 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/pybind11/setup_helpers.py +500 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/setup.py +149 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/conftest.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/conftest.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/env.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/env.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_async.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_async.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_buffers.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_buffers.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_builtin_casters.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_builtin_casters.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_call_policies.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_call_policies.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_callbacks.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_callbacks.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_chrono.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_chrono.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_class.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_class.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_const_name.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_const_name.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_constants_and_functions.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_constants_and_functions.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_copy_move.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_copy_move.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_custom_type_casters.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_custom_type_casters.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_custom_type_setup.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_custom_type_setup.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_docstring_options.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_docstring_options.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_eigen_matrix.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_eigen_matrix.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_eigen_tensor.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_eigen_tensor.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_enum.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_enum.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_eval.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_eval.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_eval_call.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_eval_call.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_exceptions.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_exceptions.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_factory_constructors.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_factory_constructors.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_gil_scoped.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_gil_scoped.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_iostream.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_iostream.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_kwargs_and_defaults.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_kwargs_and_defaults.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_local_bindings.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_local_bindings.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_methods_and_attributes.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_methods_and_attributes.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_modules.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_modules.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_multiple_inheritance.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_multiple_inheritance.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_numpy_array.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_numpy_array.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_numpy_dtypes.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_numpy_dtypes.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_numpy_vectorize.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_numpy_vectorize.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_opaque_types.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_opaque_types.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_operator_overloading.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_operator_overloading.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_pickling.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_pickling.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_python_multiple_inheritance.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_python_multiple_inheritance.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_pytypes.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_pytypes.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_sequences_and_iterators.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_sequences_and_iterators.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_smart_ptr.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_smart_ptr.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_stl.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_stl.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_stl_binders.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_stl_binders.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_tagbased_polymorphic.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_tagbased_polymorphic.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_thread.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_thread.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_type_caster_pyobject_ptr.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_type_caster_pyobject_ptr.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_union.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_union.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_unnamed_namespace_a.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_unnamed_namespace_a.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_unnamed_namespace_b.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_unnamed_namespace_b.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_vector_unique_ptr_member.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_vector_unique_ptr_member.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_virtual_functions.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/__pycache__/test_virtual_functions.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/conftest.py +224 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/env.py +31 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/extra_python_package/__pycache__/test_files.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/extra_python_package/__pycache__/test_files.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/extra_python_package/test_files.py +296 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/extra_setuptools/__pycache__/test_setuphelper.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/extra_setuptools/__pycache__/test_setuphelper.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/extra_setuptools/test_setuphelper.py +153 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_async.py +26 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_buffers.py +230 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_builtin_casters.py +530 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_call_policies.py +249 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_callbacks.py +227 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_chrono.py +207 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_class.py +503 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_cmake_build/__pycache__/test.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_cmake_build/__pycache__/test.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_cmake_build/test.py +10 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_const_name.py +31 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_constants_and_functions.py +58 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_copy_move.py +140 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_custom_type_casters.py +124 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_custom_type_setup.py +50 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_docstring_options.py +66 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_eigen_matrix.py +816 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_eigen_tensor.py +290 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_embed/__pycache__/test_interpreter.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_embed/__pycache__/test_interpreter.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_embed/__pycache__/test_trampoline.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_embed/__pycache__/test_trampoline.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_embed/test_interpreter.py +16 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_embed/test_trampoline.py +18 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_enum.py +270 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_eval.py +52 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_eval_call.py +5 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_exceptions.py +434 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_factory_constructors.py +518 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_gil_scoped.py +244 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_iostream.py +293 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_kwargs_and_defaults.py +428 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_local_bindings.py +259 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_methods_and_attributes.py +539 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_modules.py +118 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_multiple_inheritance.py +495 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_numpy_array.py +672 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_numpy_dtypes.py +448 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_numpy_vectorize.py +268 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_opaque_types.py +60 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_operator_overloading.py +153 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_pickling.py +95 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_python_multiple_inheritance.py +36 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_pytypes.py +1043 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_sequences_and_iterators.py +267 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_smart_ptr.py +317 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_stl.py +383 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_stl_binders.py +395 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_tagbased_polymorphic.py +30 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_thread.py +44 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_type_caster_pyobject_ptr.py +122 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_union.py +10 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_unnamed_namespace_a.py +36 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_unnamed_namespace_b.py +7 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_vector_unique_ptr_member.py +16 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tests/test_virtual_functions.py +460 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tools/__pycache__/codespell_ignore_lines_from_errors.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tools/__pycache__/codespell_ignore_lines_from_errors.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tools/__pycache__/libsize.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tools/__pycache__/libsize.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tools/__pycache__/make_changelog.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tools/__pycache__/make_changelog.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tools/codespell_ignore_lines_from_errors.py +40 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tools/libsize.py +38 -0
- sage/middleware/components/sage_flow/build/_deps/pybind11-src/tools/make_changelog.py +92 -0
- sage/middleware/components/sage_flow/build/_deps/spdlog-src/scripts/__pycache__/extract_version.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/spdlog-src/scripts/__pycache__/extract_version.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/spdlog-src/scripts/extract_version.py +17 -0
- sage/middleware/components/sage_flow/build/_deps/tomlplusplus-src/tools/__pycache__/ci_single_header_check.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/tomlplusplus-src/tools/__pycache__/ci_single_header_check.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/tomlplusplus-src/tools/__pycache__/generate_conformance_tests.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/tomlplusplus-src/tools/__pycache__/generate_conformance_tests.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/tomlplusplus-src/tools/__pycache__/generate_single_header.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/tomlplusplus-src/tools/__pycache__/generate_single_header.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/tomlplusplus-src/tools/__pycache__/generate_windows_test_targets.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/tomlplusplus-src/tools/__pycache__/generate_windows_test_targets.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/tomlplusplus-src/tools/__pycache__/utils.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/tomlplusplus-src/tools/__pycache__/utils.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/tomlplusplus-src/tools/__pycache__/version.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/tomlplusplus-src/tools/__pycache__/version.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/build/_deps/tomlplusplus-src/tools/ci_single_header_check.py +31 -0
- sage/middleware/components/sage_flow/build/_deps/tomlplusplus-src/tools/generate_conformance_tests.py +635 -0
- sage/middleware/components/sage_flow/build/_deps/tomlplusplus-src/tools/generate_single_header.py +262 -0
- sage/middleware/components/sage_flow/build/_deps/tomlplusplus-src/tools/generate_windows_test_targets.py +181 -0
- sage/middleware/components/sage_flow/build/_deps/tomlplusplus-src/tools/utils.py +55 -0
- sage/middleware/components/sage_flow/build/_deps/tomlplusplus-src/tools/version.py +68 -0
- sage/middleware/components/sage_flow/cmake/enableTest.cmake +34 -0
- sage/middleware/components/sage_flow/cmake/gperftools.cmake +21 -0
- sage/middleware/components/sage_flow/cmake/macros.cmake +11 -0
- sage/middleware/components/sage_flow/cmake/pybind11_dependency.cmake +26 -0
- sage/middleware/components/sage_flow/data/__pycache__/generate_vectors.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/data/__pycache__/generate_vectors.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/data/generate_vectors.py +34 -0
- sage/middleware/components/sage_flow/python/__init__.py +4 -0
- sage/middleware/components/sage_flow/python/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/python/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/python/__pycache__/sage_flow.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/python/__pycache__/sage_flow.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/python/_sage_flow.cpython-311-x86_64-linux-gnu.so +0 -0
- sage/middleware/components/sage_flow/python/micro_service/__init__.py +4 -0
- sage/middleware/components/sage_flow/python/micro_service/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/python/micro_service/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/python/micro_service/__pycache__/sage_flow_service.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_flow/python/micro_service/__pycache__/sage_flow_service.cpython-311.pyc +0 -0
- sage/middleware/components/sage_flow/python/micro_service/sage_flow_service.py +91 -0
- sage/middleware/components/sage_flow/python/sage_flow.py +118 -0
- sage/middleware/utils/__init__.py +8 -33
- sage/middleware/utils/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/utils/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/utils/embedding/__init__.py +8 -33
- sage/middleware/utils/embedding/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/_cohere.cpython-311.opt-2.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/_cohere.cpython-311.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/bedrock.cpython-311.opt-2.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/bedrock.cpython-311.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/embedding_api.cpython-311.opt-2.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/embedding_api.cpython-311.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/embedding_model.cpython-311.opt-2.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/embedding_model.cpython-311.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/hf.cpython-311.opt-2.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/hf.cpython-311.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/instructor.cpython-311.opt-2.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/instructor.cpython-311.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/jina.cpython-311.opt-2.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/jina.cpython-311.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/lollms.cpython-311.opt-2.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/lollms.cpython-311.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/mockembedder.cpython-311.opt-2.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/mockembedder.cpython-311.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/nvidia_openai.cpython-311.opt-2.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/nvidia_openai.cpython-311.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/ollama.cpython-311.opt-2.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/ollama.cpython-311.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/openai.cpython-311.opt-2.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/openai.cpython-311.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/siliconcloud.cpython-311.opt-2.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/siliconcloud.cpython-311.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/zhipu.cpython-311.opt-2.pyc +0 -0
- sage/middleware/utils/embedding/__pycache__/zhipu.cpython-311.pyc +0 -0
- sage/middleware/utils/embedding/_cohere.py +7 -15
- sage/middleware/utils/embedding/bedrock.py +32 -35
- sage/middleware/utils/embedding/embedding_api.py +6 -2
- sage/middleware/utils/embedding/embedding_model.py +58 -29
- sage/middleware/utils/embedding/hf.py +8 -11
- sage/middleware/utils/embedding/instructor.py +1 -2
- sage/middleware/utils/embedding/jina.py +6 -15
- sage/middleware/utils/embedding/lollms.py +9 -7
- sage/middleware/utils/embedding/mockembedder.py +12 -8
- sage/middleware/utils/embedding/nvidia_openai.py +6 -13
- sage/middleware/utils/embedding/ollama.py +7 -22
- sage/middleware/utils/embedding/openai.py +10 -22
- sage/middleware/utils/embedding/siliconcloud.py +10 -28
- sage/middleware/utils/embedding/zhipu.py +6 -15
- isage_middleware-0.1.4.dist-info/METADATA +0 -115
- isage_middleware-0.1.4.dist-info/RECORD +0 -288
- sage/middleware/api/__init__.py +0 -37
- sage/middleware/api/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/api/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/api/__pycache__/graph_api.cpython-311.opt-2.pyc +0 -0
- sage/middleware/api/__pycache__/graph_api.cpython-311.pyc +0 -0
- sage/middleware/api/__pycache__/kv_api.cpython-311.opt-2.pyc +0 -0
- sage/middleware/api/__pycache__/kv_api.cpython-311.pyc +0 -0
- sage/middleware/api/__pycache__/memory_api.cpython-311.opt-2.pyc +0 -0
- sage/middleware/api/__pycache__/memory_api.cpython-311.pyc +0 -0
- sage/middleware/api/__pycache__/vdb_api.cpython-311.opt-2.pyc +0 -0
- sage/middleware/api/__pycache__/vdb_api.cpython-311.pyc +0 -0
- sage/middleware/api/graph_api.py +0 -74
- sage/middleware/api/kv_api.py +0 -45
- sage/middleware/api/memory_api.py +0 -64
- sage/middleware/api/vdb_api.py +0 -60
- sage/middleware/components/enterprise/__init__.py +0 -37
- sage/middleware/components/enterprise/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/enterprise/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/__pycache__/memory_service.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/__pycache__/memory_service.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/memory_service.py +0 -324
- sage/middleware/components/neuromem/search_engine/hybird_index/__init__.py +0 -37
- sage/middleware/components/neuromem/search_engine/hybird_index/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/search_engine/hybird_index/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/tests/__init__.py +0 -37
- sage/middleware/components/neuromem/tests/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/tests/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/tests/__pycache__/test_memory_service.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/tests/__pycache__/test_memory_service.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/tests/core_test/__init__.py +0 -37
- sage/middleware/components/neuromem/tests/core_test/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/tests/core_test/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/tests/core_test/collection_test/__init__.py +0 -37
- sage/middleware/components/neuromem/tests/core_test/collection_test/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/tests/core_test/collection_test/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/tests/core_test/collection_test/__pycache__/kv_collection_test.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/tests/core_test/collection_test/__pycache__/kv_collection_test.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/tests/core_test/collection_test/__pycache__/vdb_collection_test.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/neuromem/tests/core_test/collection_test/__pycache__/vdb_collection_test.cpython-311.pyc +0 -0
- sage/middleware/components/neuromem/tests/core_test/collection_test/kv_collection_test.py +0 -60
- sage/middleware/components/neuromem/tests/core_test/collection_test/vdb_collection_test.py +0 -88
- sage/middleware/components/neuromem/tests/core_test/manager_test.py +0 -154
- sage/middleware/components/neuromem/tests/test_memory_service.py +0 -293
- sage/middleware/components/sage_db/__pycache__/sage_db.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_db/__pycache__/sage_db.cpython-311.pyc +0 -0
- sage/middleware/components/sage_db/sage_db.py +0 -395
- sage/middleware/components/sage_db/tests/__pycache__/test_python.cpython-311.opt-2.pyc +0 -0
- sage/middleware/components/sage_db/tests/__pycache__/test_python.cpython-311.pyc +0 -0
- sage/middleware/components/sage_db/tests/test_python.py +0 -144
- sage/middleware/examples/__pycache__/api_usage_tutorial.cpython-311.opt-2.pyc +0 -0
- sage/middleware/examples/__pycache__/api_usage_tutorial.cpython-311.pyc +0 -0
- sage/middleware/examples/__pycache__/microservices_demo.cpython-311.opt-2.pyc +0 -0
- sage/middleware/examples/__pycache__/microservices_demo.cpython-311.pyc +0 -0
- sage/middleware/examples/__pycache__/microservices_registration_demo.cpython-311.opt-2.pyc +0 -0
- sage/middleware/examples/__pycache__/microservices_registration_demo.cpython-311.pyc +0 -0
- sage/middleware/examples/api_usage_tutorial.py +0 -339
- sage/middleware/examples/dag_microservices_demo.py +0 -219
- sage/middleware/examples/microservices_integration_demo.py +0 -370
- sage/middleware/examples/microservices_registration_demo.py +0 -140
- sage/middleware/services/__init__.py +0 -37
- sage/middleware/services/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/services/graph/__init__.py +0 -37
- sage/middleware/services/graph/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/graph/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/services/graph/__pycache__/graph_index.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/graph/__pycache__/graph_index.cpython-311.pyc +0 -0
- sage/middleware/services/graph/__pycache__/graph_service.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/graph/__pycache__/graph_service.cpython-311.pyc +0 -0
- sage/middleware/services/graph/examples/__pycache__/graph_demo.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/graph/examples/__pycache__/graph_demo.cpython-311.pyc +0 -0
- sage/middleware/services/graph/examples/graph_demo.py +0 -178
- sage/middleware/services/graph/graph_index.py +0 -194
- sage/middleware/services/graph/graph_service.py +0 -609
- sage/middleware/services/graph/search_engine/__init__.py +0 -37
- sage/middleware/services/graph/search_engine/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/graph/search_engine/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/services/graph/search_engine/__pycache__/base_graph_index.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/graph/search_engine/__pycache__/base_graph_index.cpython-311.pyc +0 -0
- sage/middleware/services/graph/search_engine/base_graph_index.py +0 -0
- sage/middleware/services/kv/__init__.py +0 -37
- sage/middleware/services/kv/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/kv/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/services/kv/__pycache__/kv_service.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/kv/__pycache__/kv_service.cpython-311.pyc +0 -0
- sage/middleware/services/kv/examples/__pycache__/kv_demo.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/kv/examples/__pycache__/kv_demo.cpython-311.pyc +0 -0
- sage/middleware/services/kv/examples/kv_demo.py +0 -213
- sage/middleware/services/kv/kv_service.py +0 -306
- sage/middleware/services/kv/search_engine/__init__.py +0 -37
- sage/middleware/services/kv/search_engine/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/kv/search_engine/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/services/kv/search_engine/__pycache__/base_kv_index.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/kv/search_engine/__pycache__/base_kv_index.cpython-311.pyc +0 -0
- sage/middleware/services/kv/search_engine/__pycache__/bm25s_index.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/kv/search_engine/__pycache__/bm25s_index.cpython-311.pyc +0 -0
- sage/middleware/services/kv/search_engine/base_kv_index.py +0 -75
- sage/middleware/services/kv/search_engine/bm25s_index.py +0 -238
- sage/middleware/services/memory/__init__.py +0 -37
- sage/middleware/services/memory/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/memory/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/services/memory/__pycache__/memory_service.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/memory/__pycache__/memory_service.cpython-311.pyc +0 -0
- sage/middleware/services/memory/examples/__pycache__/memory_demo.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/memory/examples/__pycache__/memory_demo.cpython-311.pyc +0 -0
- sage/middleware/services/memory/examples/dag_microservices_demo.py +0 -219
- sage/middleware/services/memory/examples/memory_demo.py +0 -490
- sage/middleware/services/memory/memory_collection/__pycache__/graph_collection.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/memory/memory_collection/__pycache__/graph_collection.cpython-311.pyc +0 -0
- sage/middleware/services/memory/memory_collection/graph_collection.py +0 -0
- sage/middleware/services/memory/memory_service.py +0 -477
- sage/middleware/services/memory/utils/__init__.py +0 -37
- sage/middleware/services/memory/utils/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/memory/utils/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/services/memory/utils/__pycache__/path_utils.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/memory/utils/__pycache__/path_utils.cpython-311.pyc +0 -0
- sage/middleware/services/memory/utils/path_utils.py +0 -0
- sage/middleware/services/vdb/__init__.py +0 -37
- sage/middleware/services/vdb/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/vdb/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/services/vdb/__pycache__/vdb_service.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/vdb/__pycache__/vdb_service.cpython-311.pyc +0 -0
- sage/middleware/services/vdb/examples/__pycache__/vdb_demo.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/vdb/examples/__pycache__/vdb_demo.cpython-311.pyc +0 -0
- sage/middleware/services/vdb/examples/vdb_demo.py +0 -447
- sage/middleware/services/vdb/search_engine/__init__.py +0 -37
- sage/middleware/services/vdb/search_engine/__pycache__/__init__.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/vdb/search_engine/__pycache__/__init__.cpython-311.pyc +0 -0
- sage/middleware/services/vdb/search_engine/__pycache__/base_vdb_index.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/vdb/search_engine/__pycache__/base_vdb_index.cpython-311.pyc +0 -0
- sage/middleware/services/vdb/search_engine/__pycache__/faiss_index.cpython-311.opt-2.pyc +0 -0
- sage/middleware/services/vdb/search_engine/__pycache__/faiss_index.cpython-311.pyc +0 -0
- sage/middleware/services/vdb/search_engine/base_vdb_index.py +0 -58
- sage/middleware/services/vdb/search_engine/faiss_index.py +0 -461
- sage/middleware/services/vdb/vdb_service.py +0 -436
- {isage_middleware-0.1.4.dist-info → isage_middleware-0.1.5.1.dist-info}/WHEEL +0 -0
- {isage_middleware-0.1.4.dist-info → isage_middleware-0.1.5.1.dist-info}/top_level.txt +0 -0
- /sage/middleware/{examples/microservices_demo.py → components/sage_flow/build/_deps/pybind11-src/pybind11/py.typed} +0 -0
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
# FindBLASLAPACK.cmake
|
|
2
|
+
# 增强的 BLAS/LAPACK 查找模块,支持多种环境
|
|
3
|
+
# 适用于 Ubuntu, CentOS, macOS, Conda 等环境
|
|
4
|
+
|
|
5
|
+
# 设置查找路径
|
|
6
|
+
list(APPEND CMAKE_PREFIX_PATH
|
|
7
|
+
${CMAKE_INSTALL_PREFIX}
|
|
8
|
+
$ENV{CONDA_PREFIX}
|
|
9
|
+
/usr/local
|
|
10
|
+
/usr
|
|
11
|
+
/opt/local
|
|
12
|
+
/opt/homebrew
|
|
13
|
+
)
|
|
14
|
+
|
|
15
|
+
# 设置库文件搜索路径
|
|
16
|
+
set(BLAS_LAPACK_SEARCH_PATHS
|
|
17
|
+
# Conda 环境
|
|
18
|
+
$ENV{CONDA_PREFIX}/lib
|
|
19
|
+
$ENV{CONDA_PREFIX}/lib64
|
|
20
|
+
|
|
21
|
+
# 系统标准路径
|
|
22
|
+
/usr/lib
|
|
23
|
+
/usr/lib64
|
|
24
|
+
/usr/lib/x86_64-linux-gnu
|
|
25
|
+
/usr/lib/i386-linux-gnu
|
|
26
|
+
/usr/lib/aarch64-linux-gnu
|
|
27
|
+
/usr/lib/arm-linux-gnueabihf
|
|
28
|
+
|
|
29
|
+
# macOS 路径
|
|
30
|
+
/usr/local/lib
|
|
31
|
+
/opt/local/lib
|
|
32
|
+
/opt/homebrew/lib
|
|
33
|
+
/System/Library/Frameworks/Accelerate.framework/Versions/Current/Frameworks/vecLib.framework/Versions/Current
|
|
34
|
+
|
|
35
|
+
# 其他可能路径
|
|
36
|
+
/opt/intel/mkl/lib/intel64
|
|
37
|
+
/opt/atlas/lib
|
|
38
|
+
)
|
|
39
|
+
|
|
40
|
+
# 尝试不同的 BLAS 实现
|
|
41
|
+
set(BLAS_VENDOR_OPTIONS "OpenBLAS" "ATLAS" "Intel10_64lp" "Generic")
|
|
42
|
+
|
|
43
|
+
foreach(VENDOR ${BLAS_VENDOR_OPTIONS})
|
|
44
|
+
set(BLA_VENDOR ${VENDOR})
|
|
45
|
+
find_package(BLAS QUIET)
|
|
46
|
+
if(BLAS_FOUND)
|
|
47
|
+
message(STATUS "Found BLAS implementation: ${VENDOR}")
|
|
48
|
+
break()
|
|
49
|
+
endif()
|
|
50
|
+
endforeach()
|
|
51
|
+
|
|
52
|
+
# 如果标准查找失败,手动搜索
|
|
53
|
+
if(NOT BLAS_FOUND)
|
|
54
|
+
message(STATUS "Standard BLAS search failed, trying manual search...")
|
|
55
|
+
|
|
56
|
+
# 手动查找 OpenBLAS
|
|
57
|
+
find_library(OPENBLAS_LIB
|
|
58
|
+
NAMES openblas libopenblas
|
|
59
|
+
PATHS ${BLAS_LAPACK_SEARCH_PATHS}
|
|
60
|
+
NO_DEFAULT_PATH
|
|
61
|
+
)
|
|
62
|
+
|
|
63
|
+
if(OPENBLAS_LIB)
|
|
64
|
+
set(BLAS_LIBRARIES ${OPENBLAS_LIB})
|
|
65
|
+
set(BLAS_FOUND TRUE)
|
|
66
|
+
message(STATUS "Found OpenBLAS manually: ${OPENBLAS_LIB}")
|
|
67
|
+
else()
|
|
68
|
+
# 尝试查找系统 BLAS
|
|
69
|
+
find_library(BLAS_LIB
|
|
70
|
+
NAMES blas libblas cblas libcblas
|
|
71
|
+
PATHS ${BLAS_LAPACK_SEARCH_PATHS}
|
|
72
|
+
NO_DEFAULT_PATH
|
|
73
|
+
)
|
|
74
|
+
|
|
75
|
+
if(BLAS_LIB)
|
|
76
|
+
set(BLAS_LIBRARIES ${BLAS_LIB})
|
|
77
|
+
set(BLAS_FOUND TRUE)
|
|
78
|
+
message(STATUS "Found system BLAS manually: ${BLAS_LIB}")
|
|
79
|
+
endif()
|
|
80
|
+
endif()
|
|
81
|
+
endif()
|
|
82
|
+
|
|
83
|
+
# 查找 LAPACK
|
|
84
|
+
find_package(LAPACK QUIET)
|
|
85
|
+
|
|
86
|
+
if(NOT LAPACK_FOUND)
|
|
87
|
+
message(STATUS "Standard LAPACK search failed, trying manual search...")
|
|
88
|
+
|
|
89
|
+
# 手动查找 LAPACK
|
|
90
|
+
find_library(LAPACK_LIB
|
|
91
|
+
NAMES lapack liblapack
|
|
92
|
+
PATHS ${BLAS_LAPACK_SEARCH_PATHS}
|
|
93
|
+
NO_DEFAULT_PATH
|
|
94
|
+
)
|
|
95
|
+
|
|
96
|
+
if(LAPACK_LIB)
|
|
97
|
+
set(LAPACK_LIBRARIES ${LAPACK_LIB})
|
|
98
|
+
set(LAPACK_FOUND TRUE)
|
|
99
|
+
message(STATUS "Found LAPACK manually: ${LAPACK_LIB}")
|
|
100
|
+
endif()
|
|
101
|
+
endif()
|
|
102
|
+
|
|
103
|
+
# 结果报告
|
|
104
|
+
if(BLAS_FOUND AND LAPACK_FOUND)
|
|
105
|
+
message(STATUS "✅ BLAS and LAPACK found successfully")
|
|
106
|
+
message(STATUS " BLAS libraries: ${BLAS_LIBRARIES}")
|
|
107
|
+
message(STATUS " LAPACK libraries: ${LAPACK_LIBRARIES}")
|
|
108
|
+
set(HAVE_BLAS_LAPACK TRUE CACHE BOOL "BLAS and LAPACK available")
|
|
109
|
+
else()
|
|
110
|
+
message(WARNING "❌ BLAS or LAPACK not found")
|
|
111
|
+
if(NOT BLAS_FOUND)
|
|
112
|
+
message(WARNING " BLAS not found")
|
|
113
|
+
endif()
|
|
114
|
+
if(NOT LAPACK_FOUND)
|
|
115
|
+
message(WARNING " LAPACK not found")
|
|
116
|
+
endif()
|
|
117
|
+
message(STATUS "")
|
|
118
|
+
message(STATUS "🔧 To install BLAS/LAPACK:")
|
|
119
|
+
message(STATUS " Ubuntu/Debian: sudo apt-get install libopenblas-dev liblapack-dev")
|
|
120
|
+
message(STATUS " CentOS/RHEL: sudo yum install openblas-devel lapack-devel")
|
|
121
|
+
message(STATUS " macOS: brew install openblas lapack")
|
|
122
|
+
message(STATUS " Conda: conda install -c conda-forge openblas liblapack")
|
|
123
|
+
message(STATUS "")
|
|
124
|
+
set(HAVE_BLAS_LAPACK FALSE CACHE BOOL "BLAS and LAPACK not available")
|
|
125
|
+
endif()
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# Resolve gperftools libraries when building sage_db stand-alone.
|
|
2
|
+
# This script assumes the boolean option ENABLE_GPERFTOOLS controls whether we attempt lookup.
|
|
3
|
+
|
|
4
|
+
if(NOT ENABLE_GPERFTOOLS)
|
|
5
|
+
message(STATUS "gperftools support disabled for sage_db")
|
|
6
|
+
set(SAGE_GPERFTOOLS_LIBS "")
|
|
7
|
+
return()
|
|
8
|
+
endif()
|
|
9
|
+
|
|
10
|
+
find_library(SAGE_GPERFTOOLS_PROFILER_LIB profiler)
|
|
11
|
+
find_library(SAGE_GPERFTOOLS_TCMALLOC_LIB tcmalloc)
|
|
12
|
+
|
|
13
|
+
if(SAGE_GPERFTOOLS_PROFILER_LIB AND SAGE_GPERFTOOLS_TCMALLOC_LIB)
|
|
14
|
+
set(SAGE_GPERFTOOLS_LIBS ${SAGE_GPERFTOOLS_PROFILER_LIB} ${SAGE_GPERFTOOLS_TCMALLOC_LIB})
|
|
15
|
+
message(STATUS "gperftools found for sage_db: ${SAGE_GPERFTOOLS_LIBS}")
|
|
16
|
+
else()
|
|
17
|
+
if(NOT SAGE_GPERFTOOLS_PROFILER_LIB)
|
|
18
|
+
message(WARNING "Requested gperftools but libprofiler not found; disabling ENABLE_GPERFTOOLS")
|
|
19
|
+
elseif(NOT SAGE_GPERFTOOLS_TCMALLOC_LIB)
|
|
20
|
+
message(WARNING "Requested gperftools but libtcmalloc not found; disabling ENABLE_GPERFTOOLS")
|
|
21
|
+
endif()
|
|
22
|
+
set(SAGE_GPERFTOOLS_LIBS "")
|
|
23
|
+
set(ENABLE_GPERFTOOLS OFF CACHE BOOL "Enable gperftools profiling support" FORCE)
|
|
24
|
+
endif()
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Standalone pybind11 dependency resolver for sage_db.
|
|
2
|
+
# When the build is orchestrated by the Python superbuild, a shared dependency
|
|
3
|
+
# file can be provided via SAGE_COMMON_DEPS_FILE. Otherwise this fallback keeps
|
|
4
|
+
# the project self-contained.
|
|
5
|
+
|
|
6
|
+
if(NOT TARGET pybind11::module)
|
|
7
|
+
find_package(pybind11 CONFIG QUIET)
|
|
8
|
+
if(pybind11_FOUND)
|
|
9
|
+
message(STATUS "Using system pybind11 ${pybind11_VERSION} from ${pybind11_CONFIG}")
|
|
10
|
+
else()
|
|
11
|
+
include(FetchContent)
|
|
12
|
+
if(NOT DEFINED pybind11_POPULATED)
|
|
13
|
+
set(_sage_db_pybind11_tag "v2.13.0" CACHE STRING "Pinned pybind11 version for sage_db")
|
|
14
|
+
FetchContent_Declare(
|
|
15
|
+
pybind11
|
|
16
|
+
GIT_REPOSITORY https://github.com/pybind/pybind11.git
|
|
17
|
+
GIT_TAG ${_sage_db_pybind11_tag}
|
|
18
|
+
)
|
|
19
|
+
endif()
|
|
20
|
+
FetchContent_MakeAvailable(pybind11)
|
|
21
|
+
message(STATUS "Fetched pybind11 ${_sage_db_pybind11_tag} for sage_db")
|
|
22
|
+
endif()
|
|
23
|
+
endif()
|
|
24
|
+
|
|
25
|
+
if(NOT COMMAND pybind11_add_module)
|
|
26
|
+
message(FATAL_ERROR "pybind11_add_module is unavailable even after resolving pybind11 dependency")
|
|
27
|
+
endif()
|
sage/middleware/components/sage_db/examples/__pycache__/faiss_plugin_demo.cpython-311.opt-2.pyc
ADDED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
"""Showcase for the FAISS ANNS plugin with graceful fallback when unavailable."""
|
|
3
|
+
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
|
|
6
|
+
import sys
|
|
7
|
+
from pathlib import Path
|
|
8
|
+
from typing import Dict, List, Tuple
|
|
9
|
+
|
|
10
|
+
import numpy as np
|
|
11
|
+
|
|
12
|
+
REPO_ROOT = Path(__file__).resolve().parents[1]
|
|
13
|
+
PACKAGES_ROOT = REPO_ROOT / "packages"
|
|
14
|
+
if str(PACKAGES_ROOT) not in sys.path:
|
|
15
|
+
sys.path.insert(0, str(PACKAGES_ROOT))
|
|
16
|
+
|
|
17
|
+
try:
|
|
18
|
+
import _sage_db
|
|
19
|
+
except ImportError as exc: # pragma: no cover - documented failure mode
|
|
20
|
+
raise SystemExit(
|
|
21
|
+
"❌ Unable to import _sage_db. Build the native extension first:\n"
|
|
22
|
+
" cd packages/sage-middleware/src/sage/middleware/components/sage_db && ./build.sh"
|
|
23
|
+
) from exc
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
def build_faiss_config(dimension: int = 8) -> _sage_db.DatabaseConfig:
|
|
27
|
+
cfg = _sage_db.DatabaseConfig(dimension)
|
|
28
|
+
cfg.metric = _sage_db.DistanceMetric.COSINE
|
|
29
|
+
cfg.index_type = _sage_db.IndexType.AUTO
|
|
30
|
+
cfg.anns_algorithm = "FAISS"
|
|
31
|
+
cfg.anns_build_params = {
|
|
32
|
+
"index_type": "ivf_flat",
|
|
33
|
+
"metric": "cosine",
|
|
34
|
+
"nlist": "16",
|
|
35
|
+
"auto_threshold_ivf": "200",
|
|
36
|
+
}
|
|
37
|
+
cfg.anns_query_params = {
|
|
38
|
+
"nprobe": "4",
|
|
39
|
+
"efSearch": "64",
|
|
40
|
+
}
|
|
41
|
+
return cfg
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
def build_fallback_config(dimension: int = 8) -> _sage_db.DatabaseConfig:
|
|
45
|
+
cfg = _sage_db.DatabaseConfig(dimension)
|
|
46
|
+
cfg.metric = _sage_db.DistanceMetric.COSINE
|
|
47
|
+
cfg.index_type = _sage_db.IndexType.AUTO
|
|
48
|
+
cfg.anns_algorithm = "brute_force"
|
|
49
|
+
cfg.anns_build_params = {"metric": "cosine"}
|
|
50
|
+
cfg.anns_query_params = {"nprobe": "1"}
|
|
51
|
+
return cfg
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
def generate_vectors(
|
|
55
|
+
dim: int, count: int = 64
|
|
56
|
+
) -> Tuple[np.ndarray, List[Dict[str, str]]]:
|
|
57
|
+
rng = np.random.default_rng(seed=13)
|
|
58
|
+
raw = rng.normal(size=(count, dim)).astype("float32")
|
|
59
|
+
# Normalise to unit vectors for cosine distance
|
|
60
|
+
norms = np.linalg.norm(raw, axis=1, keepdims=True) + 1e-12
|
|
61
|
+
vectors = raw / norms
|
|
62
|
+
metadata: List[Dict[str, str]] = []
|
|
63
|
+
for idx in range(count):
|
|
64
|
+
metadata.append(
|
|
65
|
+
{
|
|
66
|
+
"id": f"vec-{idx}",
|
|
67
|
+
"bucket": str(idx // 8),
|
|
68
|
+
"parity": "even" if idx % 2 == 0 else "odd",
|
|
69
|
+
}
|
|
70
|
+
)
|
|
71
|
+
return vectors, metadata
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
def ingest_numpy_batch(
|
|
75
|
+
db: _sage_db.SageDB, vectors: np.ndarray, metadata: List[Dict[str, str]]
|
|
76
|
+
) -> None:
|
|
77
|
+
print(f"➕ ingesting {len(vectors)} vectors via add_batch (numpy)")
|
|
78
|
+
_sage_db.add_numpy(db, vectors, metadata)
|
|
79
|
+
print(" stored vectors:", db.size())
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
def run_demo(db: _sage_db.SageDB, query: np.ndarray) -> None:
|
|
83
|
+
params = _sage_db.SearchParams(5)
|
|
84
|
+
params.include_metadata = True
|
|
85
|
+
params.nprobe = 4
|
|
86
|
+
|
|
87
|
+
print("\n🔍 Top-5 cosine neighbours for query vector")
|
|
88
|
+
results = _sage_db.search_numpy(db, query, params)
|
|
89
|
+
for rank, res in enumerate(results, start=1):
|
|
90
|
+
print(f" {rank}. id={res.id:>3} score={res.score:.4f} metadata={res.metadata}")
|
|
91
|
+
|
|
92
|
+
engine = db.query_engine()
|
|
93
|
+
stats = engine.get_last_search_stats()
|
|
94
|
+
print(
|
|
95
|
+
f" stats: candidates={stats.total_candidates} filter={stats.filtered_candidates} "
|
|
96
|
+
f"time={stats.total_time_ms:.3f}ms"
|
|
97
|
+
)
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
def main() -> None:
|
|
101
|
+
vectors, metadata = generate_vectors(dim=8)
|
|
102
|
+
query = vectors[0] * 0.95 + vectors[1] * 0.05
|
|
103
|
+
|
|
104
|
+
print("=== SageDB FAISS plugin demo ===")
|
|
105
|
+
|
|
106
|
+
cfg = build_faiss_config(dimension=vectors.shape[1])
|
|
107
|
+
try:
|
|
108
|
+
db = _sage_db.SageDB(cfg)
|
|
109
|
+
ingest_numpy_batch(db, vectors, metadata)
|
|
110
|
+
db.build_index()
|
|
111
|
+
print("✅ FAISS index built successfully")
|
|
112
|
+
except (_sage_db.SageDBException, RuntimeError) as exc:
|
|
113
|
+
print("⚠️ FAISS backend unavailable, falling back to brute_force:\n ", exc)
|
|
114
|
+
cfg = build_fallback_config(dimension=vectors.shape[1])
|
|
115
|
+
db = _sage_db.SageDB(cfg)
|
|
116
|
+
ingest_numpy_batch(db, vectors, metadata)
|
|
117
|
+
db.build_index()
|
|
118
|
+
print("✅ fallback brute_force index built")
|
|
119
|
+
|
|
120
|
+
run_demo(db, query)
|
|
121
|
+
|
|
122
|
+
print("\nℹ️ resolved config:")
|
|
123
|
+
print(
|
|
124
|
+
{
|
|
125
|
+
"algorithm": db.config().anns_algorithm,
|
|
126
|
+
"metric": db.config().metric.name,
|
|
127
|
+
"anns_build_params": dict(db.config().anns_build_params),
|
|
128
|
+
"anns_query_params": dict(db.config().anns_query_params),
|
|
129
|
+
}
|
|
130
|
+
)
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
if __name__ == "__main__":
|
|
134
|
+
main()
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
"""Minimal SageDB quickstart demo for the pluggable ANNS stack."""
|
|
3
|
+
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
|
|
6
|
+
import json
|
|
7
|
+
import math
|
|
8
|
+
import random
|
|
9
|
+
import sys
|
|
10
|
+
from pathlib import Path
|
|
11
|
+
from tempfile import TemporaryDirectory
|
|
12
|
+
from typing import Dict, List
|
|
13
|
+
|
|
14
|
+
import numpy as np
|
|
15
|
+
|
|
16
|
+
# Ensure we can import the locally built extension/module without installation.
|
|
17
|
+
REPO_ROOT = Path(__file__).resolve().parents[1]
|
|
18
|
+
PACKAGES_ROOT = REPO_ROOT / "packages"
|
|
19
|
+
if str(PACKAGES_ROOT) not in sys.path:
|
|
20
|
+
sys.path.insert(0, str(PACKAGES_ROOT))
|
|
21
|
+
|
|
22
|
+
try:
|
|
23
|
+
import _sage_db
|
|
24
|
+
except ImportError as exc: # pragma: no cover - the example should exit cleanly
|
|
25
|
+
raise SystemExit(
|
|
26
|
+
"❌ Unable to import _sage_db. Please build the native extension first:\n"
|
|
27
|
+
" cd packages/sage-middleware/src/sage/middleware/components/sage_db && ./build.sh"
|
|
28
|
+
) from exc
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
def build_config(dimension: int = 4) -> _sage_db.DatabaseConfig:
|
|
32
|
+
"""Create a DatabaseConfig wired to the default brute-force plugin."""
|
|
33
|
+
cfg = _sage_db.DatabaseConfig(dimension)
|
|
34
|
+
cfg.metric = _sage_db.DistanceMetric.L2
|
|
35
|
+
cfg.index_type = _sage_db.IndexType.AUTO # delegate selection to the plugin
|
|
36
|
+
cfg.anns_algorithm = "brute_force"
|
|
37
|
+
cfg.anns_build_params = {"metric": "l2"}
|
|
38
|
+
cfg.anns_query_params = {"nprobe": "1"}
|
|
39
|
+
return cfg
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
def make_demo_vectors() -> List[List[float]]:
|
|
43
|
+
"""Create a tiny set of 4D vectors arranged on a circle for easy inspection."""
|
|
44
|
+
base_angles = [0.0, math.pi / 4, math.pi / 2, 3 * math.pi / 4, math.pi]
|
|
45
|
+
vectors: List[List[float]] = []
|
|
46
|
+
for idx, angle in enumerate(base_angles):
|
|
47
|
+
vectors.append(
|
|
48
|
+
[
|
|
49
|
+
math.cos(angle),
|
|
50
|
+
math.sin(angle),
|
|
51
|
+
0.25 * (-1) ** idx,
|
|
52
|
+
0.1 * idx,
|
|
53
|
+
]
|
|
54
|
+
)
|
|
55
|
+
return vectors
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
def add_vectors(db: _sage_db.SageDB, vectors: List[List[float]]) -> List[int]:
|
|
59
|
+
"""Insert vectors with metadata and return their ids."""
|
|
60
|
+
ids: List[int] = []
|
|
61
|
+
rng = random.Random(42)
|
|
62
|
+
for i, vec in enumerate(vectors, start=1):
|
|
63
|
+
metadata: Dict[str, str] = {
|
|
64
|
+
"label": f"demo-{i}",
|
|
65
|
+
"quadrant": str((i - 1) % 4 + 1),
|
|
66
|
+
"color": rng.choice(["red", "green", "blue", "yellow"]),
|
|
67
|
+
}
|
|
68
|
+
vec_id = db.add(vec, metadata)
|
|
69
|
+
ids.append(vec_id)
|
|
70
|
+
print(f"➕ inserted vector #{i} -> id={vec_id}, metadata={metadata}")
|
|
71
|
+
return ids
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
def run_search(db: _sage_db.SageDB, query: List[float]) -> None:
|
|
75
|
+
params = _sage_db.SearchParams(k=3)
|
|
76
|
+
params.include_metadata = True
|
|
77
|
+
params.nprobe = 1
|
|
78
|
+
|
|
79
|
+
print("\n🔎 running 3-NN search for:", query)
|
|
80
|
+
results = db.search(query, params)
|
|
81
|
+
for rank, result in enumerate(results, start=1):
|
|
82
|
+
print(
|
|
83
|
+
f" {rank}. id={result.id:>3} score={result.score:.4f} metadata={result.metadata}"
|
|
84
|
+
)
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
def demonstrate_updates(db: _sage_db.SageDB, target_id: int) -> None:
|
|
88
|
+
print(
|
|
89
|
+
f"\n🛠️ updating vector id={target_id} to move it closer to the query direction"
|
|
90
|
+
)
|
|
91
|
+
new_vector = [0.8, 0.6, 0.0, 0.0]
|
|
92
|
+
db.update(target_id, new_vector, {"label": "demo-updated", "quadrant": "1"})
|
|
93
|
+
print(" metadata now:", db.get_metadata(target_id))
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
def demonstrate_persistence(db: _sage_db.SageDB, query: List[float]) -> None:
|
|
97
|
+
print("\n💾 saving database to a temporary location and loading it back")
|
|
98
|
+
with TemporaryDirectory() as tmp:
|
|
99
|
+
db_path = Path(tmp) / "demo_db"
|
|
100
|
+
db.save(str(db_path))
|
|
101
|
+
print(f" saved artefacts to {db_path}")
|
|
102
|
+
|
|
103
|
+
# Restore using a fresh instance with the same configuration
|
|
104
|
+
cfg = _sage_db.DatabaseConfig(db.dimension())
|
|
105
|
+
cfg.metric = db.config().metric
|
|
106
|
+
cfg.index_type = db.config().index_type
|
|
107
|
+
cfg.anns_algorithm = db.config().anns_algorithm
|
|
108
|
+
cfg.anns_build_params = dict(db.config().anns_build_params)
|
|
109
|
+
cfg.anns_query_params = dict(db.config().anns_query_params)
|
|
110
|
+
|
|
111
|
+
reloaded = _sage_db.SageDB(cfg)
|
|
112
|
+
reloaded.load(str(db_path))
|
|
113
|
+
print(" reloaded DB size:", reloaded.size())
|
|
114
|
+
run_search(reloaded, query)
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
def main() -> None:
|
|
118
|
+
print("=== SageDB Quickstart ===")
|
|
119
|
+
cfg = build_config()
|
|
120
|
+
db = _sage_db.SageDB(cfg)
|
|
121
|
+
|
|
122
|
+
vectors = make_demo_vectors()
|
|
123
|
+
ids = add_vectors(db, vectors)
|
|
124
|
+
|
|
125
|
+
db.build_index()
|
|
126
|
+
print("📦 total vectors:", db.size())
|
|
127
|
+
|
|
128
|
+
query = [0.9, 0.3, 0.0, 0.0]
|
|
129
|
+
run_search(db, query)
|
|
130
|
+
|
|
131
|
+
demonstrate_updates(db, ids[0])
|
|
132
|
+
run_search(db, query)
|
|
133
|
+
|
|
134
|
+
print("\n🗑️ removing the furthest vector and rebuilding the index")
|
|
135
|
+
db.remove(ids[-1])
|
|
136
|
+
db.build_index()
|
|
137
|
+
print(" size after removal:", db.size())
|
|
138
|
+
run_search(db, query)
|
|
139
|
+
|
|
140
|
+
demonstrate_persistence(db, query)
|
|
141
|
+
|
|
142
|
+
print("\n📄 current configuration:")
|
|
143
|
+
print(
|
|
144
|
+
json.dumps(
|
|
145
|
+
{
|
|
146
|
+
"dimension": db.dimension(),
|
|
147
|
+
"metric": db.config().metric.name,
|
|
148
|
+
"anns_algorithm": db.config().anns_algorithm,
|
|
149
|
+
"anns_build_params": dict(db.config().anns_build_params),
|
|
150
|
+
"anns_query_params": dict(db.config().anns_query_params),
|
|
151
|
+
},
|
|
152
|
+
indent=2,
|
|
153
|
+
ensure_ascii=False,
|
|
154
|
+
)
|
|
155
|
+
)
|
|
156
|
+
|
|
157
|
+
|
|
158
|
+
if __name__ == "__main__":
|
|
159
|
+
np.random.seed(0)
|
|
160
|
+
main()
|
|
@@ -2,36 +2,11 @@
|
|
|
2
2
|
SAGE - Streaming-Augmented Generative Execution
|
|
3
3
|
"""
|
|
4
4
|
|
|
5
|
-
#
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
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']
|
|
5
|
+
# 直接从本包的_version模块加载版本信息
|
|
6
|
+
try:
|
|
7
|
+
from sage.middleware._version import __author__, __email__, __version__
|
|
8
|
+
except ImportError:
|
|
9
|
+
# 备用硬编码版本
|
|
10
|
+
__version__ = "0.1.4"
|
|
11
|
+
__author__ = "IntelliStream Team"
|
|
12
|
+
__email__ = "shuhao_zhang@hust.edu.cn"
|
|
Binary file
|
|
Binary file
|
sage/middleware/components/sage_db/python/__pycache__/multimodal_sage_db.cpython-311.opt-2.pyc
ADDED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
sage/middleware/components/sage_db/python/micro_service/__pycache__/__init__.cpython-311.opt-2.pyc
ADDED
|
Binary file
|
|
Binary file
|
|
Binary file
|
sage/middleware/components/sage_db/python/micro_service/__pycache__/sage_db_service.cpython-311.pyc
ADDED
|
Binary file
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
3
|
+
from dataclasses import dataclass
|
|
4
|
+
from typing import Any, Dict, List, Optional
|
|
5
|
+
|
|
6
|
+
import numpy as np
|
|
7
|
+
|
|
8
|
+
from ..sage_db import DatabaseConfig, IndexType, SageDB
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
@dataclass
|
|
12
|
+
class SageDBServiceConfig:
|
|
13
|
+
dimension: int = 4
|
|
14
|
+
index_type: str = "AUTO" # one of IndexType names
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class SageDBService:
|
|
18
|
+
"""
|
|
19
|
+
A minimal micro-service style wrapper for SageDB used by examples.
|
|
20
|
+
|
|
21
|
+
Methods:
|
|
22
|
+
- add(vector: np.ndarray | list, metadata: dict) -> int
|
|
23
|
+
- add_batch(vectors: np.ndarray | list[list], metadata_list: list[dict]) -> list[int]
|
|
24
|
+
- search(query: np.ndarray | list, k: int = 5) -> list[dict]
|
|
25
|
+
"""
|
|
26
|
+
|
|
27
|
+
def __init__(self, dimension: int = 4, index_type: str = "AUTO") -> None:
|
|
28
|
+
try:
|
|
29
|
+
idx_enum = getattr(IndexType, index_type)
|
|
30
|
+
except AttributeError:
|
|
31
|
+
idx_enum = IndexType.AUTO
|
|
32
|
+
cfg = DatabaseConfig(dimension)
|
|
33
|
+
cfg.index_type = idx_enum
|
|
34
|
+
self._db = SageDB.from_config(cfg)
|
|
35
|
+
self._dim = dimension
|
|
36
|
+
|
|
37
|
+
def add(
|
|
38
|
+
self,
|
|
39
|
+
vector: np.ndarray | List[float],
|
|
40
|
+
metadata: Optional[Dict[str, str]] = None,
|
|
41
|
+
) -> int:
|
|
42
|
+
if not isinstance(vector, np.ndarray):
|
|
43
|
+
vector = np.asarray(vector, dtype=np.float32)
|
|
44
|
+
if vector.ndim != 1 or vector.shape[0] != self._dim:
|
|
45
|
+
raise ValueError(f"vector shape must be ({self._dim},)")
|
|
46
|
+
return self._db.add(vector, metadata or {})
|
|
47
|
+
|
|
48
|
+
def add_batch(
|
|
49
|
+
self,
|
|
50
|
+
vectors: np.ndarray | List[List[float]],
|
|
51
|
+
metadata_list: Optional[List[Dict[str, str]]] = None,
|
|
52
|
+
) -> List[int]:
|
|
53
|
+
if isinstance(vectors, list):
|
|
54
|
+
arr = np.asarray(vectors, dtype=np.float32)
|
|
55
|
+
else:
|
|
56
|
+
arr = vectors.astype(np.float32, copy=False)
|
|
57
|
+
if arr.ndim != 2 or arr.shape[1] != self._dim:
|
|
58
|
+
raise ValueError(f"vectors shape must be (N, {self._dim})")
|
|
59
|
+
return self._db.add_batch(arr, metadata_list or [])
|
|
60
|
+
|
|
61
|
+
def search(
|
|
62
|
+
self, query: np.ndarray | List[float], k: int = 5, include_metadata: bool = True
|
|
63
|
+
) -> List[Dict[str, Any]]:
|
|
64
|
+
if not isinstance(query, np.ndarray):
|
|
65
|
+
query = np.asarray(query, dtype=np.float32)
|
|
66
|
+
results = self._db.search(query, k=k, include_metadata=include_metadata)
|
|
67
|
+
formatted = []
|
|
68
|
+
for r in results:
|
|
69
|
+
formatted.append(
|
|
70
|
+
{
|
|
71
|
+
"id": int(r.id),
|
|
72
|
+
"score": float(r.score),
|
|
73
|
+
"metadata": dict(r.metadata) if include_metadata else {},
|
|
74
|
+
}
|
|
75
|
+
)
|
|
76
|
+
return formatted
|
|
77
|
+
|
|
78
|
+
def stats(self) -> Dict[str, Any]:
|
|
79
|
+
s = self._db.get_search_stats()
|
|
80
|
+
return {
|
|
81
|
+
"size": self._db.size,
|
|
82
|
+
"dimension": self._db.dimension,
|
|
83
|
+
**s,
|
|
84
|
+
}
|