trustgraph-base 2.7.0__tar.gz → 2.7.1__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_base-2.7.0 → trustgraph_base-2.7.1}/PKG-INFO +1 -1
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/__init__.py +2 -0
- trustgraph_base-2.7.1/trustgraph/base/keyword_index_client.py +44 -0
- trustgraph_base-2.7.1/trustgraph/base/keyword_index_service.py +132 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/request_response_spec.py +13 -1
- trustgraph_base-2.7.1/trustgraph/base_version.py +1 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/services/query.py +21 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph_base.egg-info/PKG-INFO +1 -1
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph_base.egg-info/SOURCES.txt +2 -0
- trustgraph_base-2.7.0/trustgraph/base_version.py +0 -1
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/README.md +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/pyproject.toml +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/setup.cfg +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/api/__init__.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/api/api.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/api/async_bulk_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/api/async_flow.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/api/async_metrics.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/api/async_socket_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/api/bulk_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/api/collection.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/api/config.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/api/exceptions.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/api/explainability.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/api/flow.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/api/knowledge.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/api/library.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/api/metrics.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/api/socket_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/api/types.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/agent_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/agent_service.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/async_processor.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/audit_publisher.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/backend.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/cassandra_config.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/chunking_service.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/collection_config_handler.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/config_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/consumer.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/consumer_spec.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/document_embeddings_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/document_embeddings_query_service.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/document_embeddings_store_service.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/dynamic_tool_service.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/embeddings_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/embeddings_service.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/flow.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/flow_processor.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/graph_embeddings_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/graph_embeddings_query_service.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/graph_embeddings_store_service.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/graph_rag_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/iam_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/kafka_backend.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/librarian_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/librarian_spec.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/llm_service.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/logging.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/metrics.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/parameter_spec.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/processor_group.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/producer.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/producer_spec.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/prompt_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/publisher.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/pubsub.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/pulsar_backend.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/qdrant_config.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/rabbitmq_backend.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/reranker_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/reranker_service.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/row_embeddings_query_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/serialization.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/spec.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/structured_query_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/subscriber.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/subscriber_spec.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/text_completion_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/tool_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/tool_service.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/tool_service_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/triples_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/triples_query_service.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/triples_store_service.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/workspace_processor.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/clients/__init__.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/clients/agent_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/clients/base.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/clients/config_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/clients/document_embeddings_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/clients/document_rag_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/clients/embeddings_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/clients/graph_embeddings_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/clients/graph_rag_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/clients/llm_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/clients/prompt_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/clients/row_embeddings_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/clients/triples_query_client.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/exceptions.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/i18n/__init__.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/i18n/packs/__init__.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/i18n/packs/ar.json +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/i18n/packs/en.json +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/i18n/packs/es.json +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/i18n/packs/he.json +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/i18n/packs/hi.json +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/i18n/packs/pt.json +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/i18n/packs/ru.json +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/i18n/packs/sw.json +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/i18n/packs/tr.json +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/i18n/packs/zh-cn.json +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/knowledge/__init__.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/knowledge/defs.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/knowledge/document.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/knowledge/identifier.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/knowledge/organization.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/knowledge/publication.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/log_level.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/__init__.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/registry.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/__init__.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/agent.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/base.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/collection.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/config.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/diagnosis.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/document_loading.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/embeddings.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/embeddings_query.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/flow.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/iam.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/knowledge.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/library.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/metadata.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/nlp_query.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/primitives.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/prompt.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/reranker.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/retrieval.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/rows_query.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/sparql_query.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/structured_query.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/text_completion.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/tool.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/triples.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/objects/__init__.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/objects/field.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/objects/object.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/provenance/__init__.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/provenance/agent.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/provenance/namespaces.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/provenance/triples.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/provenance/uris.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/provenance/vocabulary.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/rdf.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/__init__.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/core/__init__.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/core/metadata.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/core/primitives.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/core/topic.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/knowledge/__init__.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/knowledge/document.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/knowledge/embeddings.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/knowledge/graph.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/knowledge/knowledge.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/knowledge/nlp.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/knowledge/object.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/knowledge/rows.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/knowledge/structured.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/services/__init__.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/services/agent.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/services/audit.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/services/collection.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/services/config.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/services/diagnosis.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/services/flow.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/services/iam.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/services/library.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/services/llm.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/services/lookup.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/services/nlp_query.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/services/prompt.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/services/reranker.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/services/retrieval.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/services/rows_query.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/services/sparql_query.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/services/storage.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/services/structured_query.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/services/tool_service.py +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph_base.egg-info/dependency_links.txt +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph_base.egg-info/entry_points.txt +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph_base.egg-info/requires.txt +0 -0
- {trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph_base.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: trustgraph-base
|
|
3
|
-
Version: 2.7.
|
|
3
|
+
Version: 2.7.1
|
|
4
4
|
Summary: TrustGraph provides a means to run a pipeline of flexible AI processing components in a flexible means to achieve a processing pipeline.
|
|
5
5
|
Author-email: "trustgraph.ai" <security@trustgraph.ai>
|
|
6
6
|
Project-URL: Homepage, https://github.com/trustgraph-ai/trustgraph
|
|
@@ -44,6 +44,8 @@ from . agent_client import AgentClientSpec
|
|
|
44
44
|
from . structured_query_client import StructuredQueryClientSpec
|
|
45
45
|
from . reranker_client import RerankerClientSpec
|
|
46
46
|
from . reranker_service import RerankerService
|
|
47
|
+
from . keyword_index_service import KeywordIndexService
|
|
48
|
+
from . keyword_index_client import KeywordIndexClientSpec, KeywordIndexClient
|
|
47
49
|
from . row_embeddings_query_client import RowEmbeddingsQueryClientSpec
|
|
48
50
|
from . collection_config_handler import CollectionConfigHandler
|
|
49
51
|
from . audit_publisher import AuditPublisher
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
|
|
2
|
+
import logging
|
|
3
|
+
|
|
4
|
+
from . request_response_spec import RequestResponse, RequestResponseSpec
|
|
5
|
+
from .. schema import KeywordIndexRequest, KeywordIndexResponse
|
|
6
|
+
|
|
7
|
+
# Module logger
|
|
8
|
+
logger = logging.getLogger(__name__)
|
|
9
|
+
|
|
10
|
+
class KeywordIndexClient(RequestResponse):
|
|
11
|
+
async def query(self, query, limit=20, collection="default", timeout=30):
|
|
12
|
+
|
|
13
|
+
resp = await self.request(
|
|
14
|
+
KeywordIndexRequest(
|
|
15
|
+
query = query,
|
|
16
|
+
limit = limit,
|
|
17
|
+
collection = collection
|
|
18
|
+
),
|
|
19
|
+
timeout=timeout
|
|
20
|
+
)
|
|
21
|
+
|
|
22
|
+
logger.debug("Keyword index response: %s", resp)
|
|
23
|
+
|
|
24
|
+
if resp.error:
|
|
25
|
+
raise RuntimeError(resp.error.message)
|
|
26
|
+
|
|
27
|
+
# Return ChunkMatch objects with chunk_id and score
|
|
28
|
+
return resp.chunks
|
|
29
|
+
|
|
30
|
+
class KeywordIndexClientSpec(RequestResponseSpec):
|
|
31
|
+
def __init__(
|
|
32
|
+
self, request_name, response_name,
|
|
33
|
+
):
|
|
34
|
+
super(KeywordIndexClientSpec, self).__init__(
|
|
35
|
+
request_name = request_name,
|
|
36
|
+
request_schema = KeywordIndexRequest,
|
|
37
|
+
response_name = response_name,
|
|
38
|
+
response_schema = KeywordIndexResponse,
|
|
39
|
+
impl = KeywordIndexClient,
|
|
40
|
+
# Flow definitions predating the keyword index don't declare
|
|
41
|
+
# these topics; bind only where they exist so one stale
|
|
42
|
+
# definition can't wedge the processor.
|
|
43
|
+
optional = True,
|
|
44
|
+
)
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Keyword index service base class. A single service owns both sides of the
|
|
3
|
+
lexical index: it consumes Chunk messages off the ingestion stream (the last
|
|
4
|
+
message in the pipeline that still carries chunk text) and answers keyword
|
|
5
|
+
search requests over what it has indexed. Unlike the vector stores, ingest
|
|
6
|
+
and query are not split into two processors: the first backend (SQLite FTS5)
|
|
7
|
+
is a single-file index that cannot be shared between containers, so one
|
|
8
|
+
process must own it. Backends with a server (Elasticsearch/OpenSearch) can
|
|
9
|
+
still be split later behind the same schema.
|
|
10
|
+
"""
|
|
11
|
+
|
|
12
|
+
from __future__ import annotations
|
|
13
|
+
|
|
14
|
+
from argparse import ArgumentParser
|
|
15
|
+
|
|
16
|
+
import logging
|
|
17
|
+
|
|
18
|
+
from .. schema import Chunk
|
|
19
|
+
from .. schema import KeywordIndexRequest, KeywordIndexResponse
|
|
20
|
+
from .. schema import Error
|
|
21
|
+
from .. exceptions import TooManyRequests
|
|
22
|
+
|
|
23
|
+
from . flow_processor import FlowProcessor
|
|
24
|
+
from . consumer_spec import ConsumerSpec
|
|
25
|
+
from . producer_spec import ProducerSpec
|
|
26
|
+
|
|
27
|
+
# Module logger
|
|
28
|
+
logger = logging.getLogger(__name__)
|
|
29
|
+
|
|
30
|
+
default_ident = "kw-index"
|
|
31
|
+
default_concurrency = 10
|
|
32
|
+
|
|
33
|
+
class KeywordIndexService(FlowProcessor):
|
|
34
|
+
|
|
35
|
+
def __init__(self, **params):
|
|
36
|
+
|
|
37
|
+
id = params.get("id")
|
|
38
|
+
concurrency = params.get("concurrency", default_concurrency)
|
|
39
|
+
|
|
40
|
+
super(KeywordIndexService, self).__init__(
|
|
41
|
+
**params | { "id": id }
|
|
42
|
+
)
|
|
43
|
+
|
|
44
|
+
self.register_specification(
|
|
45
|
+
ConsumerSpec(
|
|
46
|
+
name = "input",
|
|
47
|
+
schema = Chunk,
|
|
48
|
+
handler = self.on_chunk,
|
|
49
|
+
)
|
|
50
|
+
)
|
|
51
|
+
|
|
52
|
+
self.register_specification(
|
|
53
|
+
ConsumerSpec(
|
|
54
|
+
name = "request",
|
|
55
|
+
schema = KeywordIndexRequest,
|
|
56
|
+
handler = self.on_request,
|
|
57
|
+
concurrency = concurrency,
|
|
58
|
+
)
|
|
59
|
+
)
|
|
60
|
+
|
|
61
|
+
self.register_specification(
|
|
62
|
+
ProducerSpec(
|
|
63
|
+
name = "response",
|
|
64
|
+
schema = KeywordIndexResponse,
|
|
65
|
+
)
|
|
66
|
+
)
|
|
67
|
+
|
|
68
|
+
async def on_chunk(self, msg, consumer, flow):
|
|
69
|
+
|
|
70
|
+
try:
|
|
71
|
+
|
|
72
|
+
request = msg.value()
|
|
73
|
+
|
|
74
|
+
# Workspace comes from the flow the message arrived on.
|
|
75
|
+
await self.index_chunk(flow.workspace, request)
|
|
76
|
+
|
|
77
|
+
except TooManyRequests as e:
|
|
78
|
+
raise e
|
|
79
|
+
|
|
80
|
+
except Exception as e:
|
|
81
|
+
|
|
82
|
+
logger.error(f"Exception in keyword index store: {e}", exc_info=True)
|
|
83
|
+
raise e
|
|
84
|
+
|
|
85
|
+
async def on_request(self, msg, consumer, flow):
|
|
86
|
+
|
|
87
|
+
try:
|
|
88
|
+
|
|
89
|
+
request = msg.value()
|
|
90
|
+
|
|
91
|
+
# Sender-produced ID
|
|
92
|
+
id = msg.properties()["id"]
|
|
93
|
+
|
|
94
|
+
logger.debug(f"Handling keyword index query request {id}...")
|
|
95
|
+
|
|
96
|
+
chunks = await self.query_keyword_index(
|
|
97
|
+
flow.workspace, request,
|
|
98
|
+
)
|
|
99
|
+
|
|
100
|
+
logger.debug("Sending keyword index query response...")
|
|
101
|
+
r = KeywordIndexResponse(chunks=chunks, error=None)
|
|
102
|
+
await flow("response").send(r, properties={"id": id})
|
|
103
|
+
|
|
104
|
+
logger.debug("Keyword index query request completed")
|
|
105
|
+
|
|
106
|
+
except Exception as e:
|
|
107
|
+
|
|
108
|
+
logger.error(f"Exception in keyword index query service: {e}", exc_info=True)
|
|
109
|
+
|
|
110
|
+
logger.info("Sending error response...")
|
|
111
|
+
|
|
112
|
+
r = KeywordIndexResponse(
|
|
113
|
+
error=Error(
|
|
114
|
+
type = "keyword-index-query-error",
|
|
115
|
+
message = str(e),
|
|
116
|
+
),
|
|
117
|
+
chunks=[],
|
|
118
|
+
)
|
|
119
|
+
|
|
120
|
+
await flow("response").send(r, properties={"id": id})
|
|
121
|
+
|
|
122
|
+
@staticmethod
|
|
123
|
+
def add_args(parser: ArgumentParser) -> None:
|
|
124
|
+
|
|
125
|
+
FlowProcessor.add_args(parser)
|
|
126
|
+
|
|
127
|
+
parser.add_argument(
|
|
128
|
+
'-c', '--concurrency',
|
|
129
|
+
type=int,
|
|
130
|
+
default=default_concurrency,
|
|
131
|
+
help=f'Number of concurrent requests (default: {default_concurrency})'
|
|
132
|
+
)
|
|
@@ -109,16 +109,28 @@ class RequestResponse(Subscriber):
|
|
|
109
109
|
class RequestResponseSpec(Spec):
|
|
110
110
|
def __init__(
|
|
111
111
|
self, request_name, request_schema, response_name,
|
|
112
|
-
response_schema, impl=RequestResponse
|
|
112
|
+
response_schema, impl=RequestResponse, optional=False
|
|
113
113
|
):
|
|
114
114
|
self.request_name = request_name
|
|
115
115
|
self.request_schema = request_schema
|
|
116
116
|
self.response_name = response_name
|
|
117
117
|
self.response_schema = response_schema
|
|
118
118
|
self.impl = impl
|
|
119
|
+
self.optional = optional
|
|
119
120
|
|
|
120
121
|
def add(self, flow: Any, processor: Any, definition: dict[str, Any]) -> None:
|
|
121
122
|
|
|
123
|
+
# An optional client binds only when the flow definition declares
|
|
124
|
+
# its topics. Older definitions predating the topics would otherwise
|
|
125
|
+
# KeyError here during Flow construction, which wedges the whole
|
|
126
|
+
# processor in a start-flow retry loop; skipping instead leaves
|
|
127
|
+
# flow(name) returning None for the caller to handle per-request.
|
|
128
|
+
topics = definition.get("topics", {})
|
|
129
|
+
if self.optional and (
|
|
130
|
+
self.request_name not in topics
|
|
131
|
+
or self.response_name not in topics):
|
|
132
|
+
return
|
|
133
|
+
|
|
122
134
|
request_metrics = ProducerMetrics(
|
|
123
135
|
processor = flow.id, flow = flow.name, name = self.request_name
|
|
124
136
|
)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "2.7.1"
|
|
@@ -71,6 +71,27 @@ document_embeddings_response_queue = queue('document-embeddings', cls='response'
|
|
|
71
71
|
|
|
72
72
|
############################################################################
|
|
73
73
|
|
|
74
|
+
# Keyword index query - lexical (BM25) search over chunk text, the sparse
|
|
75
|
+
# counterpart to the doc embeddings query above. Matches share the ChunkMatch
|
|
76
|
+
# shape so both retrieval paths key on chunk_id; score is "higher is better"
|
|
77
|
+
# in both (BM25 rank scores are negated by the service to match).
|
|
78
|
+
|
|
79
|
+
@dataclass
|
|
80
|
+
class KeywordIndexRequest:
|
|
81
|
+
query: str = ""
|
|
82
|
+
limit: int = 0
|
|
83
|
+
collection: str = ""
|
|
84
|
+
|
|
85
|
+
@dataclass
|
|
86
|
+
class KeywordIndexResponse:
|
|
87
|
+
error: Error | None = None
|
|
88
|
+
chunks: list[ChunkMatch] = field(default_factory=list)
|
|
89
|
+
|
|
90
|
+
keyword_index_request_queue = queue('keyword-index', cls='request')
|
|
91
|
+
keyword_index_response_queue = queue('keyword-index', cls='response')
|
|
92
|
+
|
|
93
|
+
############################################################################
|
|
94
|
+
|
|
74
95
|
# Row embeddings query - for semantic/fuzzy matching on row index values
|
|
75
96
|
|
|
76
97
|
@dataclass
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: trustgraph-base
|
|
3
|
-
Version: 2.7.
|
|
3
|
+
Version: 2.7.1
|
|
4
4
|
Summary: TrustGraph provides a means to run a pipeline of flexible AI processing components in a flexible means to achieve a processing pipeline.
|
|
5
5
|
Author-email: "trustgraph.ai" <security@trustgraph.ai>
|
|
6
6
|
Project-URL: Homepage, https://github.com/trustgraph-ai/trustgraph
|
|
@@ -47,6 +47,8 @@ trustgraph/base/graph_embeddings_store_service.py
|
|
|
47
47
|
trustgraph/base/graph_rag_client.py
|
|
48
48
|
trustgraph/base/iam_client.py
|
|
49
49
|
trustgraph/base/kafka_backend.py
|
|
50
|
+
trustgraph/base/keyword_index_client.py
|
|
51
|
+
trustgraph/base/keyword_index_service.py
|
|
50
52
|
trustgraph/base/librarian_client.py
|
|
51
53
|
trustgraph/base/librarian_spec.py
|
|
52
54
|
trustgraph/base/llm_service.py
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "2.7.0"
|
|
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
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/collection_config_handler.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/document_embeddings_client.py
RENAMED
|
File without changes
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/document_embeddings_query_service.py
RENAMED
|
File without changes
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/document_embeddings_store_service.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/graph_embeddings_query_service.py
RENAMED
|
File without changes
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/graph_embeddings_store_service.py
RENAMED
|
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
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/base/row_embeddings_query_client.py
RENAMED
|
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
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/clients/document_embeddings_client.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/clients/graph_embeddings_client.py
RENAMED
|
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
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/collection.py
RENAMED
|
File without changes
|
|
File without changes
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/diagnosis.py
RENAMED
|
File without changes
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/document_loading.py
RENAMED
|
File without changes
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/embeddings.py
RENAMED
|
File without changes
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/embeddings_query.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/knowledge.py
RENAMED
|
File without changes
|
|
File without changes
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/metadata.py
RENAMED
|
File without changes
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/nlp_query.py
RENAMED
|
File without changes
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/primitives.py
RENAMED
|
File without changes
|
|
File without changes
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/reranker.py
RENAMED
|
File without changes
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/retrieval.py
RENAMED
|
File without changes
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/rows_query.py
RENAMED
|
File without changes
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/sparql_query.py
RENAMED
|
File without changes
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/structured_query.py
RENAMED
|
File without changes
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/messaging/translators/text_completion.py
RENAMED
|
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
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph/schema/services/structured_query.py
RENAMED
|
File without changes
|
|
File without changes
|
{trustgraph_base-2.7.0 → trustgraph_base-2.7.1}/trustgraph_base.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|