complete implementation of dataset SDK (#2147)
### What problem does this PR solve? Complete implementation of dataset SDK. #1102 ### Type of change - [x] New Feature (non-breaking change which adds functionality) --------- Co-authored-by: Feiue <10215101452@stu.ecun.edu.cn> Co-authored-by: Kevin Hu <kevinhu.sh@gmail.com>
This commit is contained in:
@@ -18,13 +18,17 @@ class Base(object):
|
||||
pr[name] = value
|
||||
return pr
|
||||
|
||||
|
||||
def post(self, path, param):
|
||||
res = self.rag.post(path,param)
|
||||
res = self.rag.post(path, param)
|
||||
return res
|
||||
|
||||
def get(self, path, params=''):
|
||||
res = self.rag.get(path,params)
|
||||
def get(self, path, params):
|
||||
res = self.rag.get(path, params)
|
||||
return res
|
||||
|
||||
def rm(self, path, params):
|
||||
res = self.rag.delete(path, params)
|
||||
return res
|
||||
|
||||
def __str__(self):
|
||||
return str(self.to_json())
|
||||
|
||||
@@ -21,18 +21,36 @@ class DataSet(Base):
|
||||
self.permission = "me"
|
||||
self.document_count = 0
|
||||
self.chunk_count = 0
|
||||
self.parser_method = "naive"
|
||||
self.parse_method = "naive"
|
||||
self.parser_config = None
|
||||
for k in list(res_dict.keys()):
|
||||
if k == "embd_id":
|
||||
res_dict["embedding_model"] = res_dict[k]
|
||||
if k == "parser_id":
|
||||
res_dict['parse_method'] = res_dict[k]
|
||||
if k == "doc_num":
|
||||
res_dict["document_count"] = res_dict[k]
|
||||
if k == "chunk_num":
|
||||
res_dict["chunk_count"] = res_dict[k]
|
||||
if k not in self.__dict__:
|
||||
res_dict.pop(k)
|
||||
super().__init__(rag, res_dict)
|
||||
|
||||
def save(self):
|
||||
def save(self) -> bool:
|
||||
res = self.post('/dataset/save',
|
||||
{"id": self.id, "name": self.name, "avatar": self.avatar, "tenant_id": self.tenant_id,
|
||||
"description": self.description, "language": self.language, "embd_id": self.embedding_model,
|
||||
"permission": self.permission,
|
||||
"doc_num": self.document_count, "chunk_num": self.chunk_count, "parser_id": self.parser_method,
|
||||
"doc_num": self.document_count, "chunk_num": self.chunk_count, "parser_id": self.parse_method,
|
||||
"parser_config": self.parser_config.to_json()
|
||||
})
|
||||
res = res.json()
|
||||
if not res.get("retmsg"): return True
|
||||
raise Exception(res["retmsg"])
|
||||
if res.get("retmsg") == "success": return True
|
||||
raise Exception(res["retmsg"])
|
||||
|
||||
def delete(self) -> bool:
|
||||
res = self.rm('/dataset/delete',
|
||||
{"id": self.id})
|
||||
res = res.json()
|
||||
if res.get("retmsg") == "success": return True
|
||||
raise Exception(res["retmsg"])
|
||||
|
||||
Reference in New Issue
Block a user