trustgraph-flow 0.23.5__tar.gz → 0.23.7__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-0.23.5 → trustgraph-flow-0.23.7}/PKG-INFO +2 -2
- trustgraph-flow-0.23.7/trustgraph/flow_version.py +1 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/config.py +3 -1
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/flow.py +3 -1
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/librarian.py +3 -1
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/manager.py +47 -28
- trustgraph-flow-0.23.7/trustgraph/gateway/dispatch/mux.py +167 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/endpoint/manager.py +13 -16
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph_flow.egg-info/PKG-INFO +2 -2
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph_flow.egg-info/SOURCES.txt +1 -1
- trustgraph-flow-0.23.5/trustgraph/flow_version.py +0 -1
- trustgraph-flow-0.23.5/trustgraph/gateway/endpoint/mux.py +0 -167
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/README.md +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/agent-manager-react +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/api-gateway +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/chunker-recursive +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/chunker-token +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/config-svc +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/de-query-milvus +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/de-query-pinecone +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/de-query-qdrant +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/de-write-milvus +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/de-write-pinecone +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/de-write-qdrant +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/document-embeddings +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/document-rag +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/embeddings-fastembed +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/embeddings-ollama +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/ge-query-milvus +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/ge-query-pinecone +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/ge-query-qdrant +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/ge-write-milvus +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/ge-write-pinecone +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/ge-write-qdrant +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/graph-embeddings +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/graph-rag +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/kg-extract-definitions +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/kg-extract-relationships +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/kg-extract-topics +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/librarian +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/metering +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/object-extract-row +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/oe-write-milvus +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/pdf-decoder +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/pdf-ocr-mistral +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/prompt-generic +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/prompt-template +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/rows-write-cassandra +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/run-processing +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/text-completion-azure +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/text-completion-azure-openai +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/text-completion-claude +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/text-completion-cohere +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/text-completion-googleaistudio +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/text-completion-llamafile +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/text-completion-lmstudio +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/text-completion-mistral +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/text-completion-ollama +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/text-completion-openai +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/triples-query-cassandra +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/triples-query-falkordb +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/triples-query-memgraph +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/triples-query-neo4j +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/triples-write-cassandra +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/triples-write-falkordb +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/triples-write-memgraph +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/triples-write-neo4j +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/scripts/wikipedia-lookup +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/setup.cfg +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/setup.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/agent/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/agent/react/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/agent/react/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/agent/react/agent_manager.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/agent/react/service.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/agent/react/tools.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/agent/react/types.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/chunking/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/chunking/recursive/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/chunking/recursive/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/chunking/recursive/chunker.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/chunking/token/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/chunking/token/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/chunking/token/chunker.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/config/service/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/config/service/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/config/service/config.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/config/service/flow.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/config/service/service.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/decoding/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/decoding/mistral_ocr/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/decoding/mistral_ocr/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/decoding/mistral_ocr/processor.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/decoding/pdf/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/decoding/pdf/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/decoding/pdf/pdf_decoder.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/direct/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/direct/cassandra.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/direct/milvus_doc_embeddings.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/direct/milvus_graph_embeddings.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/direct/milvus_object_embeddings.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/embeddings/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/embeddings/document_embeddings/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/embeddings/document_embeddings/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/embeddings/document_embeddings/embeddings.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/embeddings/fastembed/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/embeddings/fastembed/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/embeddings/fastembed/processor.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/embeddings/graph_embeddings/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/embeddings/graph_embeddings/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/embeddings/graph_embeddings/embeddings.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/embeddings/ollama/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/embeddings/ollama/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/embeddings/ollama/processor.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/external/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/external/wikipedia/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/external/wikipedia/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/external/wikipedia/service.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/extract/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/extract/kg/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/extract/kg/definitions/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/extract/kg/definitions/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/extract/kg/definitions/extract.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/extract/kg/relationships/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/extract/kg/relationships/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/extract/kg/relationships/extract.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/extract/kg/topics/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/extract/kg/topics/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/extract/kg/topics/extract.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/extract/object/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/extract/object/row/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/extract/object/row/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/extract/object/row/extract.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/auth.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/config/receiver.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/agent.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/document_embeddings_export.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/document_embeddings_import.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/document_load.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/document_rag.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/embeddings.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/graph_embeddings_export.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/graph_embeddings_import.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/graph_embeddings_query.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/graph_rag.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/prompt.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/requestor.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/sender.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/serialize.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/streamer.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/text_completion.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/text_load.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/triples_export.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/triples_import.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/dispatch/triples_query.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/endpoint/constant_endpoint.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/endpoint/metrics.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/endpoint/socket.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/endpoint/variable_endpoint.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/running.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/service.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/unused/dbpedia.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/unused/encyclopedia.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/gateway/unused/internet_search.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/librarian/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/librarian/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/librarian/blob_store.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/librarian/librarian.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/librarian/service.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/librarian/table_store.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/metering/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/metering/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/metering/counter.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/prompt/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/prompt/generic/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/prompt/generic/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/prompt/generic/prompts.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/prompt/generic/service.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/prompt/template/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/prompt/template/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/prompt/template/prompt_manager.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/prompt/template/service.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/azure/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/azure/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/azure/llm.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/azure_openai/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/azure_openai/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/azure_openai/llm.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/claude/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/claude/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/claude/llm.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/cohere/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/cohere/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/cohere/llm.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/googleaistudio/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/googleaistudio/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/googleaistudio/llm.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/llamafile/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/llamafile/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/llamafile/llm.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/lmstudio/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/lmstudio/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/lmstudio/llm.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/mistral/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/mistral/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/mistral/llm.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/ollama/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/ollama/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/ollama/llm.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/openai/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/openai/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/model/text_completion/openai/llm.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/processing/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/processing/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/processing/processing.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/doc_embeddings/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/doc_embeddings/milvus/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/doc_embeddings/milvus/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/doc_embeddings/milvus/service.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/doc_embeddings/pinecone/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/doc_embeddings/pinecone/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/doc_embeddings/pinecone/service.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/doc_embeddings/qdrant/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/doc_embeddings/qdrant/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/doc_embeddings/qdrant/service.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/graph_embeddings/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/graph_embeddings/milvus/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/graph_embeddings/milvus/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/graph_embeddings/milvus/service.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/graph_embeddings/pinecone/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/graph_embeddings/pinecone/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/graph_embeddings/pinecone/service.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/graph_embeddings/qdrant/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/graph_embeddings/qdrant/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/graph_embeddings/qdrant/service.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/triples/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/triples/cassandra/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/triples/cassandra/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/triples/cassandra/service.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/triples/falkordb/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/triples/falkordb/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/triples/falkordb/service.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/triples/memgraph/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/triples/memgraph/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/triples/memgraph/service.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/triples/neo4j/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/triples/neo4j/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/query/triples/neo4j/service.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/retrieval/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/retrieval/document_rag/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/retrieval/document_rag/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/retrieval/document_rag/document_rag.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/retrieval/document_rag/rag.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/retrieval/graph_rag/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/retrieval/graph_rag/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/retrieval/graph_rag/graph_rag.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/retrieval/graph_rag/rag.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/doc_embeddings/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/doc_embeddings/milvus/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/doc_embeddings/milvus/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/doc_embeddings/milvus/write.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/doc_embeddings/pinecone/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/doc_embeddings/pinecone/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/doc_embeddings/pinecone/write.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/doc_embeddings/qdrant/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/doc_embeddings/qdrant/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/doc_embeddings/qdrant/write.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/graph_embeddings/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/graph_embeddings/milvus/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/graph_embeddings/milvus/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/graph_embeddings/milvus/write.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/graph_embeddings/pinecone/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/graph_embeddings/pinecone/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/graph_embeddings/pinecone/write.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/graph_embeddings/qdrant/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/graph_embeddings/qdrant/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/graph_embeddings/qdrant/write.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/object_embeddings/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/object_embeddings/milvus/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/object_embeddings/milvus/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/object_embeddings/milvus/write.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/rows/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/rows/cassandra/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/rows/cassandra/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/rows/cassandra/write.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/triples/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/triples/cassandra/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/triples/cassandra/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/triples/cassandra/write.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/triples/falkordb/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/triples/falkordb/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/triples/falkordb/write.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/triples/memgraph/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/triples/memgraph/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/triples/memgraph/write.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/triples/neo4j/__init__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/triples/neo4j/__main__.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph/storage/triples/neo4j/write.py +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph_flow.egg-info/dependency_links.txt +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph_flow.egg-info/requires.txt +0 -0
- {trustgraph-flow-0.23.5 → trustgraph-flow-0.23.7}/trustgraph_flow.egg-info/top_level.txt +0 -0
@@ -1,9 +1,9 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: trustgraph-flow
|
3
|
-
Version: 0.23.
|
3
|
+
Version: 0.23.7
|
4
4
|
Summary: TrustGraph provides a means to run a pipeline of flexible AI processing components in a flexible means to achieve a processing pipeline.
|
5
5
|
Home-page: https://github.com/trustgraph-ai/trustgraph
|
6
|
-
Download-URL: https://github.com/trustgraph-ai/trustgraph/archive/refs/tags/v0.23.
|
6
|
+
Download-URL: https://github.com/trustgraph-ai/trustgraph/archive/refs/tags/v0.23.7.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__ = "0.23.7"
|
@@ -6,10 +6,12 @@ from ... schema import config_response_queue
|
|
6
6
|
from . requestor import ServiceRequestor
|
7
7
|
|
8
8
|
class ConfigRequestor(ServiceRequestor):
|
9
|
-
def __init__(self, pulsar_client, timeout=120):
|
9
|
+
def __init__(self, pulsar_client, consumer, subscriber, timeout=120):
|
10
10
|
|
11
11
|
super(ConfigRequestor, self).__init__(
|
12
12
|
pulsar_client=pulsar_client,
|
13
|
+
consumer_name = consumer,
|
14
|
+
subscription = subscriber,
|
13
15
|
request_queue=config_request_queue,
|
14
16
|
response_queue=config_response_queue,
|
15
17
|
request_schema=ConfigRequest,
|
@@ -6,10 +6,12 @@ from ... schema import flow_response_queue
|
|
6
6
|
from . requestor import ServiceRequestor
|
7
7
|
|
8
8
|
class FlowRequestor(ServiceRequestor):
|
9
|
-
def __init__(self, pulsar_client, timeout=120):
|
9
|
+
def __init__(self, pulsar_client, consumer, subscriber, timeout=120):
|
10
10
|
|
11
11
|
super(FlowRequestor, self).__init__(
|
12
12
|
pulsar_client=pulsar_client,
|
13
|
+
consumer_name = consumer,
|
14
|
+
subscription = subscriber,
|
13
15
|
request_queue=flow_request_queue,
|
14
16
|
response_queue=flow_response_queue,
|
15
17
|
request_schema=FlowRequest,
|
@@ -8,10 +8,12 @@ from . serialize import serialize_document_package, serialize_document_info
|
|
8
8
|
from . serialize import to_document_package, to_document_info, to_criteria
|
9
9
|
|
10
10
|
class LibrarianRequestor(ServiceRequestor):
|
11
|
-
def __init__(self, pulsar_client, timeout=120):
|
11
|
+
def __init__(self, pulsar_client, consumer, subscriber, timeout=120):
|
12
12
|
|
13
13
|
super(LibrarianRequestor, self).__init__(
|
14
14
|
pulsar_client=pulsar_client,
|
15
|
+
consumer_name = consumer,
|
16
|
+
subscription = subscriber,
|
15
17
|
request_queue=librarian_request_queue,
|
16
18
|
response_queue=librarian_response_queue,
|
17
19
|
request_schema=LibrarianRequest,
|
@@ -27,6 +27,8 @@ from . triples_import import TriplesImport
|
|
27
27
|
from . graph_embeddings_import import GraphEmbeddingsImport
|
28
28
|
from . document_embeddings_import import DocumentEmbeddingsImport
|
29
29
|
|
30
|
+
from . mux import Mux
|
31
|
+
|
30
32
|
request_response_dispatchers = {
|
31
33
|
"agent": AgentRequestor,
|
32
34
|
"text-completion": TextCompletionRequestor,
|
@@ -35,7 +37,13 @@ request_response_dispatchers = {
|
|
35
37
|
"document-rag": DocumentRagRequestor,
|
36
38
|
"embeddings": EmbeddingsRequestor,
|
37
39
|
"graph-embeddings": GraphEmbeddingsQueryRequestor,
|
38
|
-
"triples
|
40
|
+
"triples": TriplesQueryRequestor,
|
41
|
+
}
|
42
|
+
|
43
|
+
global_dispatchers = {
|
44
|
+
"config": ConfigRequestor,
|
45
|
+
"flow": FlowRequestor,
|
46
|
+
"librarian": LibrarianRequestor,
|
39
47
|
}
|
40
48
|
|
41
49
|
sender_dispatchers = {
|
@@ -56,14 +64,10 @@ import_dispatchers = {
|
|
56
64
|
}
|
57
65
|
|
58
66
|
class DispatcherWrapper:
|
59
|
-
def __init__(self,
|
60
|
-
self.
|
61
|
-
|
62
|
-
self.
|
63
|
-
async def process(self, data, responder):
|
64
|
-
return await self.mgr.process_impl(
|
65
|
-
data, responder, self.name, self.impl
|
66
|
-
)
|
67
|
+
def __init__(self, handler):
|
68
|
+
self.handler = handler
|
69
|
+
async def process(self, *args):
|
70
|
+
return await self.handler(*args)
|
67
71
|
|
68
72
|
class DispatcherManager:
|
69
73
|
|
@@ -85,24 +89,26 @@ class DispatcherManager:
|
|
85
89
|
del self.flows[id]
|
86
90
|
return
|
87
91
|
|
88
|
-
def
|
89
|
-
return DispatcherWrapper(self
|
92
|
+
def dispatch_global_service(self):
|
93
|
+
return DispatcherWrapper(self.process_global_service)
|
90
94
|
|
91
|
-
def
|
92
|
-
return DispatcherWrapper(self, "flow", FlowRequestor)
|
95
|
+
async def process_global_service(self, data, responder, params):
|
93
96
|
|
94
|
-
|
95
|
-
return
|
97
|
+
kind = params.get("kind")
|
98
|
+
return await self.invoke_global_service(data, responder, kind)
|
96
99
|
|
97
|
-
async def
|
100
|
+
async def invoke_global_service(self, data, responder, kind):
|
98
101
|
|
99
|
-
key = (None,
|
102
|
+
key = (None, kind)
|
100
103
|
|
101
104
|
if key in self.dispatchers:
|
102
105
|
return await self.dispatchers[key].process(data, responder)
|
103
106
|
|
104
|
-
dispatcher =
|
105
|
-
pulsar_client = self.pulsar_client
|
107
|
+
dispatcher = global_dispatchers[kind](
|
108
|
+
pulsar_client = self.pulsar_client,
|
109
|
+
timeout = 120,
|
110
|
+
consumer = f"api-gateway-{kind}-request",
|
111
|
+
subscriber = f"api-gateway-{kind}-request",
|
106
112
|
)
|
107
113
|
|
108
114
|
await dispatcher.start()
|
@@ -111,16 +117,19 @@ class DispatcherManager:
|
|
111
117
|
|
112
118
|
return await dispatcher.process(data, responder)
|
113
119
|
|
114
|
-
def
|
115
|
-
return self
|
120
|
+
def dispatch_flow_import(self):
|
121
|
+
return self.process_flow_import
|
122
|
+
|
123
|
+
def dispatch_flow_export(self):
|
124
|
+
return self.process_flow_export
|
116
125
|
|
117
|
-
def
|
118
|
-
return self.
|
126
|
+
def dispatch_socket(self):
|
127
|
+
return self.process_socket
|
119
128
|
|
120
|
-
def
|
121
|
-
return self.
|
129
|
+
def dispatch_flow_service(self):
|
130
|
+
return DispatcherWrapper(self.process_flow_service)
|
122
131
|
|
123
|
-
async def
|
132
|
+
async def process_flow_import(self, ws, running, params):
|
124
133
|
|
125
134
|
flow = params.get("flow")
|
126
135
|
kind = params.get("kind")
|
@@ -151,7 +160,7 @@ class DispatcherManager:
|
|
151
160
|
|
152
161
|
return dispatcher
|
153
162
|
|
154
|
-
async def
|
163
|
+
async def process_flow_export(self, ws, running, params):
|
155
164
|
|
156
165
|
flow = params.get("flow")
|
157
166
|
kind = params.get("kind")
|
@@ -184,11 +193,21 @@ class DispatcherManager:
|
|
184
193
|
|
185
194
|
return dispatcher
|
186
195
|
|
187
|
-
async def
|
196
|
+
async def process_socket(self, ws, running, params):
|
197
|
+
|
198
|
+
dispatcher = Mux(self, ws, running)
|
199
|
+
|
200
|
+
return dispatcher
|
201
|
+
|
202
|
+
async def process_flow_service(self, data, responder, params):
|
188
203
|
|
189
204
|
flow = params.get("flow")
|
190
205
|
kind = params.get("kind")
|
191
206
|
|
207
|
+
return await self.invoke_flow_service(data, responder, flow, kind)
|
208
|
+
|
209
|
+
async def invoke_flow_service(self, data, responder, flow, kind):
|
210
|
+
|
192
211
|
if flow not in self.flows:
|
193
212
|
raise RuntimeError("Invalid flow")
|
194
213
|
|
@@ -0,0 +1,167 @@
|
|
1
|
+
|
2
|
+
import asyncio
|
3
|
+
import queue
|
4
|
+
import uuid
|
5
|
+
|
6
|
+
MAX_OUTSTANDING_REQUESTS = 15
|
7
|
+
WORKER_CLOSE_WAIT = 0.01
|
8
|
+
START_REQUEST_WAIT = 0.1
|
9
|
+
|
10
|
+
# This buffers requests until task start, so short-lived
|
11
|
+
MAX_QUEUE_SIZE = 10
|
12
|
+
|
13
|
+
class Mux:
|
14
|
+
|
15
|
+
def __init__(self, dispatcher_manager, ws, running):
|
16
|
+
|
17
|
+
self.dispatcher_manager = dispatcher_manager
|
18
|
+
self.ws = ws
|
19
|
+
self.running = running
|
20
|
+
|
21
|
+
self.q = asyncio.Queue(maxsize=MAX_QUEUE_SIZE)
|
22
|
+
|
23
|
+
async def destroy(self):
|
24
|
+
|
25
|
+
self.running.stop()
|
26
|
+
|
27
|
+
if self.ws:
|
28
|
+
await self.ws.close()
|
29
|
+
|
30
|
+
async def receive(self, msg):
|
31
|
+
|
32
|
+
try:
|
33
|
+
|
34
|
+
data = msg.json()
|
35
|
+
|
36
|
+
if "request" not in data:
|
37
|
+
raise RuntimeError("Bad message")
|
38
|
+
|
39
|
+
if "id" not in data:
|
40
|
+
raise RuntimeError("Bad message")
|
41
|
+
|
42
|
+
await self.q.put((
|
43
|
+
data["id"], data.get("flow"),
|
44
|
+
data["service"],
|
45
|
+
data["request"]
|
46
|
+
))
|
47
|
+
|
48
|
+
except Exception as e:
|
49
|
+
print("receive exception:", str(e), flush=True)
|
50
|
+
await self.ws.send_json({"error": str(e)})
|
51
|
+
|
52
|
+
async def maybe_tidy_workers(self, workers):
|
53
|
+
|
54
|
+
while True:
|
55
|
+
|
56
|
+
try:
|
57
|
+
|
58
|
+
await asyncio.wait_for(
|
59
|
+
asyncio.shield(workers[0]),
|
60
|
+
WORKER_CLOSE_WAIT
|
61
|
+
)
|
62
|
+
|
63
|
+
# worker[0] now stopped
|
64
|
+
# FIXME: Delete reference???
|
65
|
+
|
66
|
+
workers.pop(0)
|
67
|
+
|
68
|
+
if len(workers) == 0:
|
69
|
+
break
|
70
|
+
|
71
|
+
# Loop iterates to try the next worker
|
72
|
+
|
73
|
+
except TimeoutError:
|
74
|
+
# worker[0] still running, move on
|
75
|
+
break
|
76
|
+
|
77
|
+
async def start_request_task(self, ws, id, flow, svc, request, workers):
|
78
|
+
|
79
|
+
# Wait for outstanding requests to go below MAX_OUTSTANDING_REQUESTS
|
80
|
+
while len(workers) > MAX_OUTSTANDING_REQUESTS:
|
81
|
+
|
82
|
+
# Fixes deadlock
|
83
|
+
# FIXME: Put it in its own loop
|
84
|
+
await asyncio.sleep(START_REQUEST_WAIT)
|
85
|
+
|
86
|
+
await self.maybe_tidy_workers(workers)
|
87
|
+
|
88
|
+
async def responder(resp, fin):
|
89
|
+
await self.ws.send_json({
|
90
|
+
"id": id,
|
91
|
+
"response": resp,
|
92
|
+
"complete": fin,
|
93
|
+
})
|
94
|
+
|
95
|
+
worker = asyncio.create_task(
|
96
|
+
self.request_task(request, responder, flow, svc)
|
97
|
+
)
|
98
|
+
|
99
|
+
workers.append(worker)
|
100
|
+
|
101
|
+
async def request_task(self, request, responder, flow, svc):
|
102
|
+
|
103
|
+
try:
|
104
|
+
|
105
|
+
if flow:
|
106
|
+
|
107
|
+
await self.dispatcher_manager.invoke_flow_service(
|
108
|
+
request, responder, flow, svc
|
109
|
+
)
|
110
|
+
|
111
|
+
else:
|
112
|
+
|
113
|
+
await self.dispatcher_manager.invoke_global_service(
|
114
|
+
request, responder, svc
|
115
|
+
)
|
116
|
+
|
117
|
+
except Exception as e:
|
118
|
+
await self.ws.send_json({"error": str(e)})
|
119
|
+
|
120
|
+
async def run(self):
|
121
|
+
|
122
|
+
# Worker threads, servicing
|
123
|
+
workers = []
|
124
|
+
|
125
|
+
while self.running.get():
|
126
|
+
|
127
|
+
try:
|
128
|
+
|
129
|
+
if len(workers) > 0:
|
130
|
+
await self.maybe_tidy_workers(workers)
|
131
|
+
|
132
|
+
# Get next request on queue
|
133
|
+
item = await asyncio.wait_for(self.q.get(), 1)
|
134
|
+
id, flow, svc, request = item
|
135
|
+
|
136
|
+
except TimeoutError:
|
137
|
+
continue
|
138
|
+
|
139
|
+
except Exception as e:
|
140
|
+
# This is an internal working error, may not be recoverable
|
141
|
+
print("run prepare exception:", e)
|
142
|
+
await self.ws.send_json({"id": id, "error": str(e)})
|
143
|
+
self.running.stop()
|
144
|
+
|
145
|
+
if self.ws:
|
146
|
+
self.ws.close()
|
147
|
+
self.ws = None
|
148
|
+
|
149
|
+
break
|
150
|
+
|
151
|
+
try:
|
152
|
+
print(id, svc, request)
|
153
|
+
|
154
|
+
await self.start_request_task(
|
155
|
+
self.ws, id, flow, svc, request, workers
|
156
|
+
)
|
157
|
+
|
158
|
+
except Exception as e:
|
159
|
+
print("Exception2:", e)
|
160
|
+
await self.ws.send_json({"error": str(e)})
|
161
|
+
|
162
|
+
self.running.stop()
|
163
|
+
|
164
|
+
if self.ws:
|
165
|
+
self.ws.close()
|
166
|
+
self.ws = None
|
167
|
+
|
@@ -23,37 +23,34 @@ class EndpointManager:
|
|
23
23
|
}
|
24
24
|
|
25
25
|
self.endpoints = [
|
26
|
-
ConstantEndpoint(
|
27
|
-
endpoint_path = "/api/v1/librarian", auth = auth,
|
28
|
-
dispatcher = dispatcher_manager.dispatch_librarian(),
|
29
|
-
),
|
30
|
-
ConstantEndpoint(
|
31
|
-
endpoint_path = "/api/v1/config", auth = auth,
|
32
|
-
dispatcher = dispatcher_manager.dispatch_config(),
|
33
|
-
),
|
34
|
-
ConstantEndpoint(
|
35
|
-
endpoint_path = "/api/v1/flow", auth = auth,
|
36
|
-
dispatcher = dispatcher_manager.dispatch_flow(),
|
37
|
-
),
|
38
26
|
MetricsEndpoint(
|
39
|
-
endpoint_path = "/api/
|
27
|
+
endpoint_path = "/api/metrics",
|
40
28
|
prometheus_url = prometheus_url,
|
41
29
|
auth = auth,
|
42
30
|
),
|
31
|
+
VariableEndpoint(
|
32
|
+
endpoint_path = "/api/v1/{kind}", auth = auth,
|
33
|
+
dispatcher = dispatcher_manager.dispatch_global_service(),
|
34
|
+
),
|
35
|
+
SocketEndpoint(
|
36
|
+
endpoint_path = "/api/v1/socket",
|
37
|
+
auth = auth,
|
38
|
+
dispatcher = dispatcher_manager.dispatch_socket()
|
39
|
+
),
|
43
40
|
VariableEndpoint(
|
44
41
|
endpoint_path = "/api/v1/flow/{flow}/service/{kind}",
|
45
42
|
auth = auth,
|
46
|
-
dispatcher = dispatcher_manager.
|
43
|
+
dispatcher = dispatcher_manager.dispatch_flow_service(),
|
47
44
|
),
|
48
45
|
SocketEndpoint(
|
49
46
|
endpoint_path = "/api/v1/flow/{flow}/import/{kind}",
|
50
47
|
auth = auth,
|
51
|
-
dispatcher = dispatcher_manager.
|
48
|
+
dispatcher = dispatcher_manager.dispatch_flow_import()
|
52
49
|
),
|
53
50
|
SocketEndpoint(
|
54
51
|
endpoint_path = "/api/v1/flow/{flow}/export/{kind}",
|
55
52
|
auth = auth,
|
56
|
-
dispatcher = dispatcher_manager.
|
53
|
+
dispatcher = dispatcher_manager.dispatch_flow_export()
|
57
54
|
),
|
58
55
|
]
|
59
56
|
|
@@ -1,9 +1,9 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: trustgraph-flow
|
3
|
-
Version: 0.23.
|
3
|
+
Version: 0.23.7
|
4
4
|
Summary: TrustGraph provides a means to run a pipeline of flexible AI processing components in a flexible means to achieve a processing pipeline.
|
5
5
|
Home-page: https://github.com/trustgraph-ai/trustgraph
|
6
|
-
Download-URL: https://github.com/trustgraph-ai/trustgraph/archive/refs/tags/v0.23.
|
6
|
+
Download-URL: https://github.com/trustgraph-ai/trustgraph/archive/refs/tags/v0.23.7.tar.gz
|
7
7
|
Author: trustgraph.ai
|
8
8
|
Author-email: security@trustgraph.ai
|
9
9
|
Classifier: Programming Language :: Python :: 3
|
@@ -140,6 +140,7 @@ trustgraph/gateway/dispatch/graph_embeddings_query.py
|
|
140
140
|
trustgraph/gateway/dispatch/graph_rag.py
|
141
141
|
trustgraph/gateway/dispatch/librarian.py
|
142
142
|
trustgraph/gateway/dispatch/manager.py
|
143
|
+
trustgraph/gateway/dispatch/mux.py
|
143
144
|
trustgraph/gateway/dispatch/prompt.py
|
144
145
|
trustgraph/gateway/dispatch/requestor.py
|
145
146
|
trustgraph/gateway/dispatch/sender.py
|
@@ -153,7 +154,6 @@ trustgraph/gateway/dispatch/triples_query.py
|
|
153
154
|
trustgraph/gateway/endpoint/constant_endpoint.py
|
154
155
|
trustgraph/gateway/endpoint/manager.py
|
155
156
|
trustgraph/gateway/endpoint/metrics.py
|
156
|
-
trustgraph/gateway/endpoint/mux.py
|
157
157
|
trustgraph/gateway/endpoint/socket.py
|
158
158
|
trustgraph/gateway/endpoint/variable_endpoint.py
|
159
159
|
trustgraph/gateway/unused/dbpedia.py
|
@@ -1 +0,0 @@
|
|
1
|
-
__version__ = "0.23.5"
|
@@ -1,167 +0,0 @@
|
|
1
|
-
|
2
|
-
import asyncio
|
3
|
-
import queue
|
4
|
-
import uuid
|
5
|
-
from aiohttp import web, WSMsgType
|
6
|
-
|
7
|
-
from . socket import SocketEndpoint
|
8
|
-
|
9
|
-
MAX_OUTSTANDING_REQUESTS = 15
|
10
|
-
WORKER_CLOSE_WAIT = 0.01
|
11
|
-
START_REQUEST_WAIT = 0.1
|
12
|
-
|
13
|
-
# This buffers requests until task start, so short-lived
|
14
|
-
MAX_QUEUE_SIZE = 10
|
15
|
-
|
16
|
-
class MuxEndpoint(SocketEndpoint):
|
17
|
-
|
18
|
-
def __init__(
|
19
|
-
self, pulsar_client, auth,
|
20
|
-
services,
|
21
|
-
path="/api/v1/socket",
|
22
|
-
):
|
23
|
-
|
24
|
-
super(MuxEndpoint, self).__init__(
|
25
|
-
endpoint_path=path, auth=auth,
|
26
|
-
)
|
27
|
-
|
28
|
-
self.services = services
|
29
|
-
|
30
|
-
async def start(self):
|
31
|
-
pass
|
32
|
-
|
33
|
-
async def maybe_tidy_workers(self, workers):
|
34
|
-
|
35
|
-
while True:
|
36
|
-
|
37
|
-
try:
|
38
|
-
|
39
|
-
await asyncio.wait_for(
|
40
|
-
asyncio.shield(workers[0]),
|
41
|
-
WORKER_CLOSE_WAIT
|
42
|
-
)
|
43
|
-
|
44
|
-
# worker[0] now stopped
|
45
|
-
# FIXME: Delete reference???
|
46
|
-
|
47
|
-
workers.pop(0)
|
48
|
-
|
49
|
-
if len(workers) == 0:
|
50
|
-
break
|
51
|
-
|
52
|
-
# Loop iterates to try the next worker
|
53
|
-
|
54
|
-
except TimeoutError:
|
55
|
-
# worker[0] still running, move on
|
56
|
-
break
|
57
|
-
|
58
|
-
async def start_request_task(self, ws, id, svc, request, workers):
|
59
|
-
|
60
|
-
if svc not in self.services:
|
61
|
-
await ws.send_json({"id": id, "error": "Service not recognised"})
|
62
|
-
return
|
63
|
-
|
64
|
-
requestor = self.services[svc]
|
65
|
-
|
66
|
-
async def responder(resp, fin):
|
67
|
-
await ws.send_json({
|
68
|
-
"id": id,
|
69
|
-
"response": resp,
|
70
|
-
"complete": fin,
|
71
|
-
})
|
72
|
-
|
73
|
-
# Wait for outstanding requests to go below MAX_OUTSTANDING_REQUESTS
|
74
|
-
while len(workers) > MAX_OUTSTANDING_REQUESTS:
|
75
|
-
|
76
|
-
# Fixes deadlock
|
77
|
-
# FIXME: Put it in its own loop
|
78
|
-
await asyncio.sleep(START_REQUEST_WAIT)
|
79
|
-
|
80
|
-
await self.maybe_tidy_workers(workers)
|
81
|
-
|
82
|
-
worker = asyncio.create_task(
|
83
|
-
requestor.process(request, responder)
|
84
|
-
)
|
85
|
-
|
86
|
-
workers.append(worker)
|
87
|
-
|
88
|
-
async def async_thread(self, ws, running, q):
|
89
|
-
|
90
|
-
# Worker threads, servicing
|
91
|
-
workers = []
|
92
|
-
|
93
|
-
while running.get():
|
94
|
-
|
95
|
-
try:
|
96
|
-
|
97
|
-
if len(workers) > 0:
|
98
|
-
await self.maybe_tidy_workers(workers)
|
99
|
-
|
100
|
-
# Get next request on queue
|
101
|
-
id, svc, request = await asyncio.wait_for(q.get(), 1)
|
102
|
-
|
103
|
-
except TimeoutError:
|
104
|
-
continue
|
105
|
-
|
106
|
-
except Exception as e:
|
107
|
-
# This is an internal working error, may not be recoverable
|
108
|
-
print("Exception:", e)
|
109
|
-
await ws.send_json({"id": id, "error": str(e)})
|
110
|
-
break
|
111
|
-
|
112
|
-
try:
|
113
|
-
print(id, svc, request)
|
114
|
-
await self.start_request_task(ws, id, svc, request, workers)
|
115
|
-
|
116
|
-
except Exception as e:
|
117
|
-
print("Exception2:", e)
|
118
|
-
await ws.send_json({"error": str(e)})
|
119
|
-
|
120
|
-
running.stop()
|
121
|
-
|
122
|
-
async def listener(self, ws, running):
|
123
|
-
|
124
|
-
# The outstanding request queue, max size is MAX_QUEUE_SIZE
|
125
|
-
q = asyncio.Queue(maxsize=MAX_QUEUE_SIZE)
|
126
|
-
|
127
|
-
async_task = asyncio.create_task(self.async_thread(
|
128
|
-
ws, running, q
|
129
|
-
))
|
130
|
-
|
131
|
-
async for msg in ws:
|
132
|
-
|
133
|
-
# On error, finish
|
134
|
-
if msg.type == WSMsgType.TEXT:
|
135
|
-
|
136
|
-
try:
|
137
|
-
|
138
|
-
data = msg.json()
|
139
|
-
|
140
|
-
if data["service"] not in self.services:
|
141
|
-
raise RuntimeError("Bad service")
|
142
|
-
|
143
|
-
if "request" not in data:
|
144
|
-
raise RuntimeError("Bad message")
|
145
|
-
|
146
|
-
if "id" not in data:
|
147
|
-
raise RuntimeError("Bad message")
|
148
|
-
|
149
|
-
await q.put(
|
150
|
-
(data["id"], data["service"], data["request"])
|
151
|
-
)
|
152
|
-
|
153
|
-
except Exception as e:
|
154
|
-
|
155
|
-
await ws.send_json({"error": str(e)})
|
156
|
-
continue
|
157
|
-
|
158
|
-
elif msg.type == WSMsgType.ERROR:
|
159
|
-
break
|
160
|
-
elif msg.type == WSMsgType.CLOSE:
|
161
|
-
break
|
162
|
-
else:
|
163
|
-
break
|
164
|
-
|
165
|
-
running.stop()
|
166
|
-
|
167
|
-
await async_task
|
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
|