package controller import ( "context" "rag-local/kb/model/dto" "rag-local/kb/model/entity" "rag-local/kb/service" ) type modelConfig struct{} var ModelConfig = new(modelConfig) func (c *modelConfig) List(ctx context.Context, req *dto.ListModelConfigReq) (res *dto.ListModelConfigRes, err error) { list, err := service.ModelConfigService.List(ctx, req.ModelType) if err != nil { return nil, err } return &dto.ListModelConfigRes{List: list}, nil } func (c *modelConfig) Save(ctx context.Context, req *dto.SaveModelConfigReq) (res *dto.SaveModelConfigRes, err error) { id, err := service.ModelConfigService.Save(ctx, &entity.ModelConfig{ Id: req.Id, Name: req.Name, ModelType: req.ModelType, ModelName: req.ModelName, EndpointUrl: req.EndpointUrl, ApiKey: req.ApiKey, Dimension: req.Dimension, Extra: req.Extra, }) if err != nil { return nil, err } return &dto.SaveModelConfigRes{Id: id}, nil } func (c *modelConfig) SetDefault(ctx context.Context, req *dto.SetDefaultModelConfigReq) (res *dto.SetDefaultModelConfigRes, err error) { return nil, service.ModelConfigService.SetDefault(ctx, req.Id) } func (c *modelConfig) Delete(ctx context.Context, req *dto.DeleteModelConfigReq) (res *dto.DeleteModelConfigRes, err error) { return nil, service.ModelConfigService.Delete(ctx, req.Id) } func (c *modelConfig) Test(ctx context.Context, req *dto.TestModelConfigReq) (res *dto.TestModelConfigRes, err error) { if err := service.ModelConfigService.Test(ctx, req.Id); err != nil { return &dto.TestModelConfigRes{Ok: false, Msg: err.Error()}, nil } return &dto.TestModelConfigRes{Ok: true, Msg: "连接正常"}, nil }