trustgraph-flow 1.0.17__tar.gz → 1.0.19__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.
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/PKG-INFO +2 -2
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/setup.py +1 -0
- trustgraph-flow-1.0.19/trustgraph/flow_version.py +1 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/manager.py +8 -7
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/service.py +1 -0
- trustgraph-flow-1.0.19/trustgraph/rev_gateway/__init__.py +1 -0
- trustgraph-flow-1.0.19/trustgraph/rev_gateway/__main__.py +11 -0
- trustgraph-flow-1.0.19/trustgraph/rev_gateway/dispatcher.py +130 -0
- trustgraph-flow-1.0.19/trustgraph/rev_gateway/service.py +242 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph_flow.egg-info/PKG-INFO +2 -2
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph_flow.egg-info/SOURCES.txt +4 -0
- trustgraph-flow-1.0.17/trustgraph/flow_version.py +0 -1
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/README.md +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/agent-manager-react +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/api-gateway +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/chunker-recursive +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/chunker-token +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/config-svc +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/de-query-milvus +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/de-query-pinecone +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/de-query-qdrant +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/de-write-milvus +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/de-write-pinecone +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/de-write-qdrant +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/document-embeddings +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/document-rag +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/embeddings-fastembed +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/embeddings-ollama +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/ge-query-milvus +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/ge-query-pinecone +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/ge-query-qdrant +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/ge-write-milvus +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/ge-write-pinecone +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/ge-write-qdrant +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/graph-embeddings +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/graph-rag +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/kg-extract-definitions +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/kg-extract-relationships +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/kg-extract-topics +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/kg-manager +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/kg-store +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/librarian +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/metering +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/object-extract-row +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/oe-write-milvus +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/pdf-decoder +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/pdf-ocr-mistral +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/prompt-generic +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/prompt-template +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/rows-write-cassandra +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/run-processing +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/text-completion-azure +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/text-completion-azure-openai +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/text-completion-claude +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/text-completion-cohere +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/text-completion-googleaistudio +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/text-completion-llamafile +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/text-completion-lmstudio +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/text-completion-mistral +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/text-completion-ollama +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/text-completion-openai +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/text-completion-tgi +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/text-completion-vllm +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/triples-query-cassandra +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/triples-query-falkordb +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/triples-query-memgraph +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/triples-query-neo4j +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/triples-write-cassandra +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/triples-write-falkordb +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/triples-write-memgraph +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/triples-write-neo4j +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/scripts/wikipedia-lookup +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/setup.cfg +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/agent/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/agent/react/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/agent/react/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/agent/react/agent_manager.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/agent/react/service.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/agent/react/tools.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/agent/react/types.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/chunking/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/chunking/recursive/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/chunking/recursive/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/chunking/recursive/chunker.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/chunking/token/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/chunking/token/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/chunking/token/chunker.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/config/service/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/config/service/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/config/service/config.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/config/service/flow.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/config/service/service.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/cores/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/cores/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/cores/knowledge.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/cores/service.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/decoding/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/decoding/mistral_ocr/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/decoding/mistral_ocr/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/decoding/mistral_ocr/processor.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/decoding/pdf/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/decoding/pdf/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/decoding/pdf/pdf_decoder.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/direct/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/direct/cassandra.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/direct/milvus_doc_embeddings.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/direct/milvus_graph_embeddings.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/direct/milvus_object_embeddings.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/embeddings/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/embeddings/document_embeddings/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/embeddings/document_embeddings/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/embeddings/document_embeddings/embeddings.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/embeddings/fastembed/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/embeddings/fastembed/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/embeddings/fastembed/processor.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/embeddings/graph_embeddings/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/embeddings/graph_embeddings/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/embeddings/graph_embeddings/embeddings.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/embeddings/ollama/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/embeddings/ollama/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/embeddings/ollama/processor.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/external/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/external/wikipedia/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/external/wikipedia/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/external/wikipedia/service.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/extract/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/extract/kg/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/extract/kg/definitions/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/extract/kg/definitions/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/extract/kg/definitions/extract.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/extract/kg/relationships/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/extract/kg/relationships/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/extract/kg/relationships/extract.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/extract/kg/topics/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/extract/kg/topics/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/extract/kg/topics/extract.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/extract/object/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/extract/object/row/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/extract/object/row/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/extract/object/row/extract.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/auth.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/config/receiver.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/agent.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/config.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/core_export.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/core_import.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/document_embeddings_export.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/document_embeddings_import.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/document_load.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/document_rag.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/embeddings.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/entity_contexts_export.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/entity_contexts_import.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/flow.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/graph_embeddings_export.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/graph_embeddings_import.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/graph_embeddings_query.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/graph_rag.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/knowledge.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/librarian.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/mux.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/prompt.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/requestor.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/sender.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/serialize.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/streamer.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/text_completion.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/text_load.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/triples_export.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/triples_import.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/dispatch/triples_query.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/endpoint/constant_endpoint.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/endpoint/manager.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/endpoint/metrics.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/endpoint/socket.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/endpoint/stream_endpoint.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/endpoint/variable_endpoint.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/running.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/unused/dbpedia.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/unused/encyclopedia.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/gateway/unused/internet_search.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/librarian/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/librarian/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/librarian/blob_store.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/librarian/librarian.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/librarian/service.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/metering/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/metering/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/metering/counter.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/prompt/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/prompt/generic/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/prompt/generic/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/prompt/generic/prompts.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/prompt/generic/service.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/prompt/template/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/prompt/template/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/prompt/template/prompt_manager.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/prompt/template/service.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/azure/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/azure/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/azure/llm.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/azure_openai/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/azure_openai/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/azure_openai/llm.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/claude/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/claude/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/claude/llm.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/cohere/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/cohere/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/cohere/llm.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/googleaistudio/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/googleaistudio/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/googleaistudio/llm.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/llamafile/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/llamafile/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/llamafile/llm.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/lmstudio/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/lmstudio/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/lmstudio/llm.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/mistral/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/mistral/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/mistral/llm.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/ollama/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/ollama/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/ollama/llm.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/openai/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/openai/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/openai/llm.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/tgi/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/tgi/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/tgi/llm.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/vllm/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/vllm/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/model/text_completion/vllm/llm.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/processing/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/processing/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/processing/processing.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/doc_embeddings/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/doc_embeddings/milvus/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/doc_embeddings/milvus/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/doc_embeddings/milvus/service.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/doc_embeddings/pinecone/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/doc_embeddings/pinecone/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/doc_embeddings/pinecone/service.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/doc_embeddings/qdrant/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/doc_embeddings/qdrant/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/doc_embeddings/qdrant/service.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/graph_embeddings/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/graph_embeddings/milvus/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/graph_embeddings/milvus/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/graph_embeddings/milvus/service.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/graph_embeddings/pinecone/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/graph_embeddings/pinecone/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/graph_embeddings/pinecone/service.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/graph_embeddings/qdrant/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/graph_embeddings/qdrant/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/graph_embeddings/qdrant/service.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/triples/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/triples/cassandra/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/triples/cassandra/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/triples/cassandra/service.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/triples/falkordb/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/triples/falkordb/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/triples/falkordb/service.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/triples/memgraph/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/triples/memgraph/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/triples/memgraph/service.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/triples/neo4j/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/triples/neo4j/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/query/triples/neo4j/service.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/retrieval/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/retrieval/document_rag/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/retrieval/document_rag/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/retrieval/document_rag/document_rag.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/retrieval/document_rag/rag.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/retrieval/graph_rag/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/retrieval/graph_rag/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/retrieval/graph_rag/graph_rag.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/retrieval/graph_rag/rag.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/doc_embeddings/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/doc_embeddings/milvus/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/doc_embeddings/milvus/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/doc_embeddings/milvus/write.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/doc_embeddings/pinecone/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/doc_embeddings/pinecone/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/doc_embeddings/pinecone/write.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/doc_embeddings/qdrant/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/doc_embeddings/qdrant/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/doc_embeddings/qdrant/write.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/graph_embeddings/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/graph_embeddings/milvus/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/graph_embeddings/milvus/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/graph_embeddings/milvus/write.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/graph_embeddings/pinecone/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/graph_embeddings/pinecone/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/graph_embeddings/pinecone/write.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/graph_embeddings/qdrant/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/graph_embeddings/qdrant/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/graph_embeddings/qdrant/write.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/knowledge/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/knowledge/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/knowledge/store.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/object_embeddings/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/object_embeddings/milvus/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/object_embeddings/milvus/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/object_embeddings/milvus/write.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/rows/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/rows/cassandra/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/rows/cassandra/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/rows/cassandra/write.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/triples/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/triples/cassandra/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/triples/cassandra/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/triples/cassandra/write.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/triples/falkordb/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/triples/falkordb/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/triples/falkordb/write.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/triples/memgraph/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/triples/memgraph/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/triples/memgraph/write.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/triples/neo4j/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/triples/neo4j/__main__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/storage/triples/neo4j/write.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/tables/__init__.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/tables/config.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/tables/knowledge.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph/tables/library.py +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph_flow.egg-info/dependency_links.txt +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/trustgraph_flow.egg-info/requires.txt +0 -0
- {trustgraph-flow-1.0.17 → trustgraph-flow-1.0.19}/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: 1.0.
|
3
|
+
Version: 1.0.19
|
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/v1.0.
|
6
|
+
Download-URL: https://github.com/trustgraph-ai/trustgraph/archive/refs/tags/v1.0.19.tar.gz
|
7
7
|
Author: trustgraph.ai
|
8
8
|
Author-email: security@trustgraph.ai
|
9
9
|
Classifier: Programming Language :: Python :: 3
|
@@ -0,0 +1 @@
|
|
1
|
+
__version__ = "1.0.19"
|
@@ -81,10 +81,11 @@ class DispatcherWrapper:
|
|
81
81
|
|
82
82
|
class DispatcherManager:
|
83
83
|
|
84
|
-
def __init__(self, pulsar_client, config_receiver):
|
84
|
+
def __init__(self, pulsar_client, config_receiver, prefix="api-gateway"):
|
85
85
|
self.pulsar_client = pulsar_client
|
86
86
|
self.config_receiver = config_receiver
|
87
87
|
self.config_receiver.add_handler(self)
|
88
|
+
self.prefix = prefix
|
88
89
|
|
89
90
|
self.flows = {}
|
90
91
|
self.dispatchers = {}
|
@@ -133,8 +134,8 @@ class DispatcherManager:
|
|
133
134
|
dispatcher = global_dispatchers[kind](
|
134
135
|
pulsar_client = self.pulsar_client,
|
135
136
|
timeout = 120,
|
136
|
-
consumer = f"
|
137
|
-
subscriber = f"
|
137
|
+
consumer = f"{self.prefix}-{kind}-request",
|
138
|
+
subscriber = f"{self.prefix}-{kind}-request",
|
138
139
|
)
|
139
140
|
|
140
141
|
await dispatcher.start()
|
@@ -226,8 +227,8 @@ class DispatcherManager:
|
|
226
227
|
ws = ws,
|
227
228
|
running = running,
|
228
229
|
queue = qconfig,
|
229
|
-
consumer = f"
|
230
|
-
subscriber = f"
|
230
|
+
consumer = f"{self.prefix}-{id}",
|
231
|
+
subscriber = f"{self.prefix}-{id}",
|
231
232
|
)
|
232
233
|
|
233
234
|
return dispatcher
|
@@ -268,8 +269,8 @@ class DispatcherManager:
|
|
268
269
|
request_queue = qconfig["request"],
|
269
270
|
response_queue = qconfig["response"],
|
270
271
|
timeout = 120,
|
271
|
-
consumer = f"
|
272
|
-
subscriber = f"
|
272
|
+
consumer = f"{self.prefix}-{flow}-{kind}-request",
|
273
|
+
subscriber = f"{self.prefix}-{flow}-{kind}-request",
|
273
274
|
)
|
274
275
|
elif kind in sender_dispatchers:
|
275
276
|
dispatcher = sender_dispatchers[kind](
|
@@ -0,0 +1 @@
|
|
1
|
+
from . service import run
|
@@ -0,0 +1,130 @@
|
|
1
|
+
import asyncio
|
2
|
+
import logging
|
3
|
+
import uuid
|
4
|
+
from typing import Dict, Any, Optional
|
5
|
+
from trustgraph.messaging import TranslatorRegistry
|
6
|
+
from ..gateway.dispatch.manager import DispatcherManager
|
7
|
+
|
8
|
+
logger = logging.getLogger("dispatcher")
|
9
|
+
logger.setLevel(logging.INFO)
|
10
|
+
|
11
|
+
class WebSocketResponder:
|
12
|
+
"""Simple responder that captures response for websocket return"""
|
13
|
+
def __init__(self):
|
14
|
+
self.response = None
|
15
|
+
self.completed = False
|
16
|
+
|
17
|
+
async def send(self, data):
|
18
|
+
"""Capture the response data"""
|
19
|
+
self.response = data
|
20
|
+
self.completed = True
|
21
|
+
|
22
|
+
async def __call__(self, data, final=False):
|
23
|
+
"""Make the responder callable for compatibility with requestor"""
|
24
|
+
await self.send(data)
|
25
|
+
if final:
|
26
|
+
self.completed = True
|
27
|
+
|
28
|
+
class MessageDispatcher:
|
29
|
+
|
30
|
+
def __init__(self, max_workers: int = 10, config_receiver=None, pulsar_client=None):
|
31
|
+
self.max_workers = max_workers
|
32
|
+
self.semaphore = asyncio.Semaphore(max_workers)
|
33
|
+
self.active_tasks = set()
|
34
|
+
self.pulsar_client = pulsar_client
|
35
|
+
|
36
|
+
# Use DispatcherManager for flow and service management
|
37
|
+
if pulsar_client and config_receiver:
|
38
|
+
self.dispatcher_manager = DispatcherManager(pulsar_client, config_receiver, prefix="rev-gateway")
|
39
|
+
else:
|
40
|
+
self.dispatcher_manager = None
|
41
|
+
logger.warning("No pulsar_client or config_receiver provided - using fallback mode")
|
42
|
+
|
43
|
+
# Service name mapping from websocket protocol to translator registry
|
44
|
+
self.service_mapping = {
|
45
|
+
"text-completion": "text-completion",
|
46
|
+
"graph-rag": "graph-rag",
|
47
|
+
"agent": "agent",
|
48
|
+
"embeddings": "embeddings",
|
49
|
+
"graph-embeddings": "graph-embeddings",
|
50
|
+
"triples": "triples",
|
51
|
+
"document-load": "document",
|
52
|
+
"text-load": "text-document",
|
53
|
+
"flow": "flow",
|
54
|
+
"knowledge": "knowledge",
|
55
|
+
"config": "config",
|
56
|
+
"librarian": "librarian",
|
57
|
+
"document-rag": "document-rag"
|
58
|
+
}
|
59
|
+
|
60
|
+
async def handle_message(self, message: Dict[Any, Any]) -> Optional[Dict[Any, Any]]:
|
61
|
+
async with self.semaphore:
|
62
|
+
task = asyncio.create_task(self._process_message(message))
|
63
|
+
self.active_tasks.add(task)
|
64
|
+
|
65
|
+
try:
|
66
|
+
result = await task
|
67
|
+
return result
|
68
|
+
finally:
|
69
|
+
self.active_tasks.discard(task)
|
70
|
+
|
71
|
+
async def _process_message(self, message: Dict[Any, Any]) -> Dict[Any, Any]:
|
72
|
+
request_id = message.get('id', str(uuid.uuid4()))
|
73
|
+
service = message.get('service')
|
74
|
+
request_data = message.get('request', {})
|
75
|
+
flow_id = message.get('flow', 'default') # Default flow
|
76
|
+
|
77
|
+
logger.info(f"Processing message {request_id} for service {service} on flow {flow_id}")
|
78
|
+
|
79
|
+
try:
|
80
|
+
if not self.dispatcher_manager:
|
81
|
+
raise RuntimeError("DispatcherManager not available - pulsar_client and config_receiver required")
|
82
|
+
|
83
|
+
# Use DispatcherManager for flow-based processing
|
84
|
+
responder = WebSocketResponder()
|
85
|
+
|
86
|
+
# Map websocket service name to dispatcher service name
|
87
|
+
dispatcher_service = self.service_mapping.get(service, service)
|
88
|
+
|
89
|
+
# Check if this is a global service or flow service
|
90
|
+
from ..gateway.dispatch.manager import global_dispatchers
|
91
|
+
if dispatcher_service in global_dispatchers:
|
92
|
+
# Use global service dispatcher
|
93
|
+
await self.dispatcher_manager.invoke_global_service(
|
94
|
+
request_data, responder, dispatcher_service
|
95
|
+
)
|
96
|
+
else:
|
97
|
+
# Use DispatcherManager to process the request through Pulsar queues
|
98
|
+
await self.dispatcher_manager.invoke_flow_service(
|
99
|
+
request_data, responder, flow_id, dispatcher_service
|
100
|
+
)
|
101
|
+
|
102
|
+
# Get the response from the responder
|
103
|
+
if responder.completed:
|
104
|
+
response_data = responder.response
|
105
|
+
else:
|
106
|
+
response_data = {'error': 'No response received'}
|
107
|
+
|
108
|
+
response = {
|
109
|
+
'id': request_id,
|
110
|
+
'response': response_data
|
111
|
+
}
|
112
|
+
|
113
|
+
except Exception as e:
|
114
|
+
logger.error(f"Error processing message {request_id}: {e}")
|
115
|
+
response = {
|
116
|
+
'id': request_id,
|
117
|
+
'response': {'error': str(e)}
|
118
|
+
}
|
119
|
+
|
120
|
+
logger.info(f"Completed processing message {request_id}")
|
121
|
+
return response
|
122
|
+
|
123
|
+
|
124
|
+
async def shutdown(self):
|
125
|
+
if self.active_tasks:
|
126
|
+
logger.info(f"Waiting for {len(self.active_tasks)} active tasks to complete")
|
127
|
+
await asyncio.gather(*self.active_tasks, return_exceptions=True)
|
128
|
+
|
129
|
+
# DispatcherManager handles its own cleanup
|
130
|
+
logger.info("Dispatcher shutdown complete")
|
@@ -0,0 +1,242 @@
|
|
1
|
+
import asyncio
|
2
|
+
import argparse
|
3
|
+
import logging
|
4
|
+
import json
|
5
|
+
import sys
|
6
|
+
import os
|
7
|
+
from aiohttp import ClientSession, WSMsgType, ClientWebSocketResponse
|
8
|
+
from typing import Optional
|
9
|
+
from urllib.parse import urlparse, urlunparse
|
10
|
+
import pulsar
|
11
|
+
|
12
|
+
from .dispatcher import MessageDispatcher
|
13
|
+
from ..gateway.config.receiver import ConfigReceiver
|
14
|
+
|
15
|
+
logger = logging.getLogger("rev_gateway")
|
16
|
+
logger.setLevel(logging.INFO)
|
17
|
+
|
18
|
+
default_websocket = "ws://localhost:7650/out"
|
19
|
+
|
20
|
+
class ReverseGateway:
|
21
|
+
|
22
|
+
def __init__(self, websocket_uri: str = None, max_workers: int = 10,
|
23
|
+
pulsar_host: str = None, pulsar_api_key: str = None,
|
24
|
+
pulsar_listener: str = None):
|
25
|
+
# Set default WebSocket URI with environment variable support
|
26
|
+
if websocket_uri is None:
|
27
|
+
websocket_uri = os.getenv("WEBSOCKET_URI", default_websocket)
|
28
|
+
|
29
|
+
# Parse and validate the WebSocket URI
|
30
|
+
parsed_uri = urlparse(websocket_uri)
|
31
|
+
if parsed_uri.scheme not in ('ws', 'wss'):
|
32
|
+
raise ValueError(f"WebSocket URI must use ws:// or wss:// scheme, got: {parsed_uri.scheme}")
|
33
|
+
if not parsed_uri.netloc:
|
34
|
+
raise ValueError(f"WebSocket URI must include hostname, got: {websocket_uri}")
|
35
|
+
|
36
|
+
# Store parsed components for debugging/logging
|
37
|
+
self.websocket_uri = websocket_uri
|
38
|
+
self.host = parsed_uri.hostname
|
39
|
+
self.port = parsed_uri.port
|
40
|
+
self.scheme = parsed_uri.scheme
|
41
|
+
self.path = parsed_uri.path or "/ws"
|
42
|
+
|
43
|
+
# Construct the full URL (in case path was missing)
|
44
|
+
if not parsed_uri.path:
|
45
|
+
self.url = f"{self.scheme}://{parsed_uri.netloc}/ws"
|
46
|
+
else:
|
47
|
+
self.url = websocket_uri
|
48
|
+
|
49
|
+
self.max_workers = max_workers
|
50
|
+
self.ws: Optional[ClientWebSocketResponse] = None
|
51
|
+
self.session: Optional[ClientSession] = None
|
52
|
+
self.running = False
|
53
|
+
self.reconnect_delay = 3.0
|
54
|
+
|
55
|
+
# Pulsar configuration
|
56
|
+
self.pulsar_host = pulsar_host or os.getenv("PULSAR_HOST", "pulsar://pulsar:6650")
|
57
|
+
self.pulsar_api_key = pulsar_api_key or os.getenv("PULSAR_API_KEY", None)
|
58
|
+
self.pulsar_listener = pulsar_listener
|
59
|
+
|
60
|
+
# Initialize Pulsar client
|
61
|
+
if self.pulsar_api_key:
|
62
|
+
self.pulsar_client = pulsar.Client(
|
63
|
+
self.pulsar_host,
|
64
|
+
listener_name=self.pulsar_listener,
|
65
|
+
authentication=pulsar.AuthenticationToken(self.pulsar_api_key)
|
66
|
+
)
|
67
|
+
else:
|
68
|
+
self.pulsar_client = pulsar.Client(
|
69
|
+
self.pulsar_host,
|
70
|
+
listener_name=self.pulsar_listener
|
71
|
+
)
|
72
|
+
|
73
|
+
# Initialize config receiver
|
74
|
+
self.config_receiver = ConfigReceiver(self.pulsar_client)
|
75
|
+
|
76
|
+
# Initialize dispatcher with config_receiver and pulsar_client - must be created after config_receiver
|
77
|
+
self.dispatcher = MessageDispatcher(max_workers, self.config_receiver, self.pulsar_client)
|
78
|
+
|
79
|
+
async def connect(self) -> bool:
|
80
|
+
try:
|
81
|
+
if self.session is None:
|
82
|
+
self.session = ClientSession()
|
83
|
+
|
84
|
+
logger.info(f"Connecting to {self.url}")
|
85
|
+
self.ws = await self.session.ws_connect(self.url)
|
86
|
+
logger.info(f"WebSocket connection established to {self.host}:{self.port or 'default'}")
|
87
|
+
return True
|
88
|
+
|
89
|
+
except Exception as e:
|
90
|
+
logger.error(f"Failed to connect to {self.url}: {e}")
|
91
|
+
return False
|
92
|
+
|
93
|
+
async def disconnect(self):
|
94
|
+
if self.ws and not self.ws.closed:
|
95
|
+
await self.ws.close()
|
96
|
+
if self.session and not self.session.closed:
|
97
|
+
await self.session.close()
|
98
|
+
self.ws = None
|
99
|
+
self.session = None
|
100
|
+
|
101
|
+
async def send_message(self, message: dict):
|
102
|
+
if self.ws and not self.ws.closed:
|
103
|
+
try:
|
104
|
+
await self.ws.send_str(json.dumps(message))
|
105
|
+
except Exception as e:
|
106
|
+
logger.error(f"Failed to send message: {e}")
|
107
|
+
|
108
|
+
async def handle_message(self, message: str):
|
109
|
+
try:
|
110
|
+
print(f"Received: {message}", flush=True)
|
111
|
+
|
112
|
+
msg_data = json.loads(message)
|
113
|
+
response = await self.dispatcher.handle_message(msg_data)
|
114
|
+
|
115
|
+
if response:
|
116
|
+
await self.send_message(response)
|
117
|
+
|
118
|
+
except Exception as e:
|
119
|
+
logger.error(f"Error handling message: {e}")
|
120
|
+
|
121
|
+
async def listen(self):
|
122
|
+
while self.running and self.ws and not self.ws.closed:
|
123
|
+
try:
|
124
|
+
msg = await self.ws.receive()
|
125
|
+
|
126
|
+
if msg.type == WSMsgType.TEXT:
|
127
|
+
await self.handle_message(msg.data)
|
128
|
+
elif msg.type == WSMsgType.BINARY:
|
129
|
+
await self.handle_message(msg.data.decode('utf-8'))
|
130
|
+
elif msg.type in (WSMsgType.CLOSE, WSMsgType.ERROR):
|
131
|
+
logger.warning("WebSocket closed or error occurred")
|
132
|
+
break
|
133
|
+
|
134
|
+
except Exception as e:
|
135
|
+
logger.error(f"Error in listen loop: {e}")
|
136
|
+
break
|
137
|
+
|
138
|
+
async def run(self):
|
139
|
+
self.running = True
|
140
|
+
logger.info("Starting reverse gateway")
|
141
|
+
|
142
|
+
# Start config receiver
|
143
|
+
logger.info("Starting config receiver")
|
144
|
+
await self.config_receiver.start()
|
145
|
+
|
146
|
+
while self.running:
|
147
|
+
try:
|
148
|
+
if await self.connect():
|
149
|
+
await self.listen()
|
150
|
+
else:
|
151
|
+
logger.warning(f"Connection failed, retrying in {self.reconnect_delay} seconds")
|
152
|
+
|
153
|
+
await self.disconnect()
|
154
|
+
|
155
|
+
if self.running:
|
156
|
+
await asyncio.sleep(self.reconnect_delay)
|
157
|
+
|
158
|
+
except KeyboardInterrupt:
|
159
|
+
logger.info("Shutdown requested")
|
160
|
+
break
|
161
|
+
except Exception as e:
|
162
|
+
logger.error(f"Unexpected error: {e}")
|
163
|
+
if self.running:
|
164
|
+
await asyncio.sleep(self.reconnect_delay)
|
165
|
+
|
166
|
+
await self.shutdown()
|
167
|
+
|
168
|
+
async def shutdown(self):
|
169
|
+
logger.info("Shutting down reverse gateway")
|
170
|
+
self.running = False
|
171
|
+
await self.dispatcher.shutdown()
|
172
|
+
await self.disconnect()
|
173
|
+
|
174
|
+
# Close Pulsar client
|
175
|
+
if hasattr(self, 'pulsar_client'):
|
176
|
+
self.pulsar_client.close()
|
177
|
+
|
178
|
+
def stop(self):
|
179
|
+
self.running = False
|
180
|
+
|
181
|
+
def parse_args():
|
182
|
+
parser = argparse.ArgumentParser(
|
183
|
+
prog="reverse-gateway",
|
184
|
+
description="TrustGraph Reverse Gateway - WebSocket to Pulsar bridge"
|
185
|
+
)
|
186
|
+
|
187
|
+
parser.add_argument(
|
188
|
+
'--websocket-uri',
|
189
|
+
default=None,
|
190
|
+
help=f'WebSocket URI to connect to (default: {default_websocket} or WEBSOCKET_URI env var)'
|
191
|
+
)
|
192
|
+
|
193
|
+
parser.add_argument(
|
194
|
+
'--max-workers',
|
195
|
+
type=int,
|
196
|
+
default=10,
|
197
|
+
help='Maximum concurrent message handlers (default: 10)'
|
198
|
+
)
|
199
|
+
|
200
|
+
parser.add_argument(
|
201
|
+
'-p', '--pulsar-host',
|
202
|
+
default=None,
|
203
|
+
help='Pulsar host URL (default: pulsar://pulsar:6650 or PULSAR_HOST env var)'
|
204
|
+
)
|
205
|
+
|
206
|
+
parser.add_argument(
|
207
|
+
'--pulsar-api-key',
|
208
|
+
default=None,
|
209
|
+
help='Pulsar API key for authentication (default: PULSAR_API_KEY env var)'
|
210
|
+
)
|
211
|
+
|
212
|
+
parser.add_argument(
|
213
|
+
'--pulsar-listener',
|
214
|
+
default=None,
|
215
|
+
help='Pulsar listener name'
|
216
|
+
)
|
217
|
+
|
218
|
+
return parser.parse_args()
|
219
|
+
|
220
|
+
def run():
|
221
|
+
args = parse_args()
|
222
|
+
|
223
|
+
gateway = ReverseGateway(
|
224
|
+
websocket_uri=args.websocket_uri,
|
225
|
+
max_workers=args.max_workers,
|
226
|
+
pulsar_host=args.pulsar_host,
|
227
|
+
pulsar_api_key=args.pulsar_api_key,
|
228
|
+
pulsar_listener=args.pulsar_listener
|
229
|
+
)
|
230
|
+
|
231
|
+
print(f"Starting reverse gateway:")
|
232
|
+
print(f" WebSocket URI: {gateway.url}")
|
233
|
+
print(f" Max workers: {args.max_workers}")
|
234
|
+
print(f" Pulsar host: {gateway.pulsar_host}")
|
235
|
+
|
236
|
+
try:
|
237
|
+
asyncio.run(gateway.run())
|
238
|
+
except KeyboardInterrupt:
|
239
|
+
print("\nShutdown requested by user")
|
240
|
+
except Exception as e:
|
241
|
+
print(f"Fatal error: {e}")
|
242
|
+
sys.exit(1)
|
@@ -1,9 +1,9 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: trustgraph-flow
|
3
|
-
Version: 1.0.
|
3
|
+
Version: 1.0.19
|
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/v1.0.
|
6
|
+
Download-URL: https://github.com/trustgraph-ai/trustgraph/archive/refs/tags/v1.0.19.tar.gz
|
7
7
|
Author: trustgraph.ai
|
8
8
|
Author-email: security@trustgraph.ai
|
9
9
|
Classifier: Programming Language :: Python :: 3
|
@@ -274,6 +274,10 @@ trustgraph/retrieval/graph_rag/__init__.py
|
|
274
274
|
trustgraph/retrieval/graph_rag/__main__.py
|
275
275
|
trustgraph/retrieval/graph_rag/graph_rag.py
|
276
276
|
trustgraph/retrieval/graph_rag/rag.py
|
277
|
+
trustgraph/rev_gateway/__init__.py
|
278
|
+
trustgraph/rev_gateway/__main__.py
|
279
|
+
trustgraph/rev_gateway/dispatcher.py
|
280
|
+
trustgraph/rev_gateway/service.py
|
277
281
|
trustgraph/storage/__init__.py
|
278
282
|
trustgraph/storage/doc_embeddings/__init__.py
|
279
283
|
trustgraph/storage/doc_embeddings/milvus/__init__.py
|
@@ -1 +0,0 @@
|
|
1
|
-
__version__ = "1.0.17"
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|