package controller import ( "context" "rag/model/dto" "rag/service" "gitea.com/red-future/common/beans" "github.com/gogf/gf/v2/frame/g" ) type document struct{} var Document = new(document) // Create 创建文件 func (c *document) Create(ctx context.Context, req *dto.CreateDocumentReq) (res *dto.CreateDocumentRes, err error) { res, err = service.Document.Create(ctx, req) return } // Update 更新文件 func (c *document) Update(ctx context.Context, req *dto.UpdateDocumentReq) (res *beans.ResponseEmpty, err error) { err = service.Document.Update(ctx, req) return } // Delete 删除文件 func (c *document) Delete(ctx context.Context, req *dto.DeleteDocumentReq) (res *beans.ResponseEmpty, err error) { err = service.Document.Delete(ctx, req) return } // Get 获取文件详情 func (c *document) Get(ctx context.Context, req *dto.GetDocumentReq) (res *dto.GetDocumentRes, err error) { res, err = service.Document.Get(ctx, req) return } // List 文件列表 func (c *document) List(ctx context.Context, req *dto.ListDocumentReq) (res *dto.ListDocumentRes, err error) { if !g.IsEmpty(req.Page) { req.Page = &beans.Page{PageNum: 1, PageSize: 20} } res, err = service.Document.List(ctx, req) return } // DocumentVector 处理文件(向量化) func (c *document) DocumentVector(ctx context.Context, req *dto.DocumentVectorReq) (res *beans.ResponseEmpty, err error) { err = service.Document.Vector(ctx, req) return } func (c *document) VectorSemanticSplit(ctx context.Context, req *dto.VectorSemanticSplitReq) (res *beans.ResponseEmpty, err error) { err = service.Document.VectorSemanticSplit(ctx, req) return } func (c *document) SearchRecursiveSplit(ctx context.Context, req *dto.SearchRecursiveSplitReq) (res *beans.ResponseEmpty, err error) { err = service.Document.SearchRecursiveSplit(ctx, req) return } func (c *document) KeywordExtract(ctx context.Context, req *dto.KeywordExtractReq) (res *beans.ResponseEmpty, err error) { err = service.Document.KeywordExtract(ctx, req) return }