trustgraph-flow 0.23.15__tar.gz → 0.23.17__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (321) hide show
  1. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/PKG-INFO +2 -2
  2. trustgraph-flow-0.23.17/trustgraph/config/service/config.py +269 -0
  3. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/config/service/flow.py +45 -29
  4. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/config/service/service.py +45 -4
  5. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/cores/knowledge.py +23 -3
  6. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/cores/service.py +4 -5
  7. trustgraph-flow-0.23.17/trustgraph/flow_version.py +1 -0
  8. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/knowledge.py +35 -2
  9. trustgraph-flow-0.23.17/trustgraph/tables/config.py +302 -0
  10. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph_flow.egg-info/PKG-INFO +2 -2
  11. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph_flow.egg-info/SOURCES.txt +1 -0
  12. trustgraph-flow-0.23.15/trustgraph/config/service/config.py +0 -215
  13. trustgraph-flow-0.23.15/trustgraph/flow_version.py +0 -1
  14. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/README.md +0 -0
  15. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/agent-manager-react +0 -0
  16. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/api-gateway +0 -0
  17. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/chunker-recursive +0 -0
  18. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/chunker-token +0 -0
  19. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/config-svc +0 -0
  20. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/de-query-milvus +0 -0
  21. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/de-query-pinecone +0 -0
  22. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/de-query-qdrant +0 -0
  23. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/de-write-milvus +0 -0
  24. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/de-write-pinecone +0 -0
  25. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/de-write-qdrant +0 -0
  26. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/document-embeddings +0 -0
  27. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/document-rag +0 -0
  28. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/embeddings-fastembed +0 -0
  29. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/embeddings-ollama +0 -0
  30. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/ge-query-milvus +0 -0
  31. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/ge-query-pinecone +0 -0
  32. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/ge-query-qdrant +0 -0
  33. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/ge-write-milvus +0 -0
  34. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/ge-write-pinecone +0 -0
  35. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/ge-write-qdrant +0 -0
  36. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/graph-embeddings +0 -0
  37. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/graph-rag +0 -0
  38. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/kg-extract-definitions +0 -0
  39. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/kg-extract-relationships +0 -0
  40. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/kg-extract-topics +0 -0
  41. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/kg-manager +0 -0
  42. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/kg-store +0 -0
  43. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/librarian +0 -0
  44. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/metering +0 -0
  45. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/object-extract-row +0 -0
  46. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/oe-write-milvus +0 -0
  47. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/pdf-decoder +0 -0
  48. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/pdf-ocr-mistral +0 -0
  49. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/prompt-generic +0 -0
  50. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/prompt-template +0 -0
  51. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/rows-write-cassandra +0 -0
  52. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/run-processing +0 -0
  53. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/text-completion-azure +0 -0
  54. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/text-completion-azure-openai +0 -0
  55. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/text-completion-claude +0 -0
  56. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/text-completion-cohere +0 -0
  57. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/text-completion-googleaistudio +0 -0
  58. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/text-completion-llamafile +0 -0
  59. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/text-completion-lmstudio +0 -0
  60. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/text-completion-mistral +0 -0
  61. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/text-completion-ollama +0 -0
  62. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/text-completion-openai +0 -0
  63. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/triples-query-cassandra +0 -0
  64. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/triples-query-falkordb +0 -0
  65. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/triples-query-memgraph +0 -0
  66. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/triples-query-neo4j +0 -0
  67. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/triples-write-cassandra +0 -0
  68. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/triples-write-falkordb +0 -0
  69. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/triples-write-memgraph +0 -0
  70. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/triples-write-neo4j +0 -0
  71. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/scripts/wikipedia-lookup +0 -0
  72. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/setup.cfg +0 -0
  73. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/setup.py +0 -0
  74. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/__init__.py +0 -0
  75. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/agent/__init__.py +0 -0
  76. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/agent/react/__init__.py +0 -0
  77. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/agent/react/__main__.py +0 -0
  78. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/agent/react/agent_manager.py +0 -0
  79. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/agent/react/service.py +0 -0
  80. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/agent/react/tools.py +0 -0
  81. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/agent/react/types.py +0 -0
  82. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/chunking/__init__.py +0 -0
  83. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/chunking/recursive/__init__.py +0 -0
  84. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/chunking/recursive/__main__.py +0 -0
  85. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/chunking/recursive/chunker.py +0 -0
  86. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/chunking/token/__init__.py +0 -0
  87. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/chunking/token/__main__.py +0 -0
  88. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/chunking/token/chunker.py +0 -0
  89. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/config/service/__init__.py +0 -0
  90. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/config/service/__main__.py +0 -0
  91. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/cores/__init__.py +0 -0
  92. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/cores/__main__.py +0 -0
  93. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/decoding/__init__.py +0 -0
  94. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/decoding/mistral_ocr/__init__.py +0 -0
  95. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/decoding/mistral_ocr/__main__.py +0 -0
  96. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/decoding/mistral_ocr/processor.py +0 -0
  97. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/decoding/pdf/__init__.py +0 -0
  98. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/decoding/pdf/__main__.py +0 -0
  99. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/decoding/pdf/pdf_decoder.py +0 -0
  100. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/direct/__init__.py +0 -0
  101. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/direct/cassandra.py +0 -0
  102. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/direct/milvus_doc_embeddings.py +0 -0
  103. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/direct/milvus_graph_embeddings.py +0 -0
  104. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/direct/milvus_object_embeddings.py +0 -0
  105. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/embeddings/__init__.py +0 -0
  106. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/embeddings/document_embeddings/__init__.py +0 -0
  107. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/embeddings/document_embeddings/__main__.py +0 -0
  108. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/embeddings/document_embeddings/embeddings.py +0 -0
  109. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/embeddings/fastembed/__init__.py +0 -0
  110. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/embeddings/fastembed/__main__.py +0 -0
  111. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/embeddings/fastembed/processor.py +0 -0
  112. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/embeddings/graph_embeddings/__init__.py +0 -0
  113. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/embeddings/graph_embeddings/__main__.py +0 -0
  114. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/embeddings/graph_embeddings/embeddings.py +0 -0
  115. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/embeddings/ollama/__init__.py +0 -0
  116. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/embeddings/ollama/__main__.py +0 -0
  117. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/embeddings/ollama/processor.py +0 -0
  118. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/external/__init__.py +0 -0
  119. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/external/wikipedia/__init__.py +0 -0
  120. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/external/wikipedia/__main__.py +0 -0
  121. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/external/wikipedia/service.py +0 -0
  122. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/extract/__init__.py +0 -0
  123. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/extract/kg/__init__.py +0 -0
  124. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/extract/kg/definitions/__init__.py +0 -0
  125. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/extract/kg/definitions/__main__.py +0 -0
  126. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/extract/kg/definitions/extract.py +0 -0
  127. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/extract/kg/relationships/__init__.py +0 -0
  128. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/extract/kg/relationships/__main__.py +0 -0
  129. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/extract/kg/relationships/extract.py +0 -0
  130. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/extract/kg/topics/__init__.py +0 -0
  131. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/extract/kg/topics/__main__.py +0 -0
  132. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/extract/kg/topics/extract.py +0 -0
  133. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/extract/object/__init__.py +0 -0
  134. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/extract/object/row/__init__.py +0 -0
  135. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/extract/object/row/__main__.py +0 -0
  136. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/extract/object/row/extract.py +0 -0
  137. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/__init__.py +0 -0
  138. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/__main__.py +0 -0
  139. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/auth.py +0 -0
  140. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/config/receiver.py +0 -0
  141. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/agent.py +0 -0
  142. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/config.py +0 -0
  143. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/document_embeddings_export.py +0 -0
  144. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/document_embeddings_import.py +0 -0
  145. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/document_load.py +0 -0
  146. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/document_rag.py +0 -0
  147. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/embeddings.py +0 -0
  148. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/flow.py +0 -0
  149. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/graph_embeddings_export.py +0 -0
  150. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/graph_embeddings_import.py +0 -0
  151. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/graph_embeddings_query.py +0 -0
  152. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/graph_rag.py +0 -0
  153. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/librarian.py +0 -0
  154. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/manager.py +0 -0
  155. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/mux.py +0 -0
  156. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/prompt.py +0 -0
  157. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/requestor.py +0 -0
  158. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/sender.py +0 -0
  159. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/serialize.py +0 -0
  160. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/streamer.py +0 -0
  161. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/text_completion.py +0 -0
  162. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/text_load.py +0 -0
  163. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/triples_export.py +0 -0
  164. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/triples_import.py +0 -0
  165. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/dispatch/triples_query.py +0 -0
  166. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/endpoint/constant_endpoint.py +0 -0
  167. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/endpoint/manager.py +0 -0
  168. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/endpoint/metrics.py +0 -0
  169. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/endpoint/socket.py +0 -0
  170. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/endpoint/variable_endpoint.py +0 -0
  171. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/running.py +0 -0
  172. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/service.py +0 -0
  173. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/unused/dbpedia.py +0 -0
  174. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/unused/encyclopedia.py +0 -0
  175. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/gateway/unused/internet_search.py +0 -0
  176. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/librarian/__init__.py +0 -0
  177. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/librarian/__main__.py +0 -0
  178. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/librarian/blob_store.py +0 -0
  179. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/librarian/librarian.py +0 -0
  180. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/librarian/service.py +0 -0
  181. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/metering/__init__.py +0 -0
  182. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/metering/__main__.py +0 -0
  183. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/metering/counter.py +0 -0
  184. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/__init__.py +0 -0
  185. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/prompt/__init__.py +0 -0
  186. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/prompt/generic/__init__.py +0 -0
  187. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/prompt/generic/__main__.py +0 -0
  188. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/prompt/generic/prompts.py +0 -0
  189. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/prompt/generic/service.py +0 -0
  190. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/prompt/template/__init__.py +0 -0
  191. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/prompt/template/__main__.py +0 -0
  192. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/prompt/template/prompt_manager.py +0 -0
  193. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/prompt/template/service.py +0 -0
  194. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/__init__.py +0 -0
  195. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/azure/__init__.py +0 -0
  196. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/azure/__main__.py +0 -0
  197. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/azure/llm.py +0 -0
  198. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/azure_openai/__init__.py +0 -0
  199. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/azure_openai/__main__.py +0 -0
  200. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/azure_openai/llm.py +0 -0
  201. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/claude/__init__.py +0 -0
  202. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/claude/__main__.py +0 -0
  203. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/claude/llm.py +0 -0
  204. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/cohere/__init__.py +0 -0
  205. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/cohere/__main__.py +0 -0
  206. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/cohere/llm.py +0 -0
  207. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/googleaistudio/__init__.py +0 -0
  208. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/googleaistudio/__main__.py +0 -0
  209. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/googleaistudio/llm.py +0 -0
  210. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/llamafile/__init__.py +0 -0
  211. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/llamafile/__main__.py +0 -0
  212. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/llamafile/llm.py +0 -0
  213. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/lmstudio/__init__.py +0 -0
  214. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/lmstudio/__main__.py +0 -0
  215. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/lmstudio/llm.py +0 -0
  216. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/mistral/__init__.py +0 -0
  217. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/mistral/__main__.py +0 -0
  218. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/mistral/llm.py +0 -0
  219. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/ollama/__init__.py +0 -0
  220. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/ollama/__main__.py +0 -0
  221. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/ollama/llm.py +0 -0
  222. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/openai/__init__.py +0 -0
  223. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/openai/__main__.py +0 -0
  224. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/model/text_completion/openai/llm.py +0 -0
  225. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/processing/__init__.py +0 -0
  226. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/processing/__main__.py +0 -0
  227. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/processing/processing.py +0 -0
  228. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/__init__.py +0 -0
  229. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/doc_embeddings/__init__.py +0 -0
  230. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/doc_embeddings/milvus/__init__.py +0 -0
  231. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/doc_embeddings/milvus/__main__.py +0 -0
  232. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/doc_embeddings/milvus/service.py +0 -0
  233. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/doc_embeddings/pinecone/__init__.py +0 -0
  234. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/doc_embeddings/pinecone/__main__.py +0 -0
  235. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/doc_embeddings/pinecone/service.py +0 -0
  236. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/doc_embeddings/qdrant/__init__.py +0 -0
  237. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/doc_embeddings/qdrant/__main__.py +0 -0
  238. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/doc_embeddings/qdrant/service.py +0 -0
  239. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/graph_embeddings/__init__.py +0 -0
  240. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/graph_embeddings/milvus/__init__.py +0 -0
  241. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/graph_embeddings/milvus/__main__.py +0 -0
  242. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/graph_embeddings/milvus/service.py +0 -0
  243. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/graph_embeddings/pinecone/__init__.py +0 -0
  244. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/graph_embeddings/pinecone/__main__.py +0 -0
  245. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/graph_embeddings/pinecone/service.py +0 -0
  246. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/graph_embeddings/qdrant/__init__.py +0 -0
  247. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/graph_embeddings/qdrant/__main__.py +0 -0
  248. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/graph_embeddings/qdrant/service.py +0 -0
  249. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/triples/__init__.py +0 -0
  250. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/triples/cassandra/__init__.py +0 -0
  251. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/triples/cassandra/__main__.py +0 -0
  252. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/triples/cassandra/service.py +0 -0
  253. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/triples/falkordb/__init__.py +0 -0
  254. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/triples/falkordb/__main__.py +0 -0
  255. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/triples/falkordb/service.py +0 -0
  256. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/triples/memgraph/__init__.py +0 -0
  257. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/triples/memgraph/__main__.py +0 -0
  258. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/triples/memgraph/service.py +0 -0
  259. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/triples/neo4j/__init__.py +0 -0
  260. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/triples/neo4j/__main__.py +0 -0
  261. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/query/triples/neo4j/service.py +0 -0
  262. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/retrieval/__init__.py +0 -0
  263. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/retrieval/document_rag/__init__.py +0 -0
  264. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/retrieval/document_rag/__main__.py +0 -0
  265. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/retrieval/document_rag/document_rag.py +0 -0
  266. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/retrieval/document_rag/rag.py +0 -0
  267. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/retrieval/graph_rag/__init__.py +0 -0
  268. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/retrieval/graph_rag/__main__.py +0 -0
  269. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/retrieval/graph_rag/graph_rag.py +0 -0
  270. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/retrieval/graph_rag/rag.py +0 -0
  271. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/__init__.py +0 -0
  272. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/doc_embeddings/__init__.py +0 -0
  273. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/doc_embeddings/milvus/__init__.py +0 -0
  274. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/doc_embeddings/milvus/__main__.py +0 -0
  275. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/doc_embeddings/milvus/write.py +0 -0
  276. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/doc_embeddings/pinecone/__init__.py +0 -0
  277. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/doc_embeddings/pinecone/__main__.py +0 -0
  278. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/doc_embeddings/pinecone/write.py +0 -0
  279. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/doc_embeddings/qdrant/__init__.py +0 -0
  280. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/doc_embeddings/qdrant/__main__.py +0 -0
  281. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/doc_embeddings/qdrant/write.py +0 -0
  282. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/graph_embeddings/__init__.py +0 -0
  283. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/graph_embeddings/milvus/__init__.py +0 -0
  284. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/graph_embeddings/milvus/__main__.py +0 -0
  285. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/graph_embeddings/milvus/write.py +0 -0
  286. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/graph_embeddings/pinecone/__init__.py +0 -0
  287. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/graph_embeddings/pinecone/__main__.py +0 -0
  288. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/graph_embeddings/pinecone/write.py +0 -0
  289. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/graph_embeddings/qdrant/__init__.py +0 -0
  290. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/graph_embeddings/qdrant/__main__.py +0 -0
  291. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/graph_embeddings/qdrant/write.py +0 -0
  292. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/knowledge/__init__.py +0 -0
  293. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/knowledge/__main__.py +0 -0
  294. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/knowledge/store.py +0 -0
  295. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/object_embeddings/__init__.py +0 -0
  296. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/object_embeddings/milvus/__init__.py +0 -0
  297. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/object_embeddings/milvus/__main__.py +0 -0
  298. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/object_embeddings/milvus/write.py +0 -0
  299. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/rows/__init__.py +0 -0
  300. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/rows/cassandra/__init__.py +0 -0
  301. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/rows/cassandra/__main__.py +0 -0
  302. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/rows/cassandra/write.py +0 -0
  303. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/triples/__init__.py +0 -0
  304. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/triples/cassandra/__init__.py +0 -0
  305. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/triples/cassandra/__main__.py +0 -0
  306. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/triples/cassandra/write.py +0 -0
  307. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/triples/falkordb/__init__.py +0 -0
  308. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/triples/falkordb/__main__.py +0 -0
  309. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/triples/falkordb/write.py +0 -0
  310. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/triples/memgraph/__init__.py +0 -0
  311. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/triples/memgraph/__main__.py +0 -0
  312. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/triples/memgraph/write.py +0 -0
  313. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/triples/neo4j/__init__.py +0 -0
  314. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/triples/neo4j/__main__.py +0 -0
  315. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/storage/triples/neo4j/write.py +0 -0
  316. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/tables/__init__.py +0 -0
  317. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/tables/knowledge.py +0 -0
  318. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph/tables/library.py +0 -0
  319. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph_flow.egg-info/dependency_links.txt +0 -0
  320. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph_flow.egg-info/requires.txt +0 -0
  321. {trustgraph-flow-0.23.15 → trustgraph-flow-0.23.17}/trustgraph_flow.egg-info/top_level.txt +0 -0
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: trustgraph-flow
3
- Version: 0.23.15
3
+ Version: 0.23.17
4
4
  Summary: TrustGraph provides a means to run a pipeline of flexible AI processing components in a flexible means to achieve a processing pipeline.
5
5
  Home-page: https://github.com/trustgraph-ai/trustgraph
6
- Download-URL: https://github.com/trustgraph-ai/trustgraph/archive/refs/tags/v0.23.15.tar.gz
6
+ Download-URL: https://github.com/trustgraph-ai/trustgraph/archive/refs/tags/v0.23.17.tar.gz
7
7
  Author: trustgraph.ai
8
8
  Author-email: security@trustgraph.ai
9
9
  Classifier: Programming Language :: Python :: 3
@@ -0,0 +1,269 @@
1
+
2
+ from trustgraph.schema import ConfigResponse
3
+ from trustgraph.schema import ConfigValue, Error
4
+
5
+ from ... tables.config import ConfigTableStore
6
+
7
+ class ConfigurationClass:
8
+
9
+ async def keys(self):
10
+ return await self.table_store.get_keys(self.type)
11
+
12
+ async def values(self):
13
+ vals = await self.table_store.get_values(self.type)
14
+ return {
15
+ v[0]: v[1]
16
+ for v in vals
17
+ }
18
+
19
+ async def get(self, key):
20
+ return await self.table_store.get_value(self.type, key)
21
+
22
+ async def put(self, key, value):
23
+ return await self.table_store.put_config(self.type, key, value)
24
+
25
+ async def delete(self, key):
26
+ return await self.table_store.delete_key(self.type, key)
27
+
28
+ async def has(self, key):
29
+ val = await self.table_store.get_value(self.type, key)
30
+ return val is not None
31
+
32
+ class Configuration:
33
+
34
+ # FIXME: The state is held internally. This only works if there's
35
+ # one config service. Should be more than one, and use a
36
+ # back-end state store.
37
+
38
+ # FIXME: This has state now, but does it address all of the above?
39
+ # REVIEW: Above
40
+
41
+ # FIXME: Some version vs config race conditions
42
+
43
+ def __init__(self, push, host, user, password, keyspace):
44
+
45
+ # External function to respond to update
46
+ self.push = push
47
+
48
+ self.table_store = ConfigTableStore(
49
+ host, user, password, keyspace
50
+ )
51
+
52
+ async def inc_version(self):
53
+ await self.table_store.inc_version()
54
+
55
+ async def get_version(self):
56
+ return await self.table_store.get_version()
57
+
58
+ def get(self, type):
59
+
60
+ c = ConfigurationClass()
61
+ c.table_store = self.table_store
62
+ c.type = type
63
+
64
+ return c
65
+
66
+ async def handle_get(self, v):
67
+
68
+ # for k in v.keys:
69
+ # if k.type not in self or k.key not in self[k.type]:
70
+ # return ConfigResponse(
71
+ # version = None,
72
+ # values = None,
73
+ # directory = None,
74
+ # config = None,
75
+ # error = Error(
76
+ # type = "key-error",
77
+ # message = f"Key error"
78
+ # )
79
+ # )
80
+
81
+ values = [
82
+ ConfigValue(
83
+ type = k.type,
84
+ key = k.key,
85
+ value = await self.table_store.get_value(k.type, k.key)
86
+ )
87
+ for k in v.keys
88
+ ]
89
+
90
+ return ConfigResponse(
91
+ version = await self.get_version(),
92
+ values = values,
93
+ directory = None,
94
+ config = None,
95
+ error = None,
96
+ )
97
+
98
+ async def handle_list(self, v):
99
+
100
+ # if v.type not in self:
101
+
102
+ # return ConfigResponse(
103
+ # version = None,
104
+ # values = None,
105
+ # directory = None,
106
+ # config = None,
107
+ # error = Error(
108
+ # type = "key-error",
109
+ # message = "No such type",
110
+ # ),
111
+ # )
112
+
113
+ return ConfigResponse(
114
+ version = await self.get_version(),
115
+ values = None,
116
+ directory = await self.table_store.get_keys(v.type),
117
+ config = None,
118
+ error = None,
119
+ )
120
+
121
+ async def handle_getvalues(self, v):
122
+
123
+ if v.type not in self:
124
+
125
+ return ConfigResponse(
126
+ version = None,
127
+ values = None,
128
+ directory = None,
129
+ config = None,
130
+ error = Error(
131
+ type = "key-error",
132
+ message = f"Key error"
133
+ )
134
+ )
135
+
136
+ v = await self.table_store.get_values(v.type)
137
+
138
+ values = map(
139
+ lambda x: ConfigValue(
140
+ type = v.type, key = x[0], value = x[1]
141
+ ),
142
+ v
143
+ )
144
+
145
+ return ConfigResponse(
146
+ version = await self.get_version(),
147
+ values = values,
148
+ directory = None,
149
+ config = None,
150
+ error = None,
151
+ )
152
+
153
+ async def handle_delete(self, v):
154
+
155
+ # for k in v.keys:
156
+ # if k.type not in self or k.key not in self[k.type]:
157
+ # return ConfigResponse(
158
+ # version = None,
159
+ # values = None,
160
+ # directory = None,
161
+ # config = None,
162
+ # error = Error(
163
+ # type = "key-error",
164
+ # message = f"Key error"
165
+ # )
166
+ # )
167
+
168
+ for k in v.keys:
169
+
170
+ await self.table_store.delete_key(k.type, k.key)
171
+
172
+ await self.inc_version()
173
+
174
+ await self.push()
175
+
176
+ return ConfigResponse(
177
+ version = None,
178
+ value = None,
179
+ directory = None,
180
+ values = None,
181
+ config = None,
182
+ error = None,
183
+ )
184
+
185
+ async def handle_put(self, v):
186
+
187
+ for k in v.values:
188
+
189
+ await self.table_store.put_config(k.type, k.key, k.value)
190
+
191
+ await self.inc_version()
192
+
193
+ await self.push()
194
+
195
+ return ConfigResponse(
196
+ version = None,
197
+ value = None,
198
+ directory = None,
199
+ values = None,
200
+ error = None,
201
+ )
202
+
203
+ async def get_config(self):
204
+
205
+ table = await self.table_store.get_all()
206
+
207
+ config = {}
208
+
209
+ for row in table:
210
+ if row[0] not in config:
211
+ config[row[0]] = {}
212
+ config[row[0]][row[1]] = row[2]
213
+
214
+ return config
215
+
216
+ async def handle_config(self, v):
217
+
218
+ config = await self.get_config()
219
+
220
+ return ConfigResponse(
221
+ version = await self.get_version(),
222
+ value = None,
223
+ directory = None,
224
+ values = None,
225
+ config = config,
226
+ error = None,
227
+ )
228
+
229
+ async def handle(self, msg):
230
+
231
+ print("Handle message ", msg.operation)
232
+
233
+ if msg.operation == "get":
234
+
235
+ resp = await self.handle_get(msg)
236
+
237
+ elif msg.operation == "list":
238
+
239
+ resp = await self.handle_list(msg)
240
+
241
+ elif msg.operation == "getvalues":
242
+
243
+ resp = await self.handle_getvalues(msg)
244
+
245
+ elif msg.operation == "delete":
246
+
247
+ resp = await self.handle_delete(msg)
248
+
249
+ elif msg.operation == "put":
250
+
251
+ resp = await self.handle_put(msg)
252
+
253
+ elif msg.operation == "config":
254
+
255
+ resp = await self.handle_config(msg)
256
+
257
+ else:
258
+
259
+ resp = ConfigResponse(
260
+ value=None,
261
+ directory=None,
262
+ values=None,
263
+ error=Error(
264
+ type = "bad-operation",
265
+ message = "Bad operation"
266
+ )
267
+ )
268
+
269
+ return resp
@@ -9,7 +9,7 @@ class FlowConfig:
9
9
 
10
10
  async def handle_list_classes(self, msg):
11
11
 
12
- names = list(self.config["flow-classes"].keys())
12
+ names = list(await self.config.get("flow-classes").keys())
13
13
 
14
14
  return FlowResponse(
15
15
  error = None,
@@ -20,14 +20,18 @@ class FlowConfig:
20
20
 
21
21
  return FlowResponse(
22
22
  error = None,
23
- class_definition = self.config["flow-classes"][msg.class_name],
23
+ class_definition = await self.config.get(
24
+ "flow-classes"
25
+ ).get(msg.class_name),
24
26
  )
25
27
 
26
28
  async def handle_put_class(self, msg):
27
29
 
28
- self.config["flow-classes"][msg.class_name] = msg.class_definition
30
+ await self.config.get("flow-classes").put(
31
+ msg.class_name, msg.class_definition
32
+ )
29
33
 
30
- self.config.version += 1
34
+ await self.config.inc_version()
31
35
 
32
36
  await self.config.push()
33
37
 
@@ -39,9 +43,9 @@ class FlowConfig:
39
43
 
40
44
  print(msg)
41
45
 
42
- del self.config["flow-classes"][msg.class_name]
46
+ await self.config.get("flow-classes").delete(msg.class_name)
43
47
 
44
- self.config.version += 1
48
+ await self.config.inc_version()
45
49
 
46
50
  await self.config.push()
47
51
 
@@ -51,7 +55,7 @@ class FlowConfig:
51
55
 
52
56
  async def handle_list_flows(self, msg):
53
57
 
54
- names = list(self.config["flows"].keys())
58
+ names = list(await self.config.get("flows").keys())
55
59
 
56
60
  return FlowResponse(
57
61
  error = None,
@@ -60,7 +64,7 @@ class FlowConfig:
60
64
 
61
65
  async def handle_get_flow(self, msg):
62
66
 
63
- flow = self.config["flows"][msg.flow_id]
67
+ flow = await self.config.get("flows").get(msg.flow_id)
64
68
 
65
69
  return FlowResponse(
66
70
  error = None,
@@ -75,13 +79,13 @@ class FlowConfig:
75
79
  if msg.flow_id is None:
76
80
  raise RuntimeError("No flow ID")
77
81
 
78
- if msg.flow_id in self.config["flows"]:
82
+ if msg.flow_id in await self.config.get("flows").values():
79
83
  raise RuntimeError("Flow already exists")
80
84
 
81
85
  if msg.description is None:
82
86
  raise RuntimeError("No description")
83
87
 
84
- if msg.class_name not in self.config["flow-classes"]:
88
+ if msg.class_name not in await self.config.get("flow-classes").values():
85
89
  raise RuntimeError("Class does not exist")
86
90
 
87
91
  def repl_template(tmp):
@@ -91,7 +95,9 @@ class FlowConfig:
91
95
  "{id}", msg.flow_id
92
96
  )
93
97
 
94
- cls = json.loads(self.config["flow-classes"][msg.class_name])
98
+ cls = json.loads(
99
+ await self.config.get("flow-classes").get(msg.class_name)
100
+ )
95
101
 
96
102
  for kind in ("class", "flow"):
97
103
 
@@ -106,15 +112,18 @@ class FlowConfig:
106
112
  for k2, v2 in v.items()
107
113
  }
108
114
 
109
- if processor in self.config["flows-active"]:
110
- target = json.loads(self.config["flows-active"][processor])
115
+ flac = await self.config.get("flows-active").values()
116
+ if processor in flac:
117
+ target = json.loads(flac[processor])
111
118
  else:
112
119
  target = {}
113
120
 
114
121
  if variant not in target:
115
122
  target[variant] = v
116
123
 
117
- self.config["flows-active"][processor] = json.dumps(target)
124
+ await self.config.get("flows-active").put(
125
+ processor, json.dumps(target)
126
+ )
118
127
 
119
128
  def repl_interface(i):
120
129
  if isinstance(i, str):
@@ -133,13 +142,16 @@ class FlowConfig:
133
142
  else:
134
143
  interfaces = {}
135
144
 
136
- self.config["flows"][msg.flow_id] = json.dumps({
137
- "description": msg.description,
138
- "class-name": msg.class_name,
139
- "interfaces": interfaces,
140
- })
145
+ await self.config.get("flows").put(
146
+ msg.flow_id,
147
+ json.dumps({
148
+ "description": msg.description,
149
+ "class-name": msg.class_name,
150
+ "interfaces": interfaces,
151
+ })
152
+ )
141
153
 
142
- self.config.version += 1
154
+ await self.config.inc_version()
143
155
 
144
156
  await self.config.push()
145
157
 
@@ -152,17 +164,17 @@ class FlowConfig:
152
164
  if msg.flow_id is None:
153
165
  raise RuntimeError("No flow ID")
154
166
 
155
- if msg.flow_id not in self.config["flows"]:
167
+ if msg.flow_id not in await self.config.get("flows").keys():
156
168
  raise RuntimeError("Flow ID invalid")
157
169
 
158
- flow = json.loads(self.config["flows"][msg.flow_id])
170
+ flow = json.loads(await self.config.get("flows").get(msg.flow_id))
159
171
 
160
172
  if "class-name" not in flow:
161
173
  raise RuntimeError("Internal error: flow has no flow class")
162
174
 
163
175
  class_name = flow["class-name"]
164
176
 
165
- cls = json.loads(self.config["flow-classes"][class_name])
177
+ cls = json.loads(await self.config.get("flow-classes").get(class_name))
166
178
 
167
179
  def repl_template(tmp):
168
180
  return tmp.replace(
@@ -179,20 +191,24 @@ class FlowConfig:
179
191
 
180
192
  variant = repl_template(variant)
181
193
 
182
- if processor in self.config["flows-active"]:
183
- target = json.loads(self.config["flows-active"][processor])
194
+ flac = await self.config.get("flows-active").values()
195
+
196
+ if processor in flac:
197
+ target = json.loads(flac[processor])
184
198
  else:
185
199
  target = {}
186
200
 
187
201
  if variant in target:
188
202
  del target[variant]
189
203
 
190
- self.config["flows-active"][processor] = json.dumps(target)
204
+ await self.config.get("flows-active").put(
205
+ processor, json.dumps(target)
206
+ )
191
207
 
192
- if msg.flow_id in self.config["flows"]:
193
- del self.config["flows"][msg.flow_id]
208
+ if msg.flow_id in await self.config.get("flows").values():
209
+ await self.config.get("flows").delete(msg.flow_id)
194
210
 
195
- self.config.version += 1
211
+ await self.config.inc_version()
196
212
 
197
213
  await self.config.push()
198
214
 
@@ -20,6 +20,9 @@ from . flow import FlowConfig
20
20
  from ... base import ProcessorMetrics, ConsumerMetrics, ProducerMetrics
21
21
  from ... base import Consumer, Producer
22
22
 
23
+ # FIXME: How to ensure this doesn't conflict with other usage?
24
+ keyspace = "config"
25
+
23
26
  default_ident = "config-svc"
24
27
 
25
28
  default_config_request_queue = config_request_queue
@@ -29,6 +32,8 @@ default_config_push_queue = config_push_queue
29
32
  default_flow_request_queue = flow_request_queue
30
33
  default_flow_response_queue = flow_response_queue
31
34
 
35
+ default_cassandra_host = "cassandra"
36
+
32
37
  class Processor(AsyncProcessor):
33
38
 
34
39
  def __init__(self, **params):
@@ -50,6 +55,10 @@ class Processor(AsyncProcessor):
50
55
  "flow_response_queue", default_flow_response_queue
51
56
  )
52
57
 
58
+ cassandra_host = params.get("cassandra_host", default_cassandra_host)
59
+ cassandra_user = params.get("cassandra_user")
60
+ cassandra_password = params.get("cassandra_password")
61
+
53
62
  id = params.get("id")
54
63
 
55
64
  flow_request_schema = FlowRequest
@@ -62,6 +71,8 @@ class Processor(AsyncProcessor):
62
71
  "config_push_schema": ConfigPush.__name__,
63
72
  "flow_request_schema": FlowRequest.__name__,
64
73
  "flow_response_schema": FlowResponse.__name__,
74
+ "cassandra_host": cassandra_host,
75
+ "cassandra_user": cassandra_user,
65
76
  }
66
77
  )
67
78
 
@@ -125,7 +136,14 @@ class Processor(AsyncProcessor):
125
136
  metrics = flow_response_metrics,
126
137
  )
127
138
 
128
- self.config = Configuration(self.push)
139
+ self.config = Configuration(
140
+ host = cassandra_host.split(","),
141
+ user = cassandra_user,
142
+ password = cassandra_password,
143
+ keyspace = keyspace,
144
+ push = self.push
145
+ )
146
+
129
147
  self.flow = FlowConfig(self.config)
130
148
 
131
149
  print("Service initialised.")
@@ -138,18 +156,23 @@ class Processor(AsyncProcessor):
138
156
 
139
157
  async def push(self):
140
158
 
159
+ config = await self.config.get_config()
160
+ version = await self.config.get_version()
161
+
141
162
  resp = ConfigPush(
142
- version = self.config.version,
163
+ version = version,
143
164
  value = None,
144
165
  directory = None,
145
166
  values = None,
146
- config = self.config,
167
+ config = config,
147
168
  error = None,
148
169
  )
149
170
 
150
171
  await self.config_push_producer.send(resp)
151
172
 
152
- print("Pushed version ", self.config.version)
173
+ # Race condition, should make sure version & config sync
174
+
175
+ print("Pushed version ", await self.config.get_version())
153
176
 
154
177
  async def on_config_request(self, msg, consumer, flow):
155
178
 
@@ -248,6 +271,24 @@ class Processor(AsyncProcessor):
248
271
  help=f'Flow response queue {default_flow_response_queue}',
249
272
  )
250
273
 
274
+ parser.add_argument(
275
+ '--cassandra-host',
276
+ default="cassandra",
277
+ help=f'Graph host (default: cassandra)'
278
+ )
279
+
280
+ parser.add_argument(
281
+ '--cassandra-user',
282
+ default=None,
283
+ help=f'Cassandra user'
284
+ )
285
+
286
+ parser.add_argument(
287
+ '--cassandra-password',
288
+ default=None,
289
+ help=f'Cassandra password'
290
+ )
291
+
251
292
  def run():
252
293
 
253
294
  Processor.launch(default_ident, __doc__)
@@ -36,9 +36,9 @@ class KnowledgeManager:
36
36
  )
37
37
  )
38
38
 
39
- async def fetch_kg_core(self, request, respond):
39
+ async def get_kg_core(self, request, respond):
40
40
 
41
- print("Fetch core...", flush=True)
41
+ print("Get core...", flush=True)
42
42
 
43
43
  async def publish_triples(t):
44
44
  await respond(
@@ -76,7 +76,7 @@ class KnowledgeManager:
76
76
  publish_ge,
77
77
  )
