trustgraph-base 2.9.2__tar.gz → 2.9.4__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 (189) hide show
  1. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/PKG-INFO +2 -2
  2. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/pyproject.toml +1 -1
  3. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/async_librarian_client.py +18 -10
  4. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/config_client.py +7 -1
  5. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/flow_processor.py +14 -0
  6. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/librarian_spec.py +10 -5
  7. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/prompt_client.py +15 -8
  8. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/request_response_spec.py +9 -4
  9. trustgraph_base-2.9.4/trustgraph/base/spec.py +28 -0
  10. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/workspace_processor.py +15 -0
  11. trustgraph_base-2.9.4/trustgraph/base_version.py +1 -0
  12. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph_base.egg-info/PKG-INFO +2 -2
  13. trustgraph_base-2.9.2/trustgraph/base/spec.py +0 -9
  14. trustgraph_base-2.9.2/trustgraph/base_version.py +0 -1
  15. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/README.md +0 -0
  16. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/setup.cfg +0 -0
  17. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/api/__init__.py +0 -0
  18. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/api/api.py +0 -0
  19. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/api/async_bulk_client.py +0 -0
  20. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/api/async_flow.py +0 -0
  21. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/api/async_metrics.py +0 -0
  22. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/api/async_socket_client.py +0 -0
  23. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/api/bulk_client.py +0 -0
  24. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/api/collection.py +0 -0
  25. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/api/config.py +0 -0
  26. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/api/exceptions.py +0 -0
  27. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/api/explainability.py +0 -0
  28. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/api/flow.py +0 -0
  29. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/api/knowledge.py +0 -0
  30. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/api/library.py +0 -0
  31. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/api/metrics.py +0 -0
  32. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/api/socket_client.py +0 -0
  33. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/api/types.py +0 -0
  34. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/__init__.py +0 -0
  35. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/agent_client.py +0 -0
  36. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/agent_service.py +0 -0
  37. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/async_backend.py +0 -0
  38. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/async_config_client.py +0 -0
  39. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/async_kafka_backend.py +0 -0
  40. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/async_processor.py +0 -0
  41. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/async_pulsar_backend.py +0 -0
  42. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/async_rabbitmq_backend.py +0 -0
  43. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/async_rr_wrapper.py +0 -0
  44. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/audit_publisher.py +0 -0
  45. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/backend.py +0 -0
  46. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/cassandra_config.py +0 -0
  47. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/chunking_service.py +0 -0
  48. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/collection_config_handler.py +0 -0
  49. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/consumer_spec.py +0 -0
  50. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/document_embeddings_client.py +0 -0
  51. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/document_embeddings_query_service.py +0 -0
  52. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/document_embeddings_store_service.py +0 -0
  53. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/dynamic_tool_service.py +0 -0
  54. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/embeddings_client.py +0 -0
  55. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/embeddings_service.py +0 -0
  56. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/flow.py +0 -0
  57. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/graph_embeddings_client.py +0 -0
  58. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/graph_embeddings_query_service.py +0 -0
  59. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/graph_embeddings_store_service.py +0 -0
  60. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/graph_rag_client.py +0 -0
  61. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/iam_client.py +0 -0
  62. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/image_to_text_service.py +0 -0
  63. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/keyword_index_client.py +0 -0
  64. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/keyword_index_service.py +0 -0
  65. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/llm_service.py +0 -0
  66. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/logging.py +0 -0
  67. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/metrics.py +0 -0
  68. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/parameter_spec.py +0 -0
  69. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/processor_group.py +0 -0
  70. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/producer_spec.py +0 -0
  71. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/pubsub.py +0 -0
  72. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/qdrant_config.py +0 -0
  73. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/receiver_pool.py +0 -0
  74. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/request_response_client.py +0 -0
  75. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/reranker_client.py +0 -0
  76. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/reranker_service.py +0 -0
  77. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/row_embeddings_query_client.py +0 -0
  78. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/schema_compatibility.py +0 -0
  79. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/sender_pool.py +0 -0
  80. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/serialization.py +0 -0
  81. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/sparql_client.py +0 -0
  82. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/structured_query_client.py +0 -0
  83. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/text_completion_client.py +0 -0
  84. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/tool_client.py +0 -0
  85. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/tool_service.py +0 -0
  86. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/tool_service_client.py +0 -0
  87. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/triples_client.py +0 -0
  88. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/triples_query_service.py +0 -0
  89. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/base/triples_store_service.py +0 -0
  90. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/exceptions.py +0 -0
  91. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/i18n/__init__.py +0 -0
  92. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/i18n/packs/__init__.py +0 -0
  93. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/i18n/packs/ar.json +0 -0
  94. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/i18n/packs/en.json +0 -0
  95. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/i18n/packs/es.json +0 -0
  96. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/i18n/packs/he.json +0 -0
  97. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/i18n/packs/hi.json +0 -0
  98. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/i18n/packs/pt.json +0 -0
  99. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/i18n/packs/ru.json +0 -0
  100. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/i18n/packs/sw.json +0 -0
  101. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/i18n/packs/tr.json +0 -0
  102. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/i18n/packs/zh-cn.json +0 -0
  103. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/knowledge/__init__.py +0 -0
  104. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/knowledge/defs.py +0 -0
  105. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/knowledge/document.py +0 -0
  106. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/knowledge/identifier.py +0 -0
  107. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/knowledge/organization.py +0 -0
  108. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/knowledge/publication.py +0 -0
  109. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/log_level.py +0 -0
  110. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/__init__.py +0 -0
  111. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/registry.py +0 -0
  112. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/__init__.py +0 -0
  113. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/agent.py +0 -0
  114. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/base.py +0 -0
  115. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/collection.py +0 -0
  116. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/config.py +0 -0
  117. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/diagnosis.py +0 -0
  118. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/document_loading.py +0 -0
  119. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/embeddings.py +0 -0
  120. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/embeddings_query.py +0 -0
  121. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/flow.py +0 -0
  122. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/iam.py +0 -0
  123. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/image_to_text.py +0 -0
  124. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/knowledge.py +0 -0
  125. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/library.py +0 -0
  126. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/metadata.py +0 -0
  127. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/nlp_query.py +0 -0
  128. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/primitives.py +0 -0
  129. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/prompt.py +0 -0
  130. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/reranker.py +0 -0
  131. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/retrieval.py +0 -0
  132. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/rows_query.py +0 -0
  133. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/sparql_query.py +0 -0
  134. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/structured_query.py +0 -0
  135. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/text_completion.py +0 -0
  136. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/tool.py +0 -0
  137. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/messaging/translators/triples.py +0 -0
  138. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/objects/__init__.py +0 -0
  139. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/objects/field.py +0 -0
  140. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/objects/object.py +0 -0
  141. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/provenance/__init__.py +0 -0
  142. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/provenance/agent.py +0 -0
  143. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/provenance/namespaces.py +0 -0
  144. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/provenance/triples.py +0 -0
  145. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/provenance/uris.py +0 -0
  146. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/provenance/vocabulary.py +0 -0
  147. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/rdf.py +0 -0
  148. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/__init__.py +0 -0
  149. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/core/__init__.py +0 -0
  150. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/core/metadata.py +0 -0
  151. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/core/primitives.py +0 -0
  152. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/core/topic.py +0 -0
  153. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/knowledge/__init__.py +0 -0
  154. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/knowledge/document.py +0 -0
  155. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/knowledge/embeddings.py +0 -0
  156. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/knowledge/graph.py +0 -0
  157. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/knowledge/knowledge.py +0 -0
  158. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/knowledge/nlp.py +0 -0
  159. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/knowledge/object.py +0 -0
  160. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/knowledge/rows.py +0 -0
  161. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/knowledge/structured.py +0 -0
  162. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/services/__init__.py +0 -0
  163. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/services/agent.py +0 -0
  164. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/services/audit.py +0 -0
  165. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/services/collection.py +0 -0
  166. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/services/config.py +0 -0
  167. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/services/diagnosis.py +0 -0
  168. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/services/flow.py +0 -0
  169. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/services/iam.py +0 -0
  170. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/services/image_to_text.py +0 -0
  171. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/services/library.py +0 -0
  172. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/services/llm.py +0 -0
  173. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/services/lookup.py +0 -0
  174. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/services/nlp_query.py +0 -0
  175. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/services/passthrough.py +0 -0
  176. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/services/prompt.py +0 -0
  177. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/services/query.py +0 -0
  178. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/services/reranker.py +0 -0
  179. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/services/retrieval.py +0 -0
  180. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/services/rows_query.py +0 -0
  181. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/services/sparql_query.py +0 -0
  182. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/services/storage.py +0 -0
  183. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/services/structured_query.py +0 -0
  184. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph/schema/services/tool_service.py +0 -0
  185. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph_base.egg-info/SOURCES.txt +0 -0
  186. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph_base.egg-info/dependency_links.txt +0 -0
  187. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph_base.egg-info/entry_points.txt +0 -0
  188. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph_base.egg-info/requires.txt +0 -0
  189. {trustgraph_base-2.9.2 → trustgraph_base-2.9.4}/trustgraph_base.egg-info/top_level.txt +0 -0
@@ -1,12 +1,12 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: trustgraph-base
3
- Version: 2.9.2
3
+ Version: 2.9.4
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
7
7
  Classifier: Programming Language :: Python :: 3
8
8
  Classifier: Operating System :: OS Independent
9
- Requires-Python: >=3.8
9
+ Requires-Python: >=3.10
10
10
  Description-Content-Type: text/markdown
11
11
  Requires-Dist: pulsar-client
12
12
  Requires-Dist: prometheus-client
@@ -8,7 +8,7 @@ dynamic = ["version"]
8
8
  authors = [{name = "trustgraph.ai", email = "security@trustgraph.ai"}]
9
9
  description = "TrustGraph provides a means to run a pipeline of flexible AI processing components in a flexible means to achieve a processing pipeline."
10
10
  readme = "README.md"
11
- requires-python = ">=3.8"
11
+ requires-python = ">=3.10"
12
12
  dependencies = [
13
13
  "pulsar-client",
14
14
  "prometheus-client",
@@ -15,10 +15,13 @@ from ..schema import LibrarianRequest, LibrarianResponse, DocumentMetadata
15
15
 
16
16
  logger = logging.getLogger(__name__)
17
17
 
18
+ default_librarian_timeout = 120
19
+
18
20
 
19
21
  class AsyncLibrarianClient:
20
22
 
21
- def __init__(self):
23
+ def __init__(self, default_timeout=default_librarian_timeout):
24
+ self.default_timeout = default_timeout
22
25
  self._producer = None
23
26
  self._consumer = None
24
27
  self._receiver_task = None
@@ -29,9 +32,9 @@ class AsyncLibrarianClient:
29
32
  @classmethod
30
33
  async def create(
31
34
  cls, backend, request_topic, response_topic,
32
- subscription=None,
35
+ subscription=None, default_timeout=default_librarian_timeout,
33
36
  ):
34
- client = cls()
37
+ client = cls(default_timeout=default_timeout)
35
38
 
36
39
  client._producer = await backend.create_producer(
37
40
  topic=request_topic,
@@ -63,6 +66,9 @@ class AsyncLibrarianClient:
63
66
  async def start(self):
64
67
  pass
65
68
 
69
+ def _timeout(self, timeout):
70
+ return self.default_timeout if timeout is None else timeout
71
+
66
72
  async def _response_loop(self):
67
73
  try:
68
74
  while self.running:
@@ -87,7 +93,8 @@ class AsyncLibrarianClient:
87
93
  f"Librarian response loop error: {e}", exc_info=True,
88
94
  )
89
95
 
90
- async def request(self, request, timeout=120):
96
+ async def request(self, request, timeout=None):
97
+ timeout = self._timeout(timeout)
91
98
  request_id = str(uuid.uuid4())
92
99
 
93
100
  future = asyncio.get_event_loop().create_future()
@@ -111,7 +118,8 @@ class AsyncLibrarianClient:
111
118
  self._pending.pop(request_id, None)
112
119
  raise RuntimeError("Timeout waiting for librarian response")
113
120
 
114
- async def stream(self, request, timeout=120):
121
+ async def stream(self, request, timeout=None):
122
+ timeout = self._timeout(timeout)
115
123
  request_id = str(uuid.uuid4())
116
124
 
117
125
  q = asyncio.Queue()
@@ -180,7 +188,7 @@ class AsyncLibrarianClient:
180
188
 
181
189
  logger.info("AsyncLibrarianClient closed")
182
190
 
183
- async def fetch_document_content(self, document_id, timeout=120):
191
+ async def fetch_document_content(self, document_id, timeout=None):
184
192
  req = LibrarianRequest(
185
193
  operation="stream-document",
186
194
  document_id=document_id,
@@ -199,13 +207,13 @@ class AsyncLibrarianClient:
199
207
 
200
208
  return base64.b64encode(raw)
201
209
 
202
- async def fetch_document_text(self, document_id, timeout=120):
210
+ async def fetch_document_text(self, document_id, timeout=None):
203
211
  content = await self.fetch_document_content(
204
212
  document_id, timeout=timeout,
205
213
  )
206
214
  return base64.b64decode(content).decode("utf-8")
207
215
 
208
- async def fetch_document_metadata(self, document_id, timeout=120):
216
+ async def fetch_document_metadata(self, document_id, timeout=None):
209
217
  req = LibrarianRequest(
210
218
  operation="get-document-metadata",
211
219
  document_id=document_id,
@@ -215,7 +223,7 @@ class AsyncLibrarianClient:
215
223
 
216
224
  async def save_child_document(self, doc_id, parent_id, content,
217
225
  document_type="chunk", title=None,
218
- kind="text/plain", timeout=120):
226
+ kind="text/plain", timeout=None):
219
227
  if isinstance(content, str):
220
228
  content = content.encode("utf-8")
221
229
 
@@ -238,7 +246,7 @@ class AsyncLibrarianClient:
238
246
 
239
247
  async def save_document(self, doc_id, content, title=None,
240
248
  document_type="answer", kind="text/plain",
241
- timeout=120):
249
+ timeout=None):
242
250
  if isinstance(content, str):
243
251
  content = content.encode("utf-8")
244
252
 
@@ -1,5 +1,6 @@
1
1
 
2
2
  from . request_response_spec import RequestResponseSpec
3
+ from . async_processor import default_config_timeout
3
4
  from .. schema import ConfigRequest, ConfigResponse, ConfigKey, ConfigValue
4
5
 
5
6
  CONFIG_TIMEOUT = 10
@@ -108,8 +109,12 @@ class ConfigClient:
108
109
 
109
110
 
110
111
  class ConfigClientSpec(RequestResponseSpec):
112
+
113
+ timeout_param = "config_timeout"
114
+ default_timeout = default_config_timeout
115
+
111
116
  def __init__(
112
- self, request_name, response_name,
117
+ self, request_name, response_name, timeout=None,
113
118
  ):
114
119
  super(ConfigClientSpec, self).__init__(
115
120
  request_name=request_name,
@@ -117,4 +122,5 @@ class ConfigClientSpec(RequestResponseSpec):
117
122
  response_name=response_name,
118
123
  response_schema=ConfigResponse,
119
124
  impl=ConfigClient,
125
+ timeout=timeout,
120
126
  )
@@ -16,6 +16,7 @@ from .. schema import config_push_queue
16
16
  from .. log_level import LogLevel
17
17
  from . workspace_processor import WorkspaceProcessor
18
18
  from . flow import Flow
19
+ from . prompt_client import default_prompt_timeout
19
20
 
20
21
  # Module logger
21
22
  logger = logging.getLogger(__name__)
@@ -29,6 +30,10 @@ class FlowProcessor(WorkspaceProcessor):
29
30
  # Initialise base class
30
31
  super(FlowProcessor, self).__init__(**params)
31
32
 
33
+ self.prompt_timeout = int(params.get(
34
+ "prompt_timeout", default_prompt_timeout
35
+ ))
36
+
32
37
  # Register configuration handler for this processor's config type
33
38
  self.register_config_handler(
34
39
  self.on_configure_flows, types=[f"processor:{self.id}"]
@@ -114,6 +119,15 @@ class FlowProcessor(WorkspaceProcessor):
114
119
  def add_args(parser: ArgumentParser) -> None:
115
120
 
116
121
  WorkspaceProcessor.add_args(parser)
122
+ WorkspaceProcessor.add_librarian_args(parser)
123
+
124
+ parser.add_argument(
125
+ '--prompt-timeout',
126
+ type=int,
127
+ default=default_prompt_timeout,
128
+ help=f'Prompt request timeout in seconds '
129
+ f'(default: {default_prompt_timeout})',
130
+ )
117
131
 
118
132
  # parser.add_argument(
119
133
  # '--rate-limit-retry',
@@ -3,19 +3,23 @@ from __future__ import annotations
3
3
  import uuid
4
4
  from typing import Any
5
5
 
6
- from . spec import Spec
6
+ from . spec import Spec, TimeoutSpec
7
+ from . async_librarian_client import AsyncLibrarianClient, default_librarian_timeout
7
8
 
8
9
 
9
- class LibrarianSpec(Spec):
10
+ class LibrarianSpec(TimeoutSpec, Spec):
11
+
12
+ timeout_param = "librarian_timeout"
13
+ default_timeout = default_librarian_timeout
14
+
10
15
  def __init__(self, request_name="librarian-request",
11
- response_name="librarian-response"):
16
+ response_name="librarian-response", timeout=None):
12
17
  self.request_name = request_name
13
18
  self.response_name = response_name
19
+ self.timeout = timeout
14
20
 
15
21
  async def register(self, flow: Any, processor: Any, definition: dict[str, Any]) -> Any:
16
22
 
17
- from .async_librarian_client import AsyncLibrarianClient
18
-
19
23
  subscription = (
20
24
  processor.id + "--" + flow.workspace + "--" +
21
25
  flow.name + "--librarian--" + str(uuid.uuid4())
@@ -26,6 +30,7 @@ class LibrarianSpec(Spec):
26
30
  request_topic=definition["topics"][self.request_name],
27
31
  response_topic=definition["topics"][self.response_name],
28
32
  subscription=subscription,
33
+ default_timeout=self.resolve_timeout(processor),
29
34
  )
30
35
 
31
36
  flow.librarian = client
@@ -8,6 +8,8 @@ from typing import Optional, Any
8
8
  from . request_response_spec import RequestResponseSpec
9
9
  from .. schema import PromptRequest, PromptResponse
10
10
 
11
+ default_prompt_timeout = 600
12
+
11
13
  @dataclass
12
14
  class PromptResult:
13
15
  response_type: str # "text", "json", or "jsonl"
@@ -20,7 +22,7 @@ class PromptResult:
20
22
 
21
23
  class PromptClient:
22
24
 
23
- async def prompt(self, id, variables, timeout=600, streaming=False, chunk_callback=None):
25
+ async def prompt(self, id, variables, timeout=None, streaming=False, chunk_callback=None):
24
26
 
25
27
  if not streaming:
26
28
 
@@ -136,28 +138,28 @@ class PromptClient:
136
138
  model=last_resp.model,
137
139
  )
