trustgraph/trustgraph_configurator/templates/1.6/components/trustgraph.jsonnet
elpresidank 74cc8a4685 Squashed 'ai-context/trustgraph-templates/' content from commit 42a5fd1b
git-subtree-dir: ai-context/trustgraph-templates
git-subtree-split: 42a5fd1b678f32be378062e30451e2052ccb95dd
2026-04-05 21:09:49 -05:00

349 lines
9.9 KiB
Jsonnet

local base = import "base/base.jsonnet";
local images = import "values/images.jsonnet";
local url = import "values/url.jsonnet";
local config_initialiser = import "configuration.jsonnet";
local config = import "trustgraph-config.jsonnet";
local librarian = import "librarian.jsonnet";
local mcp_server = import "mcp-server.jsonnet";
local workbench = import "workbench-ui.jsonnet";
local graphrag = import "graph-rag.jsonnet";
local documentrag = import "document-rag.jsonnet";
local prompt_template = import "prompt-template.jsonnet";
local agent_manager = import "agent-manager-react.jsonnet";
local structured_data = import "structured-data.jsonnet";
local ddg = import "mcp/ddg-mcp-server.jsonnet";
{
"log-level":: "INFO",
"api-gateway-port":: 8088,
"api-gateway-timeout":: 600,
"chunk-size":: 250,
"chunk-overlap":: 15,
"prompt-concurrency":: 1,
"prompt-rag-concurrency":: 1,
"text-completion-concurrency":: 1,
"text-completion-rag-concurrency":: 1,
"kg-extraction-concurrency":: 1,
"graph-rag-concurrency":: 1,
"embeddings-concurrency":: 1,
"api-gateway" +: {
create:: function(engine)
local envSecrets = engine.envSecrets("gateway-secret")
.with_env_var("GATEWAY_SECRET", "gateway-secret");
local port = $["api-gateway-port"];
local container =
engine.container("api-gateway")
.with_image(images.trustgraph_flow)
.with_command([
"api-gateway",
"-p",
url.pulsar,
"--timeout",
std.toString($["api-gateway-timeout"]),
"--port",
std.toString(port),
"--log-level",
$["log-level"],
])
.with_env_var_secrets(envSecrets)
.with_limits("0.5", "256M")
.with_reservations("0.1", "256M")
.with_port(port, port, "api");
local containerSet = engine.containers(
"api-gateway", [ container ]
);
local service =
engine.internalService(containerSet)
.with_port(8000, 8000, "metrics")
.with_port(port, port, "api");
engine.resources([
envSecrets,
containerSet,
service,
])
},
"chunker" +: {
create:: function(engine)
local container =
engine.container("chunker")
.with_image(images.trustgraph_flow)
.with_command([
"chunker-token",
"-p",
url.pulsar,
"--chunk-size",
std.toString($["chunk-size"]),
"--chunk-overlap",
std.toString($["chunk-overlap"]),
"--log-level",
$["log-level"],
])
.with_limits("0.5", "128M")
.with_reservations("0.1", "128M");
local containerSet = engine.containers(
"chunker", [ container ]
);
local service =
engine.internalService(containerSet)
.with_port(8000, 8000, "metrics");
engine.resources([
containerSet,
service,
])
},
"config-svc" +: {
create:: function(engine)
local container =
engine.container("config-svc")
.with_image(images.trustgraph_flow)
.with_command([
"config-svc",
"-p",
url.pulsar,
"--log-level",
$["log-level"],
])
.with_limits("0.5", "128M")
.with_reservations("0.1", "128M");
local containerSet = engine.containers(
"config-svc", [ container ]
);
local service =
engine.internalService(containerSet)
.with_port(8000, 8000, "metrics");
engine.resources([
containerSet,
service,
])
},
"pdf-decoder" +: {
create:: function(engine)
local container =
engine.container("pdf-decoder")
.with_image(images.trustgraph_flow)
.with_command([
"pdf-decoder",
"-p",
url.pulsar,
"--log-level",
$["log-level"],
])
.with_limits("0.5", "512M")
.with_reservations("0.1", "512M");
local containerSet = engine.containers(
"pdf-decoder", [ container ]
);
local service =
engine.internalService(containerSet)
.with_port(8000, 8000, "metrics");
engine.resources([
containerSet,
service,
])
},
"mcp-tool" +: {
create:: function(engine)
local container =
engine.container("mcp-tool")
.with_image(images.trustgraph_flow)
.with_command([
"mcp-tool",
"-p",
url.pulsar,
"--log-level",
$["log-level"],
])
.with_limits("0.5", "128M")
.with_reservations("0.1", "128M");
local containerSet = engine.containers(
"mcp-tool", [ container ]
);
local service =
engine.internalService(containerSet)
.with_port(8000, 8000, "metrics");
engine.resources([
containerSet,
service,
])
},
"metering" +: {
create:: function(engine)
local container =
engine.container("metering")
.with_image(images.trustgraph_flow)
.with_command([
"metering",
"-p",
url.pulsar,
"--log-level",
$["log-level"],
])
.with_limits("0.5", "128M")
.with_reservations("0.1", "128M");
local containerSet = engine.containers(
"metering", [ container ]
);
local service =
engine.internalService(containerSet)
.with_port(8000, 8000, "metrics");
engine.resources([
containerSet,
service,
])
},
"metering-rag" +: {
create:: function(engine)
local container =
engine.container("metering-rag")
.with_image(images.trustgraph_flow)
.with_command([
"metering",
"-p",
url.pulsar,
"--id",
"metering-rag",
"--log-level",
$["log-level"],
])
.with_limits("0.5", "128M")
.with_reservations("0.1", "128M");
local containerSet = engine.containers(
"metering-rag", [ container ]
);
local service =
engine.internalService(containerSet)
.with_port(8000, 8000, "metrics");
engine.resources([
containerSet,
service,
])
},
"kg-store" +: {
create:: function(engine)
local container =
engine.container("kg-store")
.with_image(images.trustgraph_flow)
.with_command([
"kg-store",
"-p",
url.pulsar,
"--log-level",
$["log-level"],
])
.with_limits("0.5", "128M")
.with_reservations("0.1", "128M");
local containerSet = engine.containers(
"kg-store", [ container ]
);
local service =
engine.internalService(containerSet)
.with_port(8000, 8000, "metrics");
engine.resources([
containerSet,
service,
])
},
"kg-manager" +: {
create:: function(engine)
local container =
engine.container("kg-manager")
.with_image(images.trustgraph_flow)
.with_command([
"kg-manager",
"-p",
url.pulsar,
"--log-level",
$["log-level"],
])
.with_limits("0.5", "128M")
.with_reservations("0.1", "128M");
local containerSet = engine.containers(
"kg-manager", [ container ]
);
local service =
engine.internalService(containerSet)
.with_port(8000, 8000, "metrics");
engine.resources([
containerSet,
service,
])
},
} + librarian + mcp_server + workbench + graphrag
+ documentrag + prompt_template + agent_manager + structured_data
+ config_initialiser + config
+ ddg