feat: add ownedBy and createdAt fields to AIGatewayRoute#620
feat: add ownedBy and createdAt fields to AIGatewayRoute#620mathetake merged 2 commits intoenvoyproxy:mainfrom
Conversation
|
API definitions only now. cc @mathetake for feedbacks. |
|
sorry i've been sick & I needed to focus on the important refactoring in #629 ... will check in tomorrow |
mathetake
left a comment
There was a problem hiding this comment.
i didn't give much thought but am i understanding correctly that this assumes that "model maps to a unique backend? my concern is mainly about this comment #588 (comment)
RE: For fallback case, what I think a bit tricky here is when querying the model list, we have no idea whether the services(backends) is ready or not, which means we have no idea who's exactly the model owner among all the backends (the same for all kinds of multi-backends, like weight based routing). So mapping the modelOwner:backend = 1:1 seems useless, I may think more about this. |
|
I think there're three approaches:
|
**Commit Message** The backends and headers in filter config are M:N, with #599, we swapped out the backend from the config.rules, leading to the lost mapping relationship between them. With this PR, we'll move the backends back to the config.rules which is more straightforward. **Related Issues/PRs (if applicable)** Related PR: #620, #599 **Special notes for reviewers (if applicable)** None --------- Signed-off-by: kerthcet <kerthcet@gmail.com>
96ca665 to
c3ecedd
Compare
| return err | ||
| } | ||
| *(*time.Time)(t) = time.Unix(q, 0) | ||
| *(*time.Time)(t) = time.Unix(q, 0).UTC() |
There was a problem hiding this comment.
Change to UTC to make sure the output is comparable in tests.
|
Ping @mathetake for review, thanks a lot. |
mathetake
left a comment
There was a problem hiding this comment.
minor comments, but I think this looks good.
any further comments ? @envoyproxy/ai-gateway-maintainers
Signed-off-by: kerthcet <kerthcet@gmail.com>
Signed-off-by: kerthcet <kerthcet@gmail.com>
|
Comments addressed, PTAL. |
|
Kindly ping. |
|
thanks for your work @kerthcet ! |
|
Thanks @mathetake |
**Commit Message** `fakeBackends` were utilized before #620 but after that, it's effectively not used anymore. This refactors tests/extproc around on the backend definition so that it will be clearer that the always-failing backend is configured explicitly. --------- Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
Commit Message
This commit added new fields CreatedAt & OwnedBy to AIGatewayRoute as well as the internal Backend, so people can customize the output of OpenAI-compatible APIs.
We set the fields at
AIGatewayRouteRulelevel, the main two reasons here:Matchesfields, so working atAIGatewayRouteRuleseems not bad as the model:modelOwner = 1:1AIGatewayRouteRulelevel also makes sense.One shortcoming here is in fallover mode, like we set different backends for one model service, e.g. Envoy AI Gateway + openai, then we will have the same modelOwner for them, it's a bit confusing.
But I persist on this just because when querying the
/modelslist, let's assume that we'll have two models sharing the same modelOwner (different with the current implementation):Related Issues/PRs (if applicable)
Fixes: #588
Special notes for reviewers (if applicable)
None