Skip to content

Conversation

@CasLubbers
Copy link
Contributor

@CasLubbers CasLubbers commented Oct 9, 2025

📌 Summary

  • Added ai-operators chart which contain agent-operator & kb-operator.
  • Added configurable images and helm chart configuration for easy testing.

🔍 Reviewer Notes

🧹 Checklist

  • Code is readable, maintainable, and robust.
  • Unit tests added/updated

@CasLubbers CasLubbers marked this pull request as ready for review October 13, 2025 05:46

# AkamaiKnowledgeBase custom resources
- apiGroups: ["akamai.io"]
resources: ["akamaiknowledgebases"]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since the group is already akamai.io, why does the resource name need to have the "akamai" prefix?


# AkamaiAgent custom resources
- apiGroups: ["akamai.io"]
resources: ["akamaiagents"]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since the group is already akamai.io, why does the resource name need to have the "akamai" prefix?

resources: ["akamaiknowledgebases"]
verbs: ["get", "list", "watch"]

# TODO strict this down further for only some namespaces
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's do it right now, so later we do not need to worry about side effects of narrowing down the permissions.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

# Service discovery for foundation models and agent services
- apiGroups: [""]
resources: ["services"]
verbs: ["get", "list", "create", "update", "patch", "delete"]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why does the service discover requires more than "get" and "list"?

@@ -0,0 +1,92 @@
{{- if .Values.agentOperator.enabled }}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do the agent-operator and the kb-operator are part of the same chart?

# Knowledge Base Operator configuration
kbOperator:
enabled: true
replicaCount: 1
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This operator does not support running with more than one replica thus we should not expose the replica parameter.

# Agent Operator configuration
agentOperator:
enabled: true
replicaCount: 1
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This operator does not support running with more than one replica thus we should not expose the replica parameter.

Copy link
Contributor

@j-zimnowoda j-zimnowoda left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you revise the following:

  • split this chart into two helm charts (separation of concerns)
  • narrow down RBAC (least privileged rule)

pkg: kserve
<<: *default
- name: ai-operators
installed: {{ $v.otomi.aiEnabled }}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am not sure about his flag. Are we going to treat those chart as special ones and build the logic around that flag in UI?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The flag is already used in the frontend to hide the agents and knowledgebase tabs in the sidebar

Copy link
Contributor

@ElderMatt ElderMatt Oct 22, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Which I think is valid because otherwise those tabs might be confusing and just be in the way for people who are not interested in AI parts. But as a counter argument we are hiding features in the platform that people might be interested in.

# Knowledge Base Operator configuration
kbOperator:
enabled: true
replicaCount: {{ $ag.replicaCount }}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
replicaCount: {{ $ag.replicaCount }}
replicaCount: {{ $kb.replicaCount }}

?

replicaCount: 1
image:
repository: linode/ai-operators
tag: APL-1189
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As a reminder, it should be a semantic version or not a feature branch.

@@ -1,5 +1,5 @@
api: main
console: main
console: APL-1142
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reminder: please revert it before merging.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants