trustgraph-flow 1.3.4__tar.gz → 1.3.6__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 (295) hide show
  1. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/PKG-INFO +1 -1
  2. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/pyproject.toml +1 -0
  3. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/config/service/service.py +21 -23
  4. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/cores/service.py +21 -23
  5. trustgraph_flow-1.3.6/trustgraph/flow_version.py +1 -0
  6. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/librarian/service.py +21 -23
  7. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/objects/cassandra/service.py +1 -1
  8. trustgraph_flow-1.3.6/trustgraph/retrieval/nlp_query/__init__.py +1 -0
  9. trustgraph_flow-1.3.6/trustgraph/retrieval/nlp_query/__main__.py +5 -0
  10. trustgraph_flow-1.3.6/trustgraph/retrieval/nlp_query/service.py +303 -0
  11. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph_flow.egg-info/PKG-INFO +1 -1
  12. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph_flow.egg-info/SOURCES.txt +3 -0
  13. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph_flow.egg-info/entry_points.txt +1 -0
  14. trustgraph_flow-1.3.4/trustgraph/flow_version.py +0 -1
  15. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/README.md +0 -0
  16. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/setup.cfg +0 -0
  17. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/__init__.py +0 -0
  18. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/agent/__init__.py +0 -0
  19. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/agent/mcp_tool/__init__.py +0 -0
  20. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/agent/mcp_tool/__main__.py +0 -0
  21. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/agent/mcp_tool/service.py +0 -0
  22. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/agent/react/__init__.py +0 -0
  23. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/agent/react/__main__.py +0 -0
  24. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/agent/react/agent_manager.py +0 -0
  25. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/agent/react/service.py +0 -0
  26. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/agent/react/tools.py +0 -0
  27. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/agent/react/types.py +0 -0
  28. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/agent/tool_filter.py +0 -0
  29. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/chunking/__init__.py +0 -0
  30. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/chunking/recursive/__init__.py +0 -0
  31. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/chunking/recursive/__main__.py +0 -0
  32. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/chunking/recursive/chunker.py +0 -0
  33. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/chunking/token/__init__.py +0 -0
  34. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/chunking/token/__main__.py +0 -0
  35. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/chunking/token/chunker.py +0 -0
  36. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/config/service/__init__.py +0 -0
  37. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/config/service/__main__.py +0 -0
  38. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/config/service/config.py +0 -0
  39. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/config/service/flow.py +0 -0
  40. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/cores/__init__.py +0 -0
  41. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/cores/__main__.py +0 -0
  42. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/cores/knowledge.py +0 -0
  43. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/decoding/__init__.py +0 -0
  44. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/decoding/mistral_ocr/__init__.py +0 -0
  45. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/decoding/mistral_ocr/__main__.py +0 -0
  46. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/decoding/mistral_ocr/processor.py +0 -0
  47. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/decoding/pdf/__init__.py +0 -0
  48. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/decoding/pdf/__main__.py +0 -0
  49. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/decoding/pdf/pdf_decoder.py +0 -0
  50. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/direct/__init__.py +0 -0
  51. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/direct/cassandra.py +0 -0
  52. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/direct/milvus_doc_embeddings.py +0 -0
  53. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/direct/milvus_graph_embeddings.py +0 -0
  54. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/direct/milvus_object_embeddings.py +0 -0
  55. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/embeddings/__init__.py +0 -0
  56. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/embeddings/document_embeddings/__init__.py +0 -0
  57. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/embeddings/document_embeddings/__main__.py +0 -0
  58. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/embeddings/document_embeddings/embeddings.py +0 -0
  59. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/embeddings/fastembed/__init__.py +0 -0
  60. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/embeddings/fastembed/__main__.py +0 -0
  61. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/embeddings/fastembed/processor.py +0 -0
  62. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/embeddings/graph_embeddings/__init__.py +0 -0
  63. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/embeddings/graph_embeddings/__main__.py +0 -0
  64. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/embeddings/graph_embeddings/embeddings.py +0 -0
  65. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/embeddings/ollama/__init__.py +0 -0
  66. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/embeddings/ollama/__main__.py +0 -0
  67. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/embeddings/ollama/processor.py +0 -0
  68. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/external/__init__.py +0 -0
  69. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/external/wikipedia/__init__.py +0 -0
  70. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/external/wikipedia/__main__.py +0 -0
  71. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/external/wikipedia/service.py +0 -0
  72. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/extract/__init__.py +0 -0
  73. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/extract/kg/__init__.py +0 -0
  74. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/extract/kg/agent/__init__.py +0 -0
  75. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/extract/kg/agent/__main__.py +0 -0
  76. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/extract/kg/agent/extract.py +0 -0
  77. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/extract/kg/definitions/__init__.py +0 -0
  78. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/extract/kg/definitions/__main__.py +0 -0
  79. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/extract/kg/definitions/extract.py +0 -0
  80. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/extract/kg/objects/__init__.py +0 -0
  81. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/extract/kg/objects/__main__.py +0 -0
  82. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/extract/kg/objects/processor.py +0 -0
  83. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/extract/kg/relationships/__init__.py +0 -0
  84. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/extract/kg/relationships/__main__.py +0 -0
  85. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/extract/kg/relationships/extract.py +0 -0
  86. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/extract/kg/topics/__init__.py +0 -0
  87. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/extract/kg/topics/__main__.py +0 -0
  88. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/extract/kg/topics/extract.py +0 -0
  89. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/__init__.py +0 -0
  90. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/__main__.py +0 -0
  91. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/auth.py +0 -0
  92. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/config/receiver.py +0 -0
  93. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/agent.py +0 -0
  94. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/config.py +0 -0
  95. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/core_export.py +0 -0
  96. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/core_import.py +0 -0
  97. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/document_embeddings_export.py +0 -0
  98. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/document_embeddings_import.py +0 -0
  99. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/document_load.py +0 -0
  100. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/document_rag.py +0 -0
  101. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/embeddings.py +0 -0
  102. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/entity_contexts_export.py +0 -0
  103. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/entity_contexts_import.py +0 -0
  104. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/flow.py +0 -0
  105. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/graph_embeddings_export.py +0 -0
  106. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/graph_embeddings_import.py +0 -0
  107. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/graph_embeddings_query.py +0 -0
  108. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/graph_rag.py +0 -0
  109. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/knowledge.py +0 -0
  110. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/librarian.py +0 -0
  111. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/manager.py +0 -0
  112. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/mcp_tool.py +0 -0
  113. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/mux.py +0 -0
  114. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/objects_query.py +0 -0
  115. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/prompt.py +0 -0
  116. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/requestor.py +0 -0
  117. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/sender.py +0 -0
  118. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/serialize.py +0 -0
  119. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/streamer.py +0 -0
  120. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/text_completion.py +0 -0
  121. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/text_load.py +0 -0
  122. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/triples_export.py +0 -0
  123. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/triples_import.py +0 -0
  124. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/dispatch/triples_query.py +0 -0
  125. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/endpoint/constant_endpoint.py +0 -0
  126. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/endpoint/manager.py +0 -0
  127. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/endpoint/metrics.py +0 -0
  128. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/endpoint/socket.py +0 -0
  129. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/endpoint/stream_endpoint.py +0 -0
  130. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/endpoint/variable_endpoint.py +0 -0
  131. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/running.py +0 -0
  132. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/service.py +0 -0
  133. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/unused/dbpedia.py +0 -0
  134. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/unused/encyclopedia.py +0 -0
  135. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/gateway/unused/internet_search.py +0 -0
  136. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/librarian/__init__.py +0 -0
  137. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/librarian/__main__.py +0 -0
  138. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/librarian/blob_store.py +0 -0
  139. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/librarian/librarian.py +0 -0
  140. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/metering/__init__.py +0 -0
  141. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/metering/__main__.py +0 -0
  142. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/metering/counter.py +0 -0
  143. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/__init__.py +0 -0
  144. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/__init__.py +0 -0
  145. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/azure/__init__.py +0 -0
  146. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/azure/__main__.py +0 -0
  147. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/azure/llm.py +0 -0
  148. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/azure_openai/__init__.py +0 -0
  149. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/azure_openai/__main__.py +0 -0
  150. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/azure_openai/llm.py +0 -0
  151. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/claude/__init__.py +0 -0
  152. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/claude/__main__.py +0 -0
  153. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/claude/llm.py +0 -0
  154. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/cohere/__init__.py +0 -0
  155. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/cohere/__main__.py +0 -0
  156. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/cohere/llm.py +0 -0
  157. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/googleaistudio/__init__.py +0 -0
  158. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/googleaistudio/__main__.py +0 -0
  159. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/googleaistudio/llm.py +0 -0
  160. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/llamafile/__init__.py +0 -0
  161. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/llamafile/__main__.py +0 -0
  162. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/llamafile/llm.py +0 -0
  163. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/lmstudio/__init__.py +0 -0
  164. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/lmstudio/__main__.py +0 -0
  165. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/lmstudio/llm.py +0 -0
  166. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/mistral/__init__.py +0 -0
  167. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/mistral/__main__.py +0 -0
  168. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/mistral/llm.py +0 -0
  169. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/ollama/__init__.py +0 -0
  170. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/ollama/__main__.py +0 -0
  171. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/ollama/llm.py +0 -0
  172. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/openai/__init__.py +0 -0
  173. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/openai/__main__.py +0 -0
  174. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/openai/llm.py +0 -0
  175. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/tgi/__init__.py +0 -0
  176. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/tgi/__main__.py +0 -0
  177. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/tgi/llm.py +0 -0
  178. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/vllm/__init__.py +0 -0
  179. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/vllm/__main__.py +0 -0
  180. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/model/text_completion/vllm/llm.py +0 -0
  181. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/processing/__init__.py +0 -0
  182. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/processing/__main__.py +0 -0
  183. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/processing/processing.py +0 -0
  184. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/prompt/__init__.py +0 -0
  185. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/prompt/template/__init__.py +0 -0
  186. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/prompt/template/__main__.py +0 -0
  187. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/prompt/template/service.py +0 -0
  188. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/__init__.py +0 -0
  189. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/doc_embeddings/__init__.py +0 -0
  190. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/doc_embeddings/milvus/__init__.py +0 -0
  191. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/doc_embeddings/milvus/__main__.py +0 -0
  192. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/doc_embeddings/milvus/service.py +0 -0
  193. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/doc_embeddings/pinecone/__init__.py +0 -0
  194. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/doc_embeddings/pinecone/__main__.py +0 -0
  195. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/doc_embeddings/pinecone/service.py +0 -0
  196. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/doc_embeddings/qdrant/__init__.py +0 -0
  197. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/doc_embeddings/qdrant/__main__.py +0 -0
  198. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/doc_embeddings/qdrant/service.py +0 -0
  199. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/graph_embeddings/__init__.py +0 -0
  200. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/graph_embeddings/milvus/__init__.py +0 -0
  201. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/graph_embeddings/milvus/__main__.py +0 -0
  202. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/graph_embeddings/milvus/service.py +0 -0
  203. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/graph_embeddings/pinecone/__init__.py +0 -0
  204. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/graph_embeddings/pinecone/__main__.py +0 -0
  205. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/graph_embeddings/pinecone/service.py +0 -0
  206. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/graph_embeddings/qdrant/__init__.py +0 -0
  207. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/graph_embeddings/qdrant/__main__.py +0 -0
  208. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/graph_embeddings/qdrant/service.py +0 -0
  209. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/objects/__init__.py +0 -0
  210. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/objects/cassandra/__init__.py +0 -0
  211. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/objects/cassandra/__main__.py +0 -0
  212. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/triples/__init__.py +0 -0
  213. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/triples/cassandra/__init__.py +0 -0
  214. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/triples/cassandra/__main__.py +0 -0
  215. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/triples/cassandra/service.py +0 -0
  216. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/triples/falkordb/__init__.py +0 -0
  217. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/triples/falkordb/__main__.py +0 -0
  218. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/triples/falkordb/service.py +0 -0
  219. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/triples/memgraph/__init__.py +0 -0
  220. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/triples/memgraph/__main__.py +0 -0
  221. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/triples/memgraph/service.py +0 -0
  222. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/triples/neo4j/__init__.py +0 -0
  223. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/triples/neo4j/__main__.py +0 -0
  224. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/query/triples/neo4j/service.py +0 -0
  225. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/retrieval/__init__.py +0 -0
  226. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/retrieval/document_rag/__init__.py +0 -0
  227. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/retrieval/document_rag/__main__.py +0 -0
  228. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/retrieval/document_rag/document_rag.py +0 -0
  229. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/retrieval/document_rag/rag.py +0 -0
  230. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/retrieval/graph_rag/__init__.py +0 -0
  231. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/retrieval/graph_rag/__main__.py +0 -0
  232. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/retrieval/graph_rag/graph_rag.py +0 -0
  233. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/retrieval/graph_rag/rag.py +0 -0
  234. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/rev_gateway/__init__.py +0 -0
  235. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/rev_gateway/__main__.py +0 -0
  236. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/rev_gateway/dispatcher.py +0 -0
  237. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/rev_gateway/service.py +0 -0
  238. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/__init__.py +0 -0
  239. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/doc_embeddings/__init__.py +0 -0
  240. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/doc_embeddings/milvus/__init__.py +0 -0
  241. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/doc_embeddings/milvus/__main__.py +0 -0
  242. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/doc_embeddings/milvus/write.py +0 -0
  243. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/doc_embeddings/pinecone/__init__.py +0 -0
  244. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/doc_embeddings/pinecone/__main__.py +0 -0
  245. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/doc_embeddings/pinecone/write.py +0 -0
  246. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/doc_embeddings/qdrant/__init__.py +0 -0
  247. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/doc_embeddings/qdrant/__main__.py +0 -0
  248. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/doc_embeddings/qdrant/write.py +0 -0
  249. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/graph_embeddings/__init__.py +0 -0
  250. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/graph_embeddings/milvus/__init__.py +0 -0
  251. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/graph_embeddings/milvus/__main__.py +0 -0
  252. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/graph_embeddings/milvus/write.py +0 -0
  253. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/graph_embeddings/pinecone/__init__.py +0 -0
  254. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/graph_embeddings/pinecone/__main__.py +0 -0
  255. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/graph_embeddings/pinecone/write.py +0 -0
  256. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/graph_embeddings/qdrant/__init__.py +0 -0
  257. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/graph_embeddings/qdrant/__main__.py +0 -0
  258. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/graph_embeddings/qdrant/write.py +0 -0
  259. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/knowledge/__init__.py +0 -0
  260. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/knowledge/__main__.py +0 -0
  261. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/knowledge/store.py +0 -0
  262. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/object_embeddings/__init__.py +0 -0
  263. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/object_embeddings/milvus/__init__.py +0 -0
  264. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/object_embeddings/milvus/__main__.py +0 -0
  265. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/object_embeddings/milvus/write.py +0 -0
  266. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/objects/__init__.py +0 -0
  267. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/objects/cassandra/__init__.py +0 -0
  268. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/objects/cassandra/__main__.py +0 -0
  269. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/objects/cassandra/write.py +0 -0
  270. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/rows/__init__.py +0 -0
  271. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/rows/cassandra/__init__.py +0 -0
  272. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/rows/cassandra/__main__.py +0 -0
  273. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/rows/cassandra/write.py +0 -0
  274. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/triples/__init__.py +0 -0
  275. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/triples/cassandra/__init__.py +0 -0
  276. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/triples/cassandra/__main__.py +0 -0
  277. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/triples/cassandra/write.py +0 -0
  278. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/triples/falkordb/__init__.py +0 -0
  279. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/triples/falkordb/__main__.py +0 -0
  280. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/triples/falkordb/write.py +0 -0
  281. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/triples/memgraph/__init__.py +0 -0
  282. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/triples/memgraph/__main__.py +0 -0
  283. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/triples/memgraph/write.py +0 -0
  284. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/triples/neo4j/__init__.py +0 -0
  285. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/triples/neo4j/__main__.py +0 -0
  286. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/storage/triples/neo4j/write.py +0 -0
  287. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/tables/__init__.py +0 -0
  288. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/tables/config.py +0 -0
  289. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/tables/knowledge.py +0 -0
  290. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/tables/library.py +0 -0
  291. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/template/__init__.py +0 -0
  292. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph/template/prompt_manager.py +0 -0
  293. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph_flow.egg-info/dependency_links.txt +0 -0
  294. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph_flow.egg-info/requires.txt +0 -0
  295. {trustgraph_flow-1.3.4 → trustgraph_flow-1.3.6}/trustgraph_flow.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: trustgraph-flow
3
- Version: 1.3.4
3
+ Version: 1.3.6
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
  Author-email: "trustgraph.ai" <security@trustgraph.ai>
6
6
  Project-URL: Homepage, https://github.com/trustgraph-ai/trustgraph
@@ -87,6 +87,7 @@ kg-store = "trustgraph.storage.knowledge:run"
87
87
  librarian = "trustgraph.librarian:run"
88
88
  mcp-tool = "trustgraph.agent.mcp_tool:run"
89
89
  metering = "trustgraph.metering:run"
90
+ nlp-query = "trustgraph.retrieval.nlp_query:run"
90
91
  objects-write-cassandra = "trustgraph.storage.objects.cassandra:run"
91
92
  objects-query-cassandra = "trustgraph.query.objects.cassandra:run"
92
93
  oe-write-milvus = "trustgraph.storage.object_embeddings.milvus:run"
@@ -15,6 +15,7 @@ from trustgraph.schema import FlowRequest, FlowResponse
15
15
  from trustgraph.schema import flow_request_queue, flow_response_queue
16
16
 
17
17
  from trustgraph.base import AsyncProcessor, Consumer, Producer
18
+ from trustgraph.base.cassandra_config import add_cassandra_args, resolve_cassandra_config
18
19
 
19
20
  from . config import Configuration
20
21
  from . flow import FlowConfig
@@ -60,9 +61,21 @@ class Processor(AsyncProcessor):
60
61
  "flow_response_queue", default_flow_response_queue
61
62
  )
62
63
 
63
- cassandra_host = params.get("cassandra_host", default_cassandra_host)
64
+ cassandra_host = params.get("cassandra_host")
64
65
  cassandra_username = params.get("cassandra_username")
65
66
  cassandra_password = params.get("cassandra_password")
67
+
68
+ # Resolve configuration with environment variable fallback
69
+ hosts, username, password = resolve_cassandra_config(
70
+ host=cassandra_host,
71
+ username=cassandra_username,
72
+ password=cassandra_password
73
+ )
74
+
75
+ # Store resolved configuration
76
+ self.cassandra_host = hosts
77
+ self.cassandra_username = username
78
+ self.cassandra_password = password
66
79
 
67
80
  id = params.get("id")
68
81
 
@@ -76,8 +89,9 @@ class Processor(AsyncProcessor):
76
89
  "config_push_schema": ConfigPush.__name__,
77
90
  "flow_request_schema": FlowRequest.__name__,
78
91
  "flow_response_schema": FlowResponse.__name__,
79
- "cassandra_host": cassandra_host,
80
- "cassandra_username": cassandra_username,
92
+ "cassandra_host": self.cassandra_host,
93
+ "cassandra_username": self.cassandra_username,
94
+ "cassandra_password": self.cassandra_password,
81
95
  }
82
96
  )
83
97
 
@@ -142,9 +156,9 @@ class Processor(AsyncProcessor):
142
156
  )
143
157
 
144
158
  self.config = Configuration(
145
- host = cassandra_host.split(","),
146
- username = cassandra_username,
147
- password = cassandra_password,
159
+ host = self.cassandra_host,
160
+ username = self.cassandra_username,
161
+ password = self.cassandra_password,
148
162
  keyspace = keyspace,
149
163
  push = self.push
150
164
  )
@@ -276,23 +290,7 @@ class Processor(AsyncProcessor):
276
290
  help=f'Flow response queue {default_flow_response_queue}',
277
291
  )
278
292
 
279
- parser.add_argument(
280
- '--cassandra-host',
281
- default="cassandra",
282
- help=f'Graph host (default: cassandra)'
283
- )
284
-
285
- parser.add_argument(
286
- '--cassandra-user',
287
- default=None,
288
- help=f'Cassandra user'
289
- )
290
-
291
- parser.add_argument(
292
- '--cassandra-password',
293
- default=None,
294
- help=f'Cassandra password'
295
- )
293
+ add_cassandra_args(parser)
296
294
 
297
295
  def run():
298
296
 
@@ -11,6 +11,7 @@ import logging
11
11
 
12
12
  from .. base import AsyncProcessor, Consumer, Producer, Publisher, Subscriber
