diff --git a/templates/components/azure.jsonnet b/templates/components/azure.jsonnet index f10803eb..3ee819ee 100644 --- a/templates/components/azure.jsonnet +++ b/templates/components/azure.jsonnet @@ -37,8 +37,13 @@ local prompts = import "prompts/mixtral.jsonnet"; "text-completion", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ containerSet, + service, ]) }, @@ -74,8 +79,13 @@ local prompts = import "prompts/mixtral.jsonnet"; "text-completion-rag", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ containerSet, + service, ]) diff --git a/templates/components/bedrock.jsonnet b/templates/components/bedrock.jsonnet index 666d6bf5..1c375621 100644 --- a/templates/components/bedrock.jsonnet +++ b/templates/components/bedrock.jsonnet @@ -44,8 +44,13 @@ local chunker = import "chunker-recursive.jsonnet"; "text-completion", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ containerSet, + service, ]) }, @@ -85,8 +90,13 @@ local chunker = import "chunker-recursive.jsonnet"; "text-completion-rag", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ containerSet, + service, ]) diff --git a/templates/components/cassandra.jsonnet b/templates/components/cassandra.jsonnet index 4e08e72e..b9345fed 100644 --- a/templates/components/cassandra.jsonnet +++ b/templates/components/cassandra.jsonnet @@ -27,8 +27,13 @@ cassandra + { "stop-triples", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8080, 8080, "metrics"); + engine.resources([ containerSet, + service, ]) }, @@ -54,8 +59,13 @@ cassandra + { "query-triples", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8080, 8080, "metrics"); + engine.resources([ containerSet, + service, ]) } diff --git a/templates/components/chunker-recursive.jsonnet b/templates/components/chunker-recursive.jsonnet index 58bcba46..0b64b712 100644 --- a/templates/components/chunker-recursive.jsonnet +++ b/templates/components/chunker-recursive.jsonnet @@ -31,8 +31,13 @@ local prompts = import "prompts/mixtral.jsonnet"; "chunker", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ containerSet, + service, ]) }, diff --git a/templates/components/claude.jsonnet b/templates/components/claude.jsonnet index d4f3df15..0cd190d4 100644 --- a/templates/components/claude.jsonnet +++ b/templates/components/claude.jsonnet @@ -34,8 +34,13 @@ local prompts = import "prompts/mixtral.jsonnet"; "text-completion", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ containerSet, + service, ]) }, @@ -69,8 +74,13 @@ local prompts = import "prompts/mixtral.jsonnet"; "text-completion-rag", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ containerSet, + service, ]) diff --git a/templates/components/cohere.jsonnet b/templates/components/cohere.jsonnet index 64e77bcf..6c99086a 100644 --- a/templates/components/cohere.jsonnet +++ b/templates/components/cohere.jsonnet @@ -35,8 +35,13 @@ local prompts = import "prompts/mixtral.jsonnet"; "text-completion", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ containerSet, + service, ]) }, @@ -68,8 +73,13 @@ local prompts = import "prompts/mixtral.jsonnet"; "text-completion-rag", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ containerSet, + service, ]) diff --git a/templates/components/document-rag.jsonnet b/templates/components/document-rag.jsonnet index b1a43db7..ac5c11ec 100644 --- a/templates/components/document-rag.jsonnet +++ b/templates/components/document-rag.jsonnet @@ -28,8 +28,13 @@ local prompts = import "prompts/mixtral.jsonnet"; "document-rag", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ containerSet, + service, ]) }, diff --git a/templates/components/embeddings-hf.jsonnet b/templates/components/embeddings-hf.jsonnet index 3e53d32c..b46feac7 100644 --- a/templates/components/embeddings-hf.jsonnet +++ b/templates/components/embeddings-hf.jsonnet @@ -21,15 +21,20 @@ local prompts = import "prompts/mixtral.jsonnet"; "-m", $["embeddings-model"], ]) - .with_limits("1.0", "256M") - .with_reservations("0.5", "256M"); + .with_limits("1.0", "400M") + .with_reservations("0.5", "400M"); local containerSet = engine.containers( "embeddings", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ containerSet, + service, ]) }, diff --git a/templates/components/embeddings-ollama.jsonnet b/templates/components/embeddings-ollama.jsonnet index c2a2809c..425a1c47 100644 --- a/templates/components/embeddings-ollama.jsonnet +++ b/templates/components/embeddings-ollama.jsonnet @@ -30,8 +30,13 @@ local url = import "values/url.jsonnet"; "embeddings", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ containerSet, + service, ]) }, diff --git a/templates/components/graph-rag.jsonnet b/templates/components/graph-rag.jsonnet index ad5ae6f4..39fe3b47 100644 --- a/templates/components/graph-rag.jsonnet +++ b/templates/components/graph-rag.jsonnet @@ -27,8 +27,13 @@ local url = import "values/url.jsonnet"; "kg-extract-definitions", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ containerSet, + service, ]) }, @@ -52,8 +57,13 @@ local url = import "values/url.jsonnet"; "kg-extract-relationships", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ containerSet, + service, ]) }, @@ -87,8 +97,13 @@ local url = import "values/url.jsonnet"; "graph-rag", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ containerSet, + service, ]) }, diff --git a/templates/components/milvus.jsonnet b/templates/components/milvus.jsonnet index 556b1fe8..b3044f98 100644 --- a/templates/components/milvus.jsonnet +++ b/templates/components/milvus.jsonnet @@ -27,8 +27,13 @@ milvus + { "store-graph-embeddings", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ containerSet, + service, ]) }, @@ -54,8 +59,13 @@ milvus + { "query-graph-embeddings", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ containerSet, + service, ]) }, @@ -81,8 +91,13 @@ milvus + { "store-doc-embeddings", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ containerSet, + service, ]) }, @@ -108,8 +123,13 @@ milvus + { "query-doc-embeddings", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ containerSet, + service, ]) diff --git a/templates/components/neo4j.jsonnet b/templates/components/neo4j.jsonnet index 2e808ff0..b70562fe 100644 --- a/templates/components/neo4j.jsonnet +++ b/templates/components/neo4j.jsonnet @@ -28,8 +28,13 @@ neo4j + { "store-triples", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8080, 8080, "metrics"); + engine.resources([ containerSet, + service, ]) }, @@ -55,8 +60,13 @@ neo4j + { "query-triples", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8080, 8080, "metrics"); + engine.resources([ containerSet, + service, ]) diff --git a/templates/components/ollama.jsonnet b/templates/components/ollama.jsonnet index e6b8e895..b0507cef 100644 --- a/templates/components/ollama.jsonnet +++ b/templates/components/ollama.jsonnet @@ -31,8 +31,13 @@ local prompts = import "prompts/slm.jsonnet"; "text-completion", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8080, 8080, "metrics"); + engine.resources([ containerSet, + service, ]) }, @@ -64,8 +69,13 @@ local prompts = import "prompts/slm.jsonnet"; "text-completion-rag", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8080, 8080, "metrics"); + engine.resources([ containerSet, + service, ]) diff --git a/templates/components/openai.jsonnet b/templates/components/openai.jsonnet index 63917376..3d1a2b73 100644 --- a/templates/components/openai.jsonnet +++ b/templates/components/openai.jsonnet @@ -37,8 +37,13 @@ local prompts = import "prompts/mixtral.jsonnet"; "text-completion", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8080, 8080, "metrics"); + engine.resources([ containerSet, + service, ]) }, @@ -74,8 +79,13 @@ local prompts = import "prompts/mixtral.jsonnet"; "text-completion-rag", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8080, 8080, "metrics"); + engine.resources([ containerSet, + service, ]) diff --git a/templates/components/prompt-generic.jsonnet b/templates/components/prompt-generic.jsonnet index aa19fb74..5d6d7c54 100644 --- a/templates/components/prompt-generic.jsonnet +++ b/templates/components/prompt-generic.jsonnet @@ -28,8 +28,13 @@ local prompts = import "prompts/mixtral.jsonnet"; "prompt", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8080, 8080, "metrics"); + engine.resources([ containerSet, + service, ]) }, @@ -61,8 +66,13 @@ local prompts = import "prompts/mixtral.jsonnet"; "prompt-rag", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8080, 8080, "metrics"); + engine.resources([ containerSet, + service, ]) }, diff --git a/templates/components/prompt-template.jsonnet b/templates/components/prompt-template.jsonnet index e64a18e8..7816fa39 100644 --- a/templates/components/prompt-template.jsonnet +++ b/templates/components/prompt-template.jsonnet @@ -39,8 +39,13 @@ local default_prompts = import "prompts/default-prompts.jsonnet"; "prompt", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8080, 8080, "metrics"); + engine.resources([ containerSet, + service, ]) }, @@ -82,8 +87,13 @@ local default_prompts = import "prompts/default-prompts.jsonnet"; "prompt-rag", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8080, 8080, "metrics"); + engine.resources([ containerSet, + service, ]) }, diff --git a/templates/components/pulsar.jsonnet b/templates/components/pulsar.jsonnet index 92548118..058c35c1 100644 --- a/templates/components/pulsar.jsonnet +++ b/templates/components/pulsar.jsonnet @@ -16,10 +16,10 @@ local images = import "values/images.jsonnet"; .with_command(["bin/pulsar", "standalone"]) // .with_command(["/bin/sh", "-c", "sleep 9999999"]) .with_environment({ - "PULSAR_MEM": "-Xms700M -Xmx700M" + "PULSAR_MEM": "-Xms600M -Xmx600M" }) - .with_limits("1.0", "1500M") - .with_reservations("0.5", "1500M") + .with_limits("2.0", "1500M") + .with_reservations("1.0", "1500M") // .with_volume_mount(confVolume, "/pulsar/conf") .with_volume_mount(dataVolume, "/pulsar/data") .with_port(6650, 6650, "bookie") @@ -31,11 +31,10 @@ local images = import "values/images.jsonnet"; .with_command([ "sh", "-c", - "sleep 1000000", -// "pulsar-admin --admin-url http://pulsar:8080 tenants create tg && pulsar-admin --admin-url http://pulsar:8080 namespaces create tg/flow && pulsar-admin --admin-url http://pulsar:8080 namespaces create tg/request && pulsar-admin --admin-url http://pulsar:8080 namespaces create tg/response && pulsar-admin --admin-url http://pulsar:8080 namespaces set-retention --size -1 --time 3m tg/response", + "while true; do pulsar-admin --admin-url http://pulsar:8080 tenants create tg ; pulsar-admin --admin-url http://pulsar:8080 namespaces create tg/flow ; pulsar-admin --admin-url http://pulsar:8080 namespaces create tg/request ; pulsar-admin --admin-url http://pulsar:8080 namespaces create tg/response ; pulsar-admin --admin-url http://pulsar:8080 namespaces set-retention --size -1 --time 3m tg/response; sleep 20; done", ]) - .with_limits("2", "256M") - .with_reservations("0.1", "256M"); + .with_limits("1", "400M") + .with_reservations("0.1", "400M"); local containerSet = engine.containers( "pulsar", diff --git a/templates/components/qdrant.jsonnet b/templates/components/qdrant.jsonnet index ac6eadf9..f923e84f 100644 --- a/templates/components/qdrant.jsonnet +++ b/templates/components/qdrant.jsonnet @@ -27,8 +27,13 @@ qdrant + { "store-graph-embeddings", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8080, 8080, "metrics"); + engine.resources([ containerSet, + service, ]) }, @@ -54,8 +59,13 @@ qdrant + { "query-graph-embeddings", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8080, 8080, "metrics"); + engine.resources([ containerSet, + service, ]) }, @@ -81,8 +91,13 @@ qdrant + { "store-doc-embeddings", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8080, 8080, "metrics"); + engine.resources([ containerSet, + service, ]) }, @@ -108,8 +123,13 @@ qdrant + { "query-doc-embeddings", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8080, 8080, "metrics"); + engine.resources([ containerSet, + service, ]) diff --git a/templates/components/trustgraph.jsonnet b/templates/components/trustgraph.jsonnet index 787f1a0c..c7615ed4 100644 --- a/templates/components/trustgraph.jsonnet +++ b/templates/components/trustgraph.jsonnet @@ -31,8 +31,13 @@ local prompt = import "prompt-template.jsonnet"; "chunker", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ containerSet, + service, ]) }, @@ -56,8 +61,13 @@ local prompt = import "prompt-template.jsonnet"; "pdf-decoder", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ containerSet, + service, ]) }, @@ -81,8 +91,13 @@ local prompt = import "prompt-template.jsonnet"; "vectorize", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ containerSet, + service, ]) }, diff --git a/templates/components/vertexai.jsonnet b/templates/components/vertexai.jsonnet index 294c35c8..2bc97799 100644 --- a/templates/components/vertexai.jsonnet +++ b/templates/components/vertexai.jsonnet @@ -49,9 +49,14 @@ local prompts = import "prompts/mixtral.jsonnet"; "text-completion", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ cfgVol, containerSet, + service, ]) }, @@ -98,12 +103,16 @@ local prompts = import "prompts/mixtral.jsonnet"; "text-completion-rag", [ container ] ); + local service = + engine.internalService(containerSet) + .with_port(8000, 8000, "metrics"); + engine.resources([ cfgVol, containerSet, + service, ]) - } } + prompts diff --git a/templates/config-to-k8s.jsonnet b/templates/config-to-k8s.jsonnet index 94ede36d..4ba0325e 100644 --- a/templates/config-to-k8s.jsonnet +++ b/templates/config-to-k8s.jsonnet @@ -25,9 +25,13 @@ local sc = { metadata: { name: "tg", }, - provisioner: "k8s.io/minikube-hostpath", + provisioner: "pd.csi.storage.gke.io", + parameters: { + type: "pd-balanced", + "csi.storage.k8s.io/fstype": "ext4", + }, reclaimPolicy: "Delete", - volumeBindingMode: "Immediate", + volumeBindingMode: "WaitForFirstConsumer", }; //patterns["pulsar"].create(engine) @@ -46,5 +50,3 @@ local resourceList = { resourceList - - diff --git a/templates/k8s.jsonnet b/templates/k8s.jsonnet index 9faff2ce..cbde28d0 100644 --- a/templates/k8s.jsonnet +++ b/templates/k8s.jsonnet @@ -139,6 +139,9 @@ }, + // Just an alias + internalService:: self.service, + service:: function(containers) { @@ -167,7 +170,6 @@ namespace: "trustgraph", }, spec: { -// type: "NodePort", selector: { app: service.name, }, @@ -175,7 +177,6 @@ { port: port.src, targetPort: port.dest, -// nodePort: port.nodeport, name: port.name, } for port in service.ports @@ -196,7 +197,7 @@ with_size:: function(size) self + { size: size }, add:: function() [ - +/* { apiVersion: "v1", @@ -209,16 +210,15 @@ }, spec: { storageClassName: "tg", + volumeMode: "Filesystem", capacity: { storage: volume.size, }, accessModes: [ "ReadWriteOnce" ], persistentVolumeReclaimPolicy: "Delete", - hostPath: { - path: "/data/k8s/" + volume.name, - } } }, +*/ { apiVersion: "v1", kind: "PersistentVolumeClaim", @@ -234,7 +234,7 @@ storage: volume.size, } }, - volumeName: volume.name, +// volumeName: volume.name, } } ],