From 4c2739b29d0acfd50cd288c90558ca13cc68f1a4 Mon Sep 17 00:00:00 2001 From: Lanture1064 <34346740+Lanture1064@users.noreply.github.com> Date: Wed, 27 Dec 2023 11:02:45 +0800 Subject: [PATCH] chore: fix bugs in update/delete ms Signed-off-by: Lanture1064 --- apiserver/pkg/modelservice/modelservice.go | 39 +++++++++++++++------- 1 file changed, 27 insertions(+), 12 deletions(-) diff --git a/apiserver/pkg/modelservice/modelservice.go b/apiserver/pkg/modelservice/modelservice.go index 900b67054..1288240a9 100644 --- a/apiserver/pkg/modelservice/modelservice.go +++ b/apiserver/pkg/modelservice/modelservice.go @@ -100,6 +100,9 @@ func CreateModelService(ctx context.Context, c dynamic.Interface, input generate // UpdateModelService updates a 3rd_party model service func UpdateModelService(ctx context.Context, c dynamic.Interface, input generated.UpdateModelServiceInput) (*generated.ModelService, error) { + var updatedLLM *generated.Llm + var updatedEmbedder *generated.Embedder + var err error name, namespace, displayName := "", "", "" if input.Name != "" { name = input.Name @@ -111,14 +114,18 @@ func UpdateModelService(ctx context.Context, c dynamic.Interface, input generate displayName = *input.DisplayName } - updatedLLM, err := llm.UpdateLLM(ctx, c, name, namespace, displayName) - if err != nil { - return nil, err + if strings.Contains("llm", *input.Types) { + updatedLLM, err = llm.UpdateLLM(ctx, c, name, namespace, displayName) + if err != nil { + return nil, err + } } - updatedEmbedder, err := embedder.UpdateEmbedder(ctx, c, name, namespace, displayName) - if err != nil { - return nil, err + if strings.Contains("embedding", *input.Types) { + updatedEmbedder, err = embedder.UpdateEmbedder(ctx, c, name, namespace, displayName) + if err != nil { + return nil, err + } } var creationTimestamp, updateTimestamp *time.Time @@ -148,18 +155,27 @@ func UpdateModelService(ctx context.Context, c dynamic.Interface, input generate // DeleteModelService deletes a 3rd_party model service func DeleteModelService(ctx context.Context, c dynamic.Interface, input *generated.DeleteCommonInput) (*string, error) { - _, err := embedder.DeleteEmbedders(ctx, c, input) + // check types of the model service + ms, err := ReadModelService(ctx, c, *input.Name, input.Namespace) if err != nil { return nil, err } - _, err = llm.DeleteLLMs(ctx, c, input) - if err != nil { - return nil, err + if strings.Contains("llm", *ms.Types) { + _, err := llm.DeleteLLMs(ctx, c, input) + if err != nil { + return nil, err + } + } + if strings.Contains("embedding", *ms.Types) { + _, err := embedder.DeleteEmbedders(ctx, c, input) + if err != nil { + return nil, err + } } return nil, nil } -// GetModelService get a 3rd_party model service +// ReadModelService get a 3rd_party model service func ReadModelService(ctx context.Context, c dynamic.Interface, name string, namespace string) (*generated.ModelService, error) { var modelService = &generated.ModelService{} @@ -175,7 +191,6 @@ func ReadModelService(ctx context.Context, c dynamic.Interface, name string, nam if llm != nil && embedder != nil { modelService.Types = &common.ModelTypeAll } - return modelService, nil }