13
13
  from .. base import ConsumerMetrics, ProducerMetrics
14
+ from .. base.cassandra_config import add_cassandra_args, resolve_cassandra_config
14
15
 
15
16
  from .. schema import KnowledgeRequest, KnowledgeResponse, Error
16
17
  from .. schema import knowledge_request_queue, knowledge_response_queue
@@ -49,16 +50,29 @@ class Processor(AsyncProcessor):
49
50
  "knowledge_response_queue", default_knowledge_response_queue
50
51
  )
51
52
 
52
- cassandra_host = params.get("cassandra_host", default_cassandra_host)
53
+ cassandra_host = params.get("cassandra_host")
53
54
  cassandra_username = params.get("cassandra_username")
54
55
  cassandra_password = params.get("cassandra_password")
56
+
57
+ # Resolve configuration with environment variable fallback
58
+ hosts, username, password = resolve_cassandra_config(
59
+ host=cassandra_host,
60
+ username=cassandra_username,
61
+ password=cassandra_password
62
+ )
63
+
64
+ # Store resolved configuration
65
+ self.cassandra_host = hosts
66
+ self.cassandra_username = username
67
+ self.cassandra_password = password
55
68
 
56
69
  super(Processor, self).__init__(
57
70
  **params | {
58
71
  "knowledge_request_queue": knowledge_request_queue,
59
72
  "knowledge_response_queue": knowledge_response_queue,
60
- "cassandra_host": cassandra_host,
61
- "cassandra_user": cassandra_user,
73
+ "cassandra_host": self.cassandra_host,
74
+ "cassandra_username": self.cassandra_username,
75
+ "cassandra_password": self.cassandra_password,
62
76
  }
63
77
  )
64
78
 
@@ -89,9 +103,9 @@ class Processor(AsyncProcessor):
89
103
  )
90
104
 
91
105
  self.knowledge = KnowledgeManager(
92
- cassandra_host = cassandra_host.split(","),
93
- cassandra_username = cassandra_username,
94
- cassandra_password = cassandra_password,
106
+ cassandra_host = self.cassandra_host,
107
+ cassandra_username = self.cassandra_username,
108
+ cassandra_password = self.cassandra_password,
95
109
  keyspace = keyspace,
96
110
  flow_config = self,
97
111
  )
@@ -210,23 +224,7 @@ class Processor(AsyncProcessor):
210
224
  help=f'Config response queue {default_knowledge_response_queue}',
211
225
  )
212
226
 
213
- parser.add_argument(
214
- '--cassandra-host',
215
- default="cassandra",
216
- help=f'Graph host (default: cassandra)'
217
- )
218
-
219
- parser.add_argument(
220
- '--cassandra-user',
221
- default=None,
222
- help=f'Cassandra user'
223
- )
224
-
225
- parser.add_argument(
226
- '--cassandra-password',
227
- default=None,
228
- help=f'Cassandra password'
229
- )
227
+ add_cassandra_args(parser)
230
228
 
231
229
  def run():
232
230
 
@@ -0,0 +1 @@
1
+ __version__ = "1.3.6"
@@ -11,6 +11,7 @@ import logging
11
11
 
12
12
  from .. base import AsyncProcessor, Consumer, Producer, Publisher, Subscriber
13
13
  from .. base import ConsumerMetrics, ProducerMetrics
14
+ from .. base.cassandra_config import add_cassandra_args, resolve_cassandra_config
14
15
 
15
16
  from .. schema import LibrarianRequest, LibrarianResponse, Error
16
17
  from .. schema import librarian_request_queue, librarian_response_queue
@@ -66,9 +67,21 @@ class Processor(AsyncProcessor):
66
67
  default_minio_secret_key
67
68
  )
68
69
 
69
- cassandra_host = params.get("cassandra_host", default_cassandra_host)
70
+ cassandra_host = params.get("cassandra_host")
70
71
  cassandra_username = params.get("cassandra_username")
71
72
  cassandra_password = params.get("cassandra_password")
73
+
74
+ # Resolve configuration with environment variable fallback
75
+ hosts, username, password = resolve_cassandra_config(
76
+ host=cassandra_host,
77
+ username=cassandra_username,
78
+ password=cassandra_password
79
+ )
80
+
81
+ # Store resolved configuration
82
+ self.cassandra_host = hosts
83
+ self.cassandra_username = username
84
+ self.cassandra_password = password
72
85
 