138
140
 
139
- async def extract_definitions(self, text, timeout=600):
141
+ async def extract_definitions(self, text, timeout=None):
140
142
  return await self.prompt(
141
143
  id = "extract-definitions",
142
144
  variables = { "text": text },
143
145
  timeout = timeout,
144
146
  )
145
147
 
146
- async def extract_relationships(self, text, timeout=600):
148
+ async def extract_relationships(self, text, timeout=None):
147
149
  return await self.prompt(
148
150
  id = "extract-relationships",
149
151
  variables = { "text": text },
150
152
  timeout = timeout,
151
153
  )
152
154
 
153
- async def extract_objects(self, text, schema, timeout=600):
155
+ async def extract_objects(self, text, schema, timeout=None):
154
156
  return await self.prompt(
155
157
  id = "extract-rows",
156
158
  variables = { "text": text, "schema": schema, },
157
159
  timeout = timeout,
158
160
  )
159
161
 
160
- async def document_prompt(self, query, documents, timeout=600, streaming=False, chunk_callback=None):
162
+ async def document_prompt(self, query, documents, timeout=None, streaming=False, chunk_callback=None):
161
163
  return await self.prompt(
162
164
  id = "document-prompt",
163
165
  variables = {
@@ -169,7 +171,7 @@ class PromptClient:
169
171
  chunk_callback = chunk_callback,
170
172
  )
171
173
 
172
- async def agent_react(self, variables, timeout=600, streaming=False, chunk_callback=None):
174
+ async def agent_react(self, variables, timeout=None, streaming=False, chunk_callback=None):
173
175
  return await self.prompt(
174
176
  id = "agent-react",
175
177
  variables = variables,
@@ -178,7 +180,7 @@ class PromptClient:
178
180
  chunk_callback = chunk_callback,
179
181
  )
180
182
 
181
- async def question(self, question, timeout=600):
183
+ async def question(self, question, timeout=None):
182
184
  return await self.prompt(
183
185
  id = "question",
184
186
  variables = {
@@ -188,8 +190,12 @@ class PromptClient:
188
190
  )
189
191
 
190
192
  class PromptClientSpec(RequestResponseSpec):
193
+
194
+ timeout_param = "prompt_timeout"
195
+ default_timeout = default_prompt_timeout
196
+
191
197
  def __init__(
192
- self, request_name, response_name,
198
+ self, request_name, response_name, timeout=None,
193
199
  ):
194
200
  super(PromptClientSpec, self).__init__(
195
201
  request_name = request_name,
@@ -197,4 +203,5 @@ class PromptClientSpec(RequestResponseSpec):
197
203
  response_name = response_name,
198
204
  response_schema = PromptResponse,
199
205
  impl = PromptClient,
206
+ timeout = timeout,
200
207
  )
@@ -3,7 +3,7 @@ from __future__ import annotations
3
3
  import logging
4
4
  from typing import Any
5
5
 
6
- from . spec import Spec
6
+ from . spec import Spec, TimeoutSpec
7
7
 
8
8
  # Module logger
9
9
  logger = logging.getLogger(__name__)
@@ -12,10 +12,13 @@ logger = logging.getLogger(__name__)
12
12
  # use another service in request/response mode. Uses two topics:
13
13
  # - we send on the request topic as a producer
14
14
  # - we receive on the response topic as a subscriber
15
- class RequestResponseSpec(Spec):
15
+ class RequestResponseSpec(TimeoutSpec, Spec):
16
+
17
+ default_timeout = 300
18
+
16
19
  def __init__(
17
20
  self, request_name, request_schema, response_name,
18
- response_schema, impl=None, optional=False
21
+ response_schema, impl=None, optional=False, timeout=None,
19
22
  ):
20
23
  self.request_name = request_name
21
24
  self.request_schema = request_schema
@@ -23,6 +26,7 @@ class RequestResponseSpec(Spec):
23
26
  self.response_schema = response_schema
24
27
  self.impl = impl
25
28
  self.optional = optional
29
+ self.timeout = timeout
26
30
 
27
31
  async def register(self, flow: Any, processor: Any, definition: dict[str, Any]) -> Any:
28
32
 
@@ -42,6 +46,7 @@ class RequestResponseSpec(Spec):
42
46
  response_schema=self.response_schema,
43
47
  processor_id=getattr(processor, 'id', None),
44
48
  target_service=self.request_name,
49
+ default_timeout=self.resolve_timeout(processor),
45
50
  )
46
51
 
47
52
  wrapper = _make_impl_wrapper(rr_client, self.impl)
@@ -59,7 +64,7 @@ def _make_impl_wrapper(rr_client, impl_cls):
59
64
  def __init__(self):
60
65
  self._rr_client = rr_client
61
66
 
62
- async def request(self, req, timeout=300, recipient=None):
67
+ async def request(self, req, timeout=None, recipient=None):
63
68
  if recipient is None:
64
69
  return await self._rr_client.request(req, timeout=timeout)
65
70
 
@@ -0,0 +1,28 @@
1
+
2
+ class Spec:
3
+
4
+ async def register(self, flow, processor, definition):
5
+ self.add(flow, processor, definition)
6
+ return None
7
+
8
+ def add(self, flow, processor, definition):
9
+ pass
10
+
11
+
12
+ class TimeoutSpec:
13
+ # Mixin for specs that create a client. An explicit constructor value
14
+ # wins over the processor attribute named by timeout_param, which wins
15
+ # over the class default.
16
+ timeout_param = None
17
+ default_timeout = None
18
+ timeout = None
19
+
20
+ def resolve_timeout(self, processor):
21
+ # Reads a plain attribute: a Mock processor yields a Mock, not None.
22
+ if self.timeout is not None:
23
+ return self.timeout
24
+ if self.timeout_param is not None:
25
+ value = getattr(processor, self.timeout_param, None)
26
+ if value is not None:
27
+ return value
28
+ return self.default_timeout
@@ -5,6 +5,7 @@ from argparse import ArgumentParser
5
5
  import logging
6
6
 
7
7
  from . async_processor import AsyncProcessor
8
+ from . async_librarian_client import default_librarian_timeout
8
9
 
9
10
  logger = logging.getLogger(__name__)
10
11
 
@@ -18,6 +19,10 @@ class WorkspaceProcessor(AsyncProcessor):
18
19
 
19
20
  super(WorkspaceProcessor, self).__init__(**params)
20
21
 
22
+ self.librarian_timeout = int(params.get(
23
+ "librarian_timeout", default_librarian_timeout
24
+ ))
25
+
21
26
  self.active_workspaces = set()
22
27
 
23
28
  self.register_workspace_handler(self._handle_workspace_changes)
@@ -63,3 +68,13 @@ class WorkspaceProcessor(AsyncProcessor):
63
68
  @staticmethod
64
69
  def add_args(parser: ArgumentParser) -> None:
65
70
  AsyncProcessor.add_args(parser)
71
+
72
+ @staticmethod
73
+ def add_librarian_args(parser: ArgumentParser) -> None:
74
+ parser.add_argument(
75
+ '--librarian-timeout',
76
+ type=int,
77
+ default=default_librarian_timeout,
78
+ help=f'Librarian request timeout in seconds '
79
+ f'(default: {default_librarian_timeout})',
80
+ )
@@ -0,0 +1 @@
1
+ __version__ = "2.9.4"
@@ -1,12 +1,12 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: trustgraph-base
3
- Version: 2.9.2
3
+ Version: 2.9.4
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
7
7
  Classifier: Programming Language :: Python :: 3
8
8
  Classifier: Operating System :: OS Independent
9
- Requires-Python: >=3.8
9
+ Requires-Python: >=3.10
10
10
  Description-Content-Type: text/markdown
11
11
  Requires-Dist: pulsar-client
12
12
  Requires-Dist: prometheus-client
@@ -1,9 +0,0 @@
1
-
2
- class Spec:
3
-
4
- async def register(self, flow, processor, definition):
5
- self.add(flow, processor, definition)
6
- return None
7
-
8
- def add(self, flow, processor, definition):
9
- pass
@@ -1 +0,0 @@
1
- __version__ = "2.9.2"