-
Notifications
You must be signed in to change notification settings - Fork 91
Filter InferenceModels from Reconciliation #149
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
/assign |
@kfswain may have some insights. It looks to me either approach should work? (This is being discussed here #113 (comment)) |
/kind bug We need to do this. This is actually a bug. |
/assign |
xref #113 IMHO this should be a post-v0.2 task but feel free to assign yourself the issue if you want to add this feature. |
I think this is a bug, the epp currently is 1:1 with inference pool, and so we shouldn't be serving traffic for models that are not defined on the pool that epp was created for, right? |
We don't. We already filter on pool name and namespace. I was gonna ask you how this was a bug. It's definitely unoptimized, but I wasnt clear on the bug portion. I think @danehans is responding to the ask to let inference models be written in different namespaces, but reference the same pool. I personally want to hold off on that feature till there is a pretty resounding ask for it, as that seems atypical behavior |
Pls ignore my comment on cross namespace reference, it's being discussed here: IMO the current implementation works as intended. The proposed solution here (using Predicate to filter) is an improvement. |
This bug is related to InferenceModel reconciliation and not InferencePools. Only InferenceModels with |
This line filters based on pool name: gateway-api-inference-extension/pkg/ext-proc/controller/inferencemodel_reconciler.go Line 74 in 9f34673
|
there is an easy way to setup a predicate that will filter reconcilation events unless this condition is satisfied: @danehans would it be ok if I push that fix in a PR? or do you prefer doing it yourself? |
I have an open PR working on that rn, happy to push it. Just wanted some clarification here |
as far as I understood from this issue, I think @danehans meant adding a predicate to filter the events during the controller registration within the controller manager using |
Actually, introducing this change would introduce a bug. Imagine the case where an inferenceModel is created with the poolRef pointing to your pool. The predicate returns |
@kfswain the bug you described here is a matter of implementation. |
please see PR #397 |
Reopening the issue due to #149 (comment). |
Uh oh!
There was an error while loading. Please reload this page.
Currently, the InferenceModel reconciler reconciles all InferenceModels in the configured namespace. Since the endpoint picker extension is configured for a single InferencePool name, the InferenceModel reconciler should only reconcile InferenceModels that reference, e.g.
poolRef
, the configured InferencePool.InferenceModels that do not reference the configured InferencePool are deleted from the data store. Why is this approach being taken instead of filtering the watch, e.g Predicate, so the reconciler only reconciles matching InferenceModels?
The text was updated successfully, but these errors were encountered: