package controller import ( "context" "prompts-core/model/dto" "prompts-core/service" "gitea.com/red-future/common/beans" ) type prompt struct{} // Prompt 提示词配置控制器 var Prompt = new(prompt) // ComposeMessages 调用 model-gateway 异步任务并同步等待结果, func (c *prompt) ComposeMessages(ctx context.Context, req *dto.ComposeMessagesReq) (res *dto.ComposeMessagesRes, err error) { return service.Prompt.ComposeMessages(ctx, req) } // ComposeMessagesCallback model-gateway 提示词回调 func (c *prompt) Callback(ctx context.Context, req *dto.CallbackReq) (res *beans.ResponseEmpty, err error) { err = service.Prompt.Callback(ctx, req) return } // GetComposeTask 查询拼接任务结果 func (c *prompt) GetComposeTask(ctx context.Context, req *dto.GetComposeTaskReq) (res *dto.GetComposeTaskRes, err error) { return service.Prompt.GetComposeTask(ctx, req.TaskId) } // CreatePrompt 添加配置(默认启用) func (c *prompt) CreatePrompt(ctx context.Context, req *dto.CreatePromptReq) (res *dto.CreatePromptRes, err error) { return service.Prompt.Create(ctx, req) } // UpdatePrompt 更新配置 func (c *prompt) UpdatePrompt(ctx context.Context, req *dto.UpdatePromptReq) (res *beans.ResponseEmpty, err error) { err = service.Prompt.Update(ctx, req) return } // DeletePrompt 删除配置 func (c *prompt) DeletePrompt(ctx context.Context, req *dto.DeletePromptReq) (res *beans.ResponseEmpty, err error) { err = service.Prompt.Delete(ctx, req.ID) return } // GetPrompt 获取配置详情 func (c *prompt) GetPrompt(ctx context.Context, req *dto.GetPromptReq) (res *dto.GetPromptRes, err error) { m, err := service.Prompt.Get(ctx, req.ID) if err != nil { return nil, err } return &dto.GetPromptRes{Prompt: m}, nil } // ListPrompt 配置列表 func (c *prompt) ListPrompt(ctx context.Context, req *dto.ListPromptReq) (res *dto.ListPromptRes, err error) { list, total, err := service.Prompt.List(ctx, int(req.Page.PageNum), int(req.Page.PageSize), req.ModelTypeId, req.ModelType) if err != nil { return nil, err } return &dto.ListPromptRes{ List: list, Total: total, }, nil }