78
78
 
79
- print("Fetch complete", flush=True)
79
+ print("Get complete", flush=True)
80
80
 
81
81
  await respond(
82
82
  KnowledgeResponse(
@@ -102,3 +102,23 @@ class KnowledgeManager:
102
102
  )
103
103
  )
104
104
 
105
+ async def put_kg_core(self, request, respond):
106
+
107
+ if request.triples:
108
+ await self.table_store.add_triples(request.triples)
109
+
110
+ if request.graph_embeddings:
111
+ await self.table_store.add_graph_embeddings(
112
+ request.graph_embeddings
113
+ )
114
+
115
+ await respond(
116
+ KnowledgeResponse(
117
+ error = None,
118
+ ids = None,
119
+ eos = False,
120
+ triples = None,
121
+ graph_embeddings = None
122
+ )
123
+ )
124
+
@@ -125,8 +125,9 @@ class Processor(AsyncProcessor):
125
125
 
126
126
  impls = {
127
127
  "list-kg-cores": self.knowledge.list_kg_cores,
128
- "fetch-kg-core": self.knowledge.fetch_kg_core,
128
+ "get-kg-core": self.knowledge.get_kg_core,
129
129
  "delete-kg-core": self.knowledge.delete_kg_core,
130
+ "put-kg-core": self.knowledge.put_kg_core,
130
131
  }
131
132
 
132
133
  if v.operation not in impls:
@@ -150,12 +151,10 @@ class Processor(AsyncProcessor):
150
151
 
151
152
  try:
152
153
 
154
+ # We don't send a response back here, the processing
155
+ # implementation sends whatever it needs to send.
153
156
  await self.process_request(v, id)
154
157
 
155
- # await self.knowledge_response_producer.send(
156
- # resp, properties={"id": id}
157
- # )
158
-
159
158
  return
160
159
 
161
160
  except RequestError as e:
@@ -0,0 +1 @@
1
+ __version__ = "0.23.17"