trustgraph/trustgraph_configurator/templates/2.0/flows/document-store.jsonnet

57 lines
2.2 KiB
Jsonnet
Raw Normal View History

// Document store module
// Infrastructure for document-based RAG using chunk embeddings
// Handles document embedding storage, retrieval, and question answering
local helpers = import "helpers.jsonnet";
local flow = helpers.flow;
local request = helpers.request;
local response = helpers.response;
local request_response = helpers.request_response;
// Import shared services
local llm_services = import "llm-services.jsonnet";
local embeddings_service = import "embeddings-service.jsonnet";
// Merge shared services with document store configuration
llm_services + embeddings_service + {
// External interfaces for document store
"interfaces" +: {
// Document embedding storage and retrieval
"document-embeddings-store": flow("document-embeddings-store:{id}"),
"document-rag": request_response("document-rag:{id}"),
"document-embeddings": request_response("document-embeddings:{id}"),
},
// Flow-level processors for document embedding and storage
"flow" +: {
"document-embeddings:{id}": {
input: flow("chunk-load:{id}"),
output: flow("document-embeddings-store:{id}"),
"embeddings-request": request("embeddings:{id}"),
"embeddings-response": response("embeddings:{id}"),
},
"doc-embeddings-write:{id}": {
input: flow("document-embeddings-store:{id}"),
},
"document-rag:{id}": {
request: request("document-rag:{id}"),
response: response("document-rag:{id}"),
"embeddings-request": request("embeddings:{id}"),
"embeddings-response": response("embeddings:{id}"),
"prompt-request": request("prompt-rag:{id}"),
"prompt-response": response("prompt-rag:{id}"),
"document-embeddings-request": request("document-embeddings:{id}"),
"document-embeddings-response": response("document-embeddings:{id}"),
},
"doc-embeddings-query:{id}": {
request: request("document-embeddings:{id}"),
response: response("document-embeddings:{id}"),
},
},
// Blueprint-level processors for document RAG operations
"blueprint" +: {
},
}