feat: rag初始版
This commit is contained in:
48
controller/dataset.go
Normal file
48
controller/dataset.go
Normal file
@@ -0,0 +1,48 @@
|
||||
package controller
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"rag/model/dto"
|
||||
"rag/service"
|
||||
|
||||
"gitea.com/red-future/common/beans"
|
||||
"github.com/gogf/gf/v2/frame/g"
|
||||
)
|
||||
|
||||
type dataset struct{}
|
||||
|
||||
var Dataset = new(dataset)
|
||||
|
||||
// Create 创建数据集
|
||||
func (c *dataset) Create(ctx context.Context, req *dto.CreateDatasetReq) (res *dto.CreateDatasetRes, err error) {
|
||||
res, err = service.Dataset.Create(ctx, req)
|
||||
return
|
||||
}
|
||||
|
||||
// Update 更新数据集
|
||||
func (c *dataset) Update(ctx context.Context, req *dto.UpdateDatasetReq) (res *beans.ResponseEmpty, err error) {
|
||||
err = service.Dataset.Update(ctx, req)
|
||||
return
|
||||
}
|
||||
|
||||
// Delete 删除数据集
|
||||
func (c *dataset) Delete(ctx context.Context, req *dto.DeleteDatasetReq) (res *beans.ResponseEmpty, err error) {
|
||||
err = service.Dataset.Delete(ctx, req)
|
||||
return
|
||||
}
|
||||
|
||||
// List 数据集列表
|
||||
func (c *dataset) List(ctx context.Context, req *dto.ListDatasetReq) (res *dto.ListDatasetRes, err error) {
|
||||
if !g.IsEmpty(req.Page) {
|
||||
req.Page = &beans.Page{PageNum: 1, PageSize: 20}
|
||||
}
|
||||
res, err = service.Dataset.List(ctx, req)
|
||||
return
|
||||
}
|
||||
|
||||
// Search 搜索
|
||||
//func (c *dataset) Search(ctx context.Context, req *dto.SearchReq) (res *dto.SearchRes, err error) {
|
||||
// res, err = service.Dataset.Search(ctx, req)
|
||||
// return
|
||||
//}
|
||||
5
controller/dataset_index.go
Normal file
5
controller/dataset_index.go
Normal file
@@ -0,0 +1,5 @@
|
||||
package controller
|
||||
|
||||
type datasetIndex struct{}
|
||||
|
||||
var DatasetIndex = new(datasetIndex)
|
||||
54
controller/document.go
Normal file
54
controller/document.go
Normal file
@@ -0,0 +1,54 @@
|
||||
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.DocumentVO, 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
|
||||
}
|
||||
|
||||
// Process 处理文件(向量化)
|
||||
func (c *document) Process(ctx context.Context, req *dto.ProcessDocumentReq) (res *dto.ProcessDocumentRes, err error) {
|
||||
res, err = service.Document.Process(ctx, req)
|
||||
return
|
||||
}
|
||||
29
controller/document_chunk.go
Normal file
29
controller/document_chunk.go
Normal file
@@ -0,0 +1,29 @@
|
||||
package controller
|
||||
|
||||
import (
|
||||
"context"
|
||||
"rag/model/dto"
|
||||
"rag/service"
|
||||
|
||||
"gitea.com/red-future/common/beans"
|
||||
"github.com/gogf/gf/v2/frame/g"
|
||||
)
|
||||
|
||||
type documentChunk struct{}
|
||||
|
||||
var DocumentChunk = new(documentChunk)
|
||||
|
||||
// Update 更新文件片段
|
||||
func (c *documentChunk) Update(ctx context.Context, req *dto.UpdateDocumentChunkReq) (res *beans.ResponseEmpty, err error) {
|
||||
err = service.DocumentChunk.Update(ctx, req)
|
||||
return
|
||||
}
|
||||
|
||||
// List 文件片段列表
|
||||
func (c *documentChunk) List(ctx context.Context, req *dto.ListDocumentChunkReq) (res *dto.ListDocumentChunkRes, err error) {
|
||||
if !g.IsEmpty(req.Page) {
|
||||
req.Page = &beans.Page{PageNum: 1, PageSize: 20}
|
||||
}
|
||||
res, err = service.DocumentChunk.List(ctx, req)
|
||||
return
|
||||
}
|
||||
43
controller/keyword.go
Normal file
43
controller/keyword.go
Normal file
@@ -0,0 +1,43 @@
|
||||
package controller
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"rag/model/dto"
|
||||
"rag/service"
|
||||
|
||||
"gitea.com/red-future/common/beans"
|
||||
"github.com/gogf/gf/v2/frame/g"
|
||||
)
|
||||
|
||||
type keyword struct{}
|
||||
|
||||
var Keyword = new(keyword)
|
||||
|
||||
func (c *keyword) Create(ctx context.Context, req *dto.CreateKeywordReq) (res *dto.CreateKeywordRes, err error) {
|
||||
res, err = service.Keyword.Create(ctx, req)
|
||||
return
|
||||
}
|
||||
|
||||
func (c *keyword) Update(ctx context.Context, req *dto.UpdateKeywordReq) (res *beans.ResponseEmpty, err error) {
|
||||
err = service.Keyword.Update(ctx, req)
|
||||
return
|
||||
}
|
||||
|
||||
func (c *keyword) Delete(ctx context.Context, req *dto.DeleteKeywordReq) (res *beans.ResponseEmpty, err error) {
|
||||
err = service.Keyword.Delete(ctx, req)
|
||||
return
|
||||
}
|
||||
|
||||
func (c *keyword) Get(ctx context.Context, req *dto.GetKeywordReq) (res *dto.KeywordVO, err error) {
|
||||
res, err = service.Keyword.Get(ctx, req)
|
||||
return
|
||||
}
|
||||
|
||||
func (c *keyword) List(ctx context.Context, req *dto.ListKeywordReq) (res *dto.ListKeywordRes, err error) {
|
||||
if !g.IsEmpty(req.Page) {
|
||||
req.Page = &beans.Page{PageNum: 1, PageSize: 20}
|
||||
}
|
||||
res, err = service.Keyword.List(ctx, req)
|
||||
return
|
||||
}
|
||||
Reference in New Issue
Block a user