feat: add query/retrieval FlowProcessor services and missing runner scripts

Wire up the query and retrieval side of the pipeline so the agent can
answer questions from stored knowledge:

- Triples query service (FalkorDB) — all SPO pattern queries via NATS
- Graph embeddings query service (Qdrant) — entity vector similarity
- Document embeddings query service (Qdrant) — chunk vector similarity
- Graph RAG service — full concept→entity→traverse→score→synthesize pipeline
- Document RAG service — embed→find chunks→synthesize pipeline
- Runner scripts for chunker, extractor, embeddings (missing from Phase 5)
- Add DocumentEmbeddingsRequest/Response schema types
- Add RAG prompt templates (extract-concepts, edge-scoring, synthesize)
- Add graph/doc embeddings query topics to seed config + flow manager
- Add all pipeline/query/retrieval services to docker-compose
- 8 new runner scripts, 8 new pnpm script aliases

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
elpresidank 2026-04-07 01:05:54 -05:00
parent 8f7008822a
commit c545213224
19 changed files with 763 additions and 1 deletions

View file

@ -322,3 +322,150 @@ services:
networks:
- trustgraph
restart: unless-stopped
# ---------------------------------------------------------------------------
# Document Processing Pipeline
# ---------------------------------------------------------------------------
pdf-decoder:
image: trustgraph-ts:local
command: ["node", "entrypoints/pdf-decoder.mjs"]
environment:
- NATS_URL=nats://nats:4222
depends_on:
nats:
condition: service_healthy
networks:
- trustgraph
restart: unless-stopped
chunker:
image: trustgraph-ts:local
command: ["node", "entrypoints/chunker.mjs"]
environment:
- NATS_URL=nats://nats:4222
depends_on:
nats:
condition: service_healthy
networks:
- trustgraph
restart: unless-stopped
extractor:
image: trustgraph-ts:local
command: ["node", "entrypoints/extractor.mjs"]
environment:
- NATS_URL=nats://nats:4222
depends_on:
nats:
condition: service_healthy
networks:
- trustgraph
restart: unless-stopped
triples-store:
image: trustgraph-ts:local
command: ["node", "entrypoints/triples-store.mjs"]
environment:
- NATS_URL=nats://nats:4222
- FALKORDB_URL=redis://falkordb:6379
depends_on:
nats:
condition: service_healthy
falkordb:
condition: service_healthy
networks:
- trustgraph
restart: unless-stopped
graph-embeddings-store:
image: trustgraph-ts:local
command: ["node", "entrypoints/graph-embeddings-store.mjs"]
environment:
- NATS_URL=nats://nats:4222
- QDRANT_URL=http://qdrant:6333
depends_on:
nats:
condition: service_healthy
qdrant:
condition: service_healthy
networks:
- trustgraph
restart: unless-stopped
# ---------------------------------------------------------------------------
# Query Services
# ---------------------------------------------------------------------------
triples-query:
image: trustgraph-ts:local
command: ["node", "entrypoints/triples-query.mjs"]
environment:
- NATS_URL=nats://nats:4222
- FALKORDB_URL=redis://falkordb:6379
depends_on:
nats:
condition: service_healthy
falkordb:
condition: service_healthy
networks:
- trustgraph
restart: unless-stopped
graph-embeddings-query:
image: trustgraph-ts:local
command: ["node", "entrypoints/graph-embeddings-query.mjs"]
environment:
- NATS_URL=nats://nats:4222
- QDRANT_URL=http://qdrant:6333
depends_on:
nats:
condition: service_healthy
qdrant:
condition: service_healthy
networks:
- trustgraph
restart: unless-stopped
doc-embeddings-query:
image: trustgraph-ts:local
command: ["node", "entrypoints/doc-embeddings-query.mjs"]
environment:
- NATS_URL=nats://nats:4222
- QDRANT_URL=http://qdrant:6333
depends_on:
nats:
condition: service_healthy
qdrant:
condition: service_healthy
networks:
- trustgraph
restart: unless-stopped
# ---------------------------------------------------------------------------
# Retrieval Services
# ---------------------------------------------------------------------------
graph-rag:
image: trustgraph-ts:local
command: ["node", "entrypoints/graph-rag.mjs"]
environment:
- NATS_URL=nats://nats:4222
depends_on:
nats:
condition: service_healthy
networks:
- trustgraph
restart: unless-stopped
document-rag:
image: trustgraph-ts:local
command: ["node", "entrypoints/document-rag.mjs"]
environment:
- NATS_URL=nats://nats:4222
depends_on:
nats:
condition: service_healthy
networks:
- trustgraph
restart: unless-stopped