Skip to content

Commit 0a94d1a

Browse files
marcofranssenjmhbh
andauthored
helm: Allow configuring agent runtime (kagent-dev#1697)
This PR allows to configure the agent runtime as Go. In the agent.yaml templates I kept the default as python. In the kagent chart I set the runtime by default to Go. It needs much less memory and CPU which also allows better use on local kind clusters which are more resource constrainted. This way people can more easily run and try kagent on their local system. The resources are still overprovisioned to leave some room for more heavy use. Real production use can still override the values to higher numbers. --------- Signed-off-by: Marco Franssen <marco.franssen@gmail.com> Co-authored-by: J.M. Huibonhoa <jmhbh@users.noreply.github.com>
1 parent 98a3796 commit 0a94d1a

23 files changed

Lines changed: 225 additions & 185 deletions

File tree

helm/agents/argo-rollouts/templates/agent.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ spec:
99
description: The Argo Rollouts Converter AI Agent specializes in converting Kubernetes Deployments to Argo Rollouts.
1010
type: Declarative
1111
declarative:
12+
runtime: {{ .Values.runtime | default "python" }}
1213
systemMessage: |
1314
You are an Argo Rollouts specialist focused on progressive delivery and deployment automation. You
1415
are only responsible for defining the YAML for the Argo Rollout resource and simple kubectl argo rollouts commands.

helm/agents/argo-rollouts/values.yaml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
1+
# -- Optional reference to a ModelConfig resource for this agent. If not specified, the default model config will be used.
12
modelConfigRef: ""
2-
imagePullSecrets: []
33

4+
# -- Optional runtime specification for the agent. If not specified, it will default to "python". Supported runtimes include "python" and "go".
5+
runtime: ""
6+
7+
modelConfigRef: ""
8+
imagePullSecrets: []
49

510
resources:
611
requests:

helm/agents/cilium-debug/templates/agent.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ spec:
99
description: Cilium debug agent can help with debugging, troubleshooting, and advanced diagnostics of Cilium installations in Kubernetes clusters.
1010
type: Declarative
1111
declarative:
12+
runtime: {{ .Values.runtime | default "python" }}
1213
modelConfig: {{ .Values.modelConfigRef | default (printf "%s" (include "kagent.defaultModelConfigName" .)) }}
1314
systemMessage: |
1415
You are the Cilium Debug Agent, a specialized assistant for debugging, troubleshooting,

helm/agents/cilium-debug/values.yaml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
1+
# -- Optional reference to a ModelConfig resource for this agent. If not specified, the default model config will be used.
12
modelConfigRef: ""
2-
imagePullSecrets: []
33

4+
# -- Optional runtime specification for the agent. If not specified, it will default to "python". Supported runtimes include "python" and "go".
5+
runtime: ""
6+
7+
imagePullSecrets: []
48

59
resources:
610
requests:

helm/agents/cilium-manager/templates/agent.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ spec:
99
description: Cilium manager agent knows how to install, configure, monitor, and troubleshoot Cilium in Kubernetes environments
1010
type: Declarative
1111
declarative:
12+
runtime: {{ .Values.runtime | default "python" }}
1213
modelConfig: {{ .Values.modelConfigRef | default (printf "%s" (include "kagent.defaultModelConfigName" .)) }}
1314
systemMessage: |-
1415
You are a Cilium Expert AI Agent with comprehensive knowledge of Cilium CNI, eBPF, and Kubernetes networking.

helm/agents/cilium-manager/values.yaml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
1+
# -- Optional reference to a ModelConfig resource for this agent. If not specified, the default model config will be used.
12
modelConfigRef: ""
2-
imagePullSecrets: []
33

4+
# -- Optional runtime specification for the agent. If not specified, it will default to "python". Supported runtimes include "python" and "go".
5+
runtime: ""
6+
7+
imagePullSecrets: []
48

59
resources:
610
requests:

helm/agents/cilium-policy/templates/agent.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ spec:
99
description: Cilium policy agent knows how to create CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy resources from natural language
1010
type: Declarative
1111
declarative:
12+
runtime: {{ .Values.runtime | default "python" }}
1213
modelConfig: {{ .Values.modelConfigRef | default (printf "%s" (include "kagent.defaultModelConfigName" .)) }}
1314
systemMessage: |-
1415
You are a CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy agent that knows how to create valid YAML configurations based on user request.
Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,16 @@
1-
modelConfigRef: ""
2-
imagePullSecrets: []
3-
4-
5-
resources:
6-
requests:
7-
cpu: 100m
8-
memory: 256Mi
9-
limits:
10-
cpu: 1000m
11-
memory: 1Gi
1+
# -- Optional reference to a ModelConfig resource for this agent. If not specified, the default model config will be used.
2+
modelConfigRef: ""
3+
4+
# -- Optional runtime specification for the agent. If not specified, it will default to "python". Supported runtimes include "python" and "go".
5+
runtime: ""
6+
7+
imagePullSecrets: []
8+
9+
resources:
10+
requests:
11+
cpu: 100m
12+
memory: 256Mi
13+
limits:
14+
cpu: 1000m
15+
memory: 1Gi
16+

helm/agents/helm/templates/agent.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ spec:
99
description: The Helm Expert AI Agent specializing in using Helm for Kubernetes cluster management and operations. This agent is equipped with a range of tools to manage Helm releases and troubleshoot Helm-related issues.
1010
type: Declarative
1111
declarative:
12+
runtime: {{ .Values.runtime | default "python" }}
1213
systemMessage: |-
1314
# Helm AI Agent System Prompt
1415

helm/agents/helm/values.yaml

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,16 @@
1-
modelConfigRef: ""
2-
imagePullSecrets: []
3-
4-
5-
resources:
6-
requests:
7-
cpu: 100m
8-
memory: 256Mi
9-
limits:
10-
cpu: 1000m
11-
memory: 1Gi
1+
# -- Optional reference to a ModelConfig resource for this agent. If not specified, the default model config will be used.
2+
modelConfigRef: ""
3+
4+
# -- Optional runtime specification for the agent. If not specified, it will default to "python". Supported runtimes include "python" and "go".
5+
runtime: ""
6+
7+
imagePullSecrets: []
8+
9+
resources:
10+
requests:
11+
cpu: 100m
12+
memory: 256Mi
13+
limits:
14+
cpu: 1000m
15+
memory: 1Gi
16+

0 commit comments

Comments
 (0)