123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185 |
- package fastgpt
- import (
- "errors"
- "time"
- )
- type DatasetResp struct {
- Code int `json:"code"`
- StatusText string `json:"statusText"`
- Message string `json:"message"`
- Data string `json:"data"`
- }
- type DatasetReq struct {
- ParentID string `json:"parentId,optional"`
- Type string `json:"type,optional"`
- Avatar string `json:"avatar,optional"`
- Name string `json:"name"`
- Intro string `json:"intro,optional"`
- VectorModel string `json:"vectorModel"`
- AgentModel string `json:"agentModel"`
- }
- type DatasetInfo struct {
- ID string `json:"_id"`
- ParentID string `json:"parentId,optional"`
- TeamID string `json:"teamId,optional"`
- TmbID string `json:"tmbId,optional"`
- Type string `json:"type,optional"`
- Status string `json:"status,optional"`
- Avatar string `json:"avatar,optional"`
- Name string `json:"name,optional"`
- VectorModel struct {
- Model string `json:"model"`
- Name string `json:"name"`
- Avatar string `json:"avatar"`
- CharsPointsPrice uint64 `json:"charsPointsPrice"`
- DefaultToken uint64 `json:"defaultToken"`
- MaxToken uint64 `json:"maxToken"`
- Weight uint64 `json:"weight"`
- DefaultConfig struct {
- } `json:"defaultConfig"`
- DbConfig struct {
- } `json:"dbConfig"`
- QueryConfig struct {
- } `json:"queryConfig"`
- } `json:"vectorModel,optional"`
- AgentModel struct {
- Model string `json:"model"`
- Name string `json:"name"`
- Avatar string `json:"avatar"`
- MaxContext uint64 `json:"maxContext"`
- MaxResponse uint64 `json:"maxResponse"`
- QuoteMaxToken uint64 `json:"quoteMaxToken"`
- MaxTemperature float64 `json:"maxTemperature"`
- CharsPointsPrice uint64 `json:"charsPointsPrice"`
- Censor bool `json:"censor"`
- Vision bool `json:"vision"`
- DatasetProcess bool `json:"datasetProcess"`
- UsedInClassify bool `json:"usedInClassify"`
- UsedInExtractFields bool `json:"usedInExtractFields"`
- UsedInToolCall bool `json:"usedInToolCall"`
- UsedInQueryExtension bool `json:"usedInQueryExtension"`
- ToolChoice bool `json:"toolChoice"`
- FunctionCall bool `json:"functionCall"`
- CustomCQPrompt string `json:"customCQPrompt"`
- CustomExtractPrompt string `json:"customExtractPrompt"`
- DefaultSystemChatPrompt string `json:"defaultSystemChatPrompt"`
- DefaultConfig struct {
- } `json:"defaultConfig"`
- } `json:"agentModel,optional"`
- Intro string `json:"intro,optional"`
- Permission struct {
- Value int64 `json:"value"`
- IsOwner bool `json:"isOwner"`
- HasManagePer bool `json:"hasManagePer"`
- HasWritePer bool `json:"hasWritePer"`
- HasReadPer bool `json:"hasReadPer"`
- } `json:"permission,optional"`
- DefaultPermission uint64 `json:"defaultPermission.optional"`
- UpdateTime time.Time `json:"updateTime,optional"`
- V uint64 `json:"__v,optional"`
- }
- type DatasetList struct {
- Code int `json:"code"`
- StatusText string `json:"statusText"`
- Message string `json:"message"`
- Data []DatasetInfo `json:"data"`
- }
- type DatasetDetail struct {
- Code int `json:"code"`
- StatusText string `json:"statusText"`
- Message string `json:"message"`
- Data DatasetInfo `json:"data"`
- }
- // GetDatasetDetail 获取数据集详情
- func GetDatasetDetail(id string) (dataset *DatasetDetail, err error) {
- resp, err := NewResty().
- R().
- SetResult(&dataset).
- SetQueryParam("id", id).
- Get("core/dataset/detail")
- if err != nil {
- return nil, err
- }
- if resp.IsError() {
- return nil, errors.New(resp.String())
- }
- return
- }
- // GetDatasetList 获取数据集列表
- func GetDatasetList(parentId string) (datasetList *DatasetList, err error) {
- resp, err := NewResty().
- R().
- SetResult(&datasetList).
- SetBody(map[string]string{"parentId": parentId}).
- Post("core/dataset/list")
- if err != nil {
- return nil, err
- }
- if resp.IsError() {
- return nil, errors.New(resp.String())
- }
- return
- }
- // CreateDataset 创建数据集
- func CreateDataset(data *DatasetReq) (dataset *DatasetResp, err error) {
- data.Type = "dataset"
- if data.Avatar == "" {
- data.Avatar = "/icon/logo.svg"
- }
- resp, err := NewResty().
- R().
- SetResult(&dataset).
- SetBody(*data).
- Post("core/dataset/create")
- if err != nil {
- return nil, err
- }
- if resp.IsError() {
- return nil, errors.New(resp.String())
- }
- return
- }
- // CreateDatasetFolder 创建数据集目录
- func CreateDatasetFolder(data *DatasetReq) (*DatasetResp, error) {
- data.Type = "folder"
- data.Avatar = "/imgs/files/folder.svg"
- return CreateDataset(data)
- }
- // DeleteDataset 删除数据集
- func DeleteDataset(id string) (dataset *DatasetResp, err error) {
- resp, err := NewResty().
- R().
- SetResult(&dataset).
- SetQueryParam("id", id).
- Delete("core/dataset/delete")
- if err != nil {
- return nil, err
- }
- if resp.IsError() {
- return nil, errors.New(resp.String())
- }
- return
- }
|