73
86
  super(Processor, self).__init__(
74
87
  **params | {
@@ -76,8 +89,9 @@ class Processor(AsyncProcessor):
76
89
  "librarian_response_queue": librarian_response_queue,
77
90
  "minio_host": minio_host,
78
91
  "minio_access_key": minio_access_key,
79
- "cassandra_host": cassandra_host,
80
- "cassandra_username": cassandra_username,
92
+ "cassandra_host": self.cassandra_host,
93
+ "cassandra_username": self.cassandra_username,
94
+ "cassandra_password": self.cassandra_password,
81
95
  }
82
96
  )
83
97
 
@@ -108,9 +122,9 @@ class Processor(AsyncProcessor):
108
122
  )
109
123
 
110
124
  self.librarian = Librarian(
111
- cassandra_host = cassandra_host.split(","),
112
- cassandra_username = cassandra_username,
113
- cassandra_password = cassandra_password,
125
+ cassandra_host = self.cassandra_host,
126
+ cassandra_username = self.cassandra_username,
127
+ cassandra_password = self.cassandra_password,
114
128
  minio_host = minio_host,
115
129
  minio_access_key = minio_access_key,
116
130
  minio_secret_key = minio_secret_key,
@@ -319,23 +333,7 @@ class Processor(AsyncProcessor):
319
333
  f'(default: {default_minio_access_key})',
320
334
  )
321
335
 
322
- parser.add_argument(
323
- '--cassandra-host',
324
- default="cassandra",
325
- help=f'Graph host (default: cassandra)'
326
- )
327
-
328
- parser.add_argument(
329
- '--cassandra-user',
330
- default=None,
331
- help=f'Cassandra user'
332
- )
333
-
334
- parser.add_argument(
335
- '--cassandra-password',
336
- default=None,
337
- help=f'Cassandra password'
338
- )
336
+ add_cassandra_args(parser)
339
337
 
340
338
  def run():
341
339
 
@@ -411,7 +411,6 @@ class Processor(FlowProcessor):
411
411
  def make_resolver(s_name, r_schema, g_type, f_type, sort_enum):
412
412
  async def resolver(
413
413
  info: Info,
414
- collection: str,
415
414
  where: Optional[f_type] = None,
416
415
  order_by: Optional[str] = None,
417
416
  direction: Optional[sort_enum] = None,
@@ -420,6 +419,7 @@ class Processor(FlowProcessor):
420
419
  # Get the processor instance from context
421
420
  processor = info.context["processor"]
422
421
  user = info.context["user"]
422
+ collection = info.context["collection"]
423
423
 
424
424
  # Parse the idiomatic where clause
425
425
  filters = processor.parse_idiomatic_where_clause(where)
@@ -0,0 +1 @@
1
+ from . service import *
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env python3
2
+
3
+ from . service import run
4
+
5
+ run()
@@ -0,0 +1,303 @@
1
+ """
2
+ NLP to Structured Query Service - converts natural language questions to GraphQL queries.
3
+ Two-phase approach: 1) Select relevant schemas, 2) Generate GraphQL query.
4
+ """
5
+
6
+ import json
7
+ import logging
8
+ from typing import Dict, Any, Optional, List
9
+
10
+ from ...schema import QuestionToStructuredQueryRequest, QuestionToStructuredQueryResponse
11
+ from ...schema import PromptRequest, PromptResponse
12
+ from ...schema import Error, RowSchema, Field as SchemaField
13
+
14
+ from ...base import FlowProcessor, ConsumerSpec, ProducerSpec, ClientSpec
15
+
16
+ # Module logger
17
+ logger = logging.getLogger(__name__)
18
+
19
+ default_ident = "nlp-query"
20
+ default_schema_selection_template = "schema-selection"
21
+ default_graphql_generation_template = "graphql-generation"
22
+
23
+ class Processor(FlowProcessor):
24
+
25
+ def __init__(self, **params):
26
+
27
+ id = params.get("id", default_ident)
28
+
29
+ # Config key for schemas
30
+ self.config_key = params.get("config_type", "schema")
31
+
32
+ # Configurable prompt template names
33
+ self.schema_selection_template = params.get("schema_selection_template", default_schema_selection_template)
34
+ self.graphql_generation_template = params.get("graphql_generation_template", default_graphql_generation_template)
35
+
36
+ super(Processor, self).__init__(
37
+ **params | {
38
+ "id": id,
39
+ "config-type": self.config_key,
40
+ }
41
+ )
42
+
43
+ self.register_specification(
44
+ ConsumerSpec(
45
+ name = "request",
46
+ schema = QuestionToStructuredQueryRequest,
47
+ handler = self.on_message
48
+ )
49
+ )
50
+
51
+ self.register_specification(
52
+ ProducerSpec(
53
+ name = "response",
54
+ schema = QuestionToStructuredQueryResponse,
55
+ )
56
+ )
57
+
58
+ # Client spec for calling prompt service
59
+ self.register_specification(
60
+ ClientSpec(
61
+ request_name = "prompt-request",
62
+ response_name = "prompt-response",
63
+ request_schema = PromptRequest,
64
+ response_schema = PromptResponse
65
+ )
66
+ )
67
+
68
+ # Register config handler for schema updates
69
+ self.register_config_handler(self.on_schema_config)
70
+
71
+ # Schema storage: name -> RowSchema
72
+ self.schemas: Dict[str, RowSchema] = {}
73
+
74
+ logger.info("NLP Query service initialized")
75
+
76
+ async def on_schema_config(self, config, version):
77
+ """Handle schema configuration updates"""
78
+ logger.info(f"Loading schema configuration version {version}")
79
+
80
+ # Clear existing schemas
81
+ self.schemas = {}
82
+
83
+ # Check if our config type exists
84
+ if self.config_key not in config:
85
+ logger.warning(f"No '{self.config_key}' type in configuration")
86
+ return
87
+
88
+ # Get the schemas dictionary for our type
89
+ schemas_config = config[self.config_key]
90
+
91
+ # Process each schema in the schemas config
92
+ for schema_name, schema_json in schemas_config.items():
93
+ try:
94
+ # Parse the JSON schema definition
95
+ schema_def = json.loads(schema_json)
96
+
97
+ # Create Field objects
98
+ fields = []
99
+ for field_def in schema_def.get("fields", []):
100
+ field = SchemaField(
101
+ name=field_def["name"],
102
+ type=field_def["type"],
103
+ size=field_def.get("size", 0),
104
+ primary=field_def.get("primary_key", False),
105
+ description=field_def.get("description", ""),
106
+ required=field_def.get("required", False),
107
+ enum_values=field_def.get("enum", []),
108
+ indexed=field_def.get("indexed", False)
109
+ )
110
+ fields.append(field)
111
+
112
+ # Create RowSchema
113
+ row_schema = RowSchema(
114
+ name=schema_def.get("name", schema_name),
115
+ description=schema_def.get("description", ""),
116
+ fields=fields
117
+ )
118
+
119
+ self.schemas[schema_name] = row_schema
120
+ logger.info(f"Loaded schema: {schema_name} with {len(fields)} fields")
121
+
122
+ except Exception as e:
123
+ logger.error(f"Failed to parse schema {schema_name}: {e}", exc_info=True)
124
+
125
+ logger.info(f"Schema configuration loaded: {len(self.schemas)} schemas")
126
+
127
+ async def phase1_select_schemas(self, question: str) -> List[str]:
128
+ """Phase 1: Use prompt service to select relevant schemas for the question"""
129
+ logger.info("Starting Phase 1: Schema selection")
130
+
131
+ # Prepare schema information for the prompt
132
+ schema_info = []
133
+ for name, schema in self.schemas.items():
134
+ schema_desc = {
135
+ "name": name,
136
+ "description": schema.description,
137
+ "fields": [{"name": f.name, "type": f.type, "description": f.description}
138
+ for f in schema.fields]
139
+ }
140
+ schema_info.append(schema_desc)
141
+
142
+ # Create prompt variables
143
+ variables = {
144
+ "question": question,
145
+ "schemas": schema_info # Pass structured data directly
146
+ }
147
+
148
+ # Call prompt service for schema selection
149
+ prompt_request = PromptRequest(
150
+ template=self.schema_selection_template,
151
+ variables=variables
152
+ )
153
+
154
+ try:
155
+ response = await self.client("prompt-request").request(prompt_request)
156
+
157
+ if response.error is not None:
158
+ raise Exception(f"Prompt service error: {response.error}")
159
+
160
+ # Parse the response to get selected schema names
161
+ # Expecting response.text to contain JSON array of schema names
162
+ selected_schemas = json.loads(response.text)
163
+
164
+ logger.info(f"Phase 1 selected schemas: {selected_schemas}")
165
+ return selected_schemas
166
+
167
+ except Exception as e:
168
+ logger.error(f"Phase 1 schema selection failed: {e}")
169
+ raise
170
+
171
+ async def phase2_generate_graphql(self, question: str, selected_schemas: List[str]) -> Dict[str, Any]:
172
+ """Phase 2: Generate GraphQL query using selected schemas"""
173
+ logger.info(f"Starting Phase 2: GraphQL generation for schemas: {selected_schemas}")
174
+
175
+ # Get detailed schema information for selected schemas only
176
+ selected_schema_info = []
177
+ for schema_name in selected_schemas:
178
+ if schema_name in self.schemas:
179
+ schema = self.schemas[schema_name]
180
+ schema_desc = {
181
+ "name": schema_name,
182
+ "description": schema.description,
183
+ "fields": [
184
+ {
185
+ "name": f.name,
186
+ "type": f.type,
187
+ "description": f.description,
188
+ "required": f.required,
189
+ "primary_key": f.primary,
190
+ "indexed": f.indexed,
191
+ "enum_values": f.enum_values if f.enum_values else []
192
+ }
193
+ for f in schema.fields
194
+ ]
195
+ }
196
+ selected_schema_info.append(schema_desc)
197
+
198
+ # Create prompt variables for GraphQL generation
199
+ variables = {
200
+ "question": question,
201
+ "schemas": selected_schema_info # Pass structured data directly
202
+ }
203
+
204
+ # Call prompt service for GraphQL generation
205
+ prompt_request = PromptRequest(
206
+ template=self.graphql_generation_template,
207
+ variables=variables
208
+ )
209
+
210
+ try:
211
+ response = await self.client("prompt-request").request(prompt_request)
212
+
213
+ if response.error is not None:
214
+ raise Exception(f"Prompt service error: {response.error}")
215
+
216
+ # Parse the response to get GraphQL query and variables
217
+ # Expecting response.text to contain JSON with "query" and "variables" fields
218
+ result = json.loads(response.text)
219
+
220
+ logger.info(f"Phase 2 generated GraphQL: {result.get('query', '')[:100]}...")
221
+ return result
222
+
223
+ except Exception as e:
224
+ logger.error(f"Phase 2 GraphQL generation failed: {e}")
225
+ raise
226
+
227
+ async def on_message(self, msg, consumer, flow):
228
+ """Handle incoming question to structured query request"""
229
+
230
+ try:
231
+ request = msg.value()
232
+
233
+ # Sender-produced ID
234
+ id = msg.properties()["id"]
235
+
236
+ logger.info(f"Handling NLP query request {id}: {request.question[:100]}...")
237
+
238
+ # Phase 1: Select relevant schemas
239
+ selected_schemas = await self.phase1_select_schemas(request.question)
240
+
241
+ # Phase 2: Generate GraphQL query
242
+ graphql_result = await self.phase2_generate_graphql(request.question, selected_schemas)
243
+
244
+ # Create response
245
+ response = QuestionToStructuredQueryResponse(
246
+ error=None,
247
+ graphql_query=graphql_result.get("query", ""),
248
+ variables=graphql_result.get("variables", {}),
249
+ detected_schemas=selected_schemas,
250
+ confidence=graphql_result.get("confidence", 0.8) # Default confidence
251
+ )
252
+
253
+ logger.info("Sending NLP query response...")
254
+ await flow("response").send(response, properties={"id": id})
255
+
256
+ logger.info("NLP query request completed")
257
+
258
+ except Exception as e:
259
+
260
+ logger.error(f"Exception in NLP query service: {e}", exc_info=True)
261
+
262
+ logger.info("Sending error response...")
263
+
264
+ response = QuestionToStructuredQueryResponse(
265
+ error = Error(
266
+ type = "nlp-query-error",
267
+ message = str(e),
268
+ ),
269
+ graphql_query = "",
270
+ variables = {},
271
+ detected_schemas = [],
272
+ confidence = 0.0
273
+ )
274
+
275
+ await flow("response").send(response, properties={"id": id})
276
+
277
+ @staticmethod
278
+ def add_args(parser):
279
+ """Add command-line arguments"""
280
+
281
+ FlowProcessor.add_args(parser)
282
+
283
+ parser.add_argument(
284
+ '--config-type',
285
+ default='schema',
286
+ help='Configuration type prefix for schemas (default: schema)'
287
+ )
288
+
289
+ parser.add_argument(
290
+ '--schema-selection-template',
291
+ default=default_schema_selection_template,
292
+ help=f'Prompt template name for schema selection (default: {default_schema_selection_template})'
293
+ )
294
+
295
+ parser.add_argument(
296
+ '--graphql-generation-template',
297
+ default=default_graphql_generation_template,
298
+ help=f'Prompt template name for GraphQL generation (default: {default_graphql_generation_template})'
299
+ )
300
+
301
+ def run():
302
+ """Entry point for nlp-query command"""
303
+ Processor.launch(default_ident, __doc__)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: trustgraph-flow
3
- Version: 1.3.4
3
+ Version: 1.3.6
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
  Author-email: "trustgraph.ai" <security@trustgraph.ai>
6
6
  Project-URL: Homepage, https://github.com/trustgraph-ai/trustgraph
@@ -222,6 +222,9 @@ trustgraph/retrieval/graph_rag/__init__.py
222
222
  trustgraph/retrieval/graph_rag/__main__.py
223
223
  trustgraph/retrieval/graph_rag/graph_rag.py
224
224
  trustgraph/retrieval/graph_rag/rag.py
225
+ trustgraph/retrieval/nlp_query/__init__.py
226
+ trustgraph/retrieval/nlp_query/__main__.py
227
+ trustgraph/retrieval/nlp_query/service.py
225
228
  trustgraph/rev_gateway/__init__.py
226
229
  trustgraph/rev_gateway/__main__.py
227
230
  trustgraph/rev_gateway/dispatcher.py
@@ -32,6 +32,7 @@ kg-store = trustgraph.storage.knowledge:run
32
32
  librarian = trustgraph.librarian:run
33
33
  mcp-tool = trustgraph.agent.mcp_tool:run
34
34
  metering = trustgraph.metering:run
35
+ nlp-query = trustgraph.retrieval.nlp_query:run
35
36
  objects-query-cassandra = trustgraph.query.objects.cassandra:run
36
37
  objects-write-cassandra = trustgraph.storage.objects.cassandra:run
37
38
  oe-write-milvus = trustgraph.storage.object_embeddings.milvus:run
@@ -1 +0,0 @@
1
- __version__ = "1.3.4"