liuhua liuhua commited on
Commit
f4df7fc
·
1 Parent(s): aa075d6

Fix bugs in API (#3204)

Browse files

### What problem does this PR solve?

Fix bugs in API

### Type of change

- [x] Bug Fix (non-breaking change which fixes an issue)

---------

Co-authored-by: liuhua <[email protected]>

api/apps/sdk/chat.py CHANGED
@@ -264,7 +264,7 @@ def list_chat(tenant_id):
264
  if not chat:
265
  return get_error_data_result(message="The chat doesn't exist")
266
  page_number = int(request.args.get("page", 1))
267
- items_per_page = int(request.args.get("page_size", 1024))
268
  orderby = request.args.get("orderby", "create_time")
269
  if request.args.get("desc") == "False" or request.args.get("desc") == "false":
270
  desc = False
@@ -308,4 +308,4 @@ def list_chat(tenant_id):
308
  res["datasets"] = kb_list
309
  res["avatar"] = res.pop("icon")
310
  list_assts.append(res)
311
- return get_result(data=list_assts)
 
264
  if not chat:
265
  return get_error_data_result(message="The chat doesn't exist")
266
  page_number = int(request.args.get("page", 1))
267
+ items_per_page = int(request.args.get("page_size", 30))
268
  orderby = request.args.get("orderby", "create_time")
269
  if request.args.get("desc") == "False" or request.args.get("desc") == "false":
270
  desc = False
 
308
  res["datasets"] = kb_list
309
  res["avatar"] = res.pop("icon")
310
  list_assts.append(res)
311
+ return get_result(data=list_assts)
api/apps/sdk/dataset.py CHANGED
@@ -502,7 +502,7 @@ def list(tenant_id):
502
  if not kbs:
503
  return get_error_data_result(message="The dataset doesn't exist")
504
  page_number = int(request.args.get("page", 1))
505
- items_per_page = int(request.args.get("page_size", 1024))
506
  orderby = request.args.get("orderby", "create_time")
507
  if request.args.get("desc") == "False" or request.args.get("desc") == "false":
508
  desc = False
@@ -532,4 +532,4 @@ def list(tenant_id):
532
  new_key = key_mapping.get(key, key)
533
  renamed_data[new_key] = value
534
  renamed_list.append(renamed_data)
535
- return get_result(data=renamed_list)
 
502
  if not kbs:
503
  return get_error_data_result(message="The dataset doesn't exist")
504
  page_number = int(request.args.get("page", 1))
505
+ items_per_page = int(request.args.get("page_size", 30))
506
  orderby = request.args.get("orderby", "create_time")
507
  if request.args.get("desc") == "False" or request.args.get("desc") == "false":
508
  desc = False
 
532
  new_key = key_mapping.get(key, key)
533
  renamed_data[new_key] = value
534
  renamed_list.append(renamed_data)
535
+ return get_result(data=renamed_list)
api/apps/sdk/doc.py CHANGED
@@ -386,16 +386,16 @@ def list_docs(dataset_id, tenant_id):
386
  required: false
387
  description: Filter by document ID.
388
  - in: query
389
- name: offset
390
  type: integer
391
  required: false
392
  default: 1
393
  description: Page number.
394
  - in: query
395
- name: limit
396
  type: integer
397
  required: false
398
- default: 1024
399
  description: Number of items per page.
400
  - in: query
401
  name: orderby
@@ -460,7 +460,7 @@ def list_docs(dataset_id, tenant_id):
460
  return get_error_data_result(message=f"You don't own the document {name}.")
461
  page = int(request.args.get("page", 1))
462
  keywords = request.args.get("keywords", "")
463
- page_size = int(request.args.get("page_size", 1024))
464
  orderby = request.args.get("orderby", "create_time")
465
  if request.args.get("desc") == "False":
466
  desc = False
@@ -741,13 +741,13 @@ def list_chunks(tenant_id, dataset_id, document_id):
741
  required: true
742
  description: ID of the document.
743
  - in: query
744
- name: offset
745
  type: integer
746
  required: false
747
  default: 1
748
  description: Page number.
749
  - in: query
750
- name: limit
751
  type: integer
752
  required: false
753
  default: 30
@@ -1323,7 +1323,7 @@ def retrieval_test(tenant_id):
1323
  if "question" not in req:
1324
  return get_error_data_result("`question` is required.")
1325
  page = int(req.get("page", 1))
1326
- size = int(req.get("page_size", 1024))
1327
  question = req["question"]
1328
  doc_ids = req.get("document_ids", [])
1329
  if not isinstance(doc_ids, list):
@@ -1401,4 +1401,4 @@ def retrieval_test(tenant_id):
1401
  message="No chunk found! Check the chunk status please!",
1402
  code=RetCode.DATA_ERROR,
1403
  )
1404
- return server_error_response(e)
 
386
  required: false
387
  description: Filter by document ID.
388
  - in: query
389
+ name: page
390
  type: integer
391
  required: false
392
  default: 1
393
  description: Page number.
394
  - in: query
395
+ name: page_size
396
  type: integer
397
  required: false
398
+ default: 30
399
  description: Number of items per page.
400
  - in: query
401
  name: orderby
 
460
  return get_error_data_result(message=f"You don't own the document {name}.")
461
  page = int(request.args.get("page", 1))
462
  keywords = request.args.get("keywords", "")
463
+ page_size = int(request.args.get("page_size", 30))
464
  orderby = request.args.get("orderby", "create_time")
465
  if request.args.get("desc") == "False":
466
  desc = False
 
741
  required: true
742
  description: ID of the document.
743
  - in: query
744
+ name: page
745
  type: integer
746
  required: false
747
  default: 1
748
  description: Page number.
749
  - in: query
750
+ name: page_size
751
  type: integer
752
  required: false
753
  default: 30
 
1323
  if "question" not in req:
1324
  return get_error_data_result("`question` is required.")
1325
  page = int(req.get("page", 1))
1326
+ size = int(req.get("page_size", 30))
1327
  question = req["question"]
1328
  doc_ids = req.get("document_ids", [])
1329
  if not isinstance(doc_ids, list):
 
1401
  message="No chunk found! Check the chunk status please!",
1402
  code=RetCode.DATA_ERROR,
1403
  )
1404
+ return server_error_response(e)
api/apps/sdk/session.py CHANGED
@@ -322,7 +322,7 @@ def list(chat_id,tenant_id):
322
  id = request.args.get("id")
323
  name = request.args.get("name")
324
  page_number = int(request.args.get("page", 1))
325
- items_per_page = int(request.args.get("page_size", 1024))
326
  orderby = request.args.get("orderby", "create_time")
327
  if request.args.get("desc") == "False" or request.args.get("desc") == "false":
328
  desc = False
@@ -391,4 +391,4 @@ def delete(tenant_id,chat_id):
391
  if not conv:
392
  return get_error_data_result(message="The chat doesn't own the session")
393
  ConversationService.delete_by_id(id)
394
- return get_result()
 
322
  id = request.args.get("id")
323
  name = request.args.get("name")
324
  page_number = int(request.args.get("page", 1))
325
+ items_per_page = int(request.args.get("page_size", 30))
326
  orderby = request.args.get("orderby", "create_time")
327
  if request.args.get("desc") == "False" or request.args.get("desc") == "false":
328
  desc = False
 
391
  if not conv:
392
  return get_error_data_result(message="The chat doesn't own the session")
393
  ConversationService.delete_by_id(id)
394
+ return get_result()
sdk/python/ragflow_sdk/modules/chat.py CHANGED
@@ -57,7 +57,7 @@ class Chat(Base):
57
  return Session(self.rag, res['data'])
58
  raise Exception(res["message"])
59
 
60
- def list_sessions(self,page: int = 1, page_size: int = 1024, orderby: str = "create_time", desc: bool = True,
61
  id: str = None, name: str = None) -> List[Session]:
62
  res = self.get(f'/chats/{self.id}/sessions',{"page": page, "page_size": page_size, "orderby": orderby, "desc": desc, "id": id, "name": name} )
63
  res = res.json()
 
57
  return Session(self.rag, res['data'])
58
  raise Exception(res["message"])
59
 
60
+ def list_sessions(self,page: int = 1, page_size: int = 30, orderby: str = "create_time", desc: bool = True,
61
  id: str = None, name: str = None) -> List[Session]:
62
  res = self.get(f'/chats/{self.id}/sessions',{"page": page, "page_size": page_size, "orderby": orderby, "desc": desc, "id": id, "name": name} )
63
  res = res.json()
sdk/python/ragflow_sdk/modules/dataset.py CHANGED
@@ -48,7 +48,7 @@ class DataSet(Base):
48
  return doc_list
49
  raise Exception(res.get("message"))
50
 
51
- def list_documents(self, id: str = None, keywords: str = None, page: int =1, page_size: int = 1024, orderby: str = "create_time", desc: bool = True):
52
  res = self.get(f"/datasets/{self.id}/documents",params={"id": id,"keywords": keywords,"page": page,"page_size": page_size,"orderby": orderby,"desc": desc})
53
  res = res.json()
54
  documents = []
 
48
  return doc_list
49
  raise Exception(res.get("message"))
50
 
51
+ def list_documents(self, id: str = None, keywords: str = None, page: int =1, page_size: int = 30, orderby: str = "create_time", desc: bool = True):
52
  res = self.get(f"/datasets/{self.id}/documents",params={"id": id,"keywords": keywords,"page": page,"page_size": page_size,"orderby": orderby,"desc": desc})
53
  res = res.json()
54
  documents = []
sdk/python/ragflow_sdk/ragflow.py CHANGED
@@ -76,7 +76,7 @@ class RAGFlow:
76
  return _list[0]
77
  raise Exception("Dataset %s not found" % name)
78
 
79
- def list_datasets(self, page: int = 1, page_size: int = 1024, orderby: str = "create_time", desc: bool = True,
80
  id: str = None, name: str = None) -> \
81
  List[DataSet]:
82
  res = self.get("/datasets",
@@ -142,7 +142,7 @@ class RAGFlow:
142
  if res.get("code") != 0:
143
  raise Exception(res["message"])
144
 
145
- def list_chats(self, page: int = 1, page_size: int = 1024, orderby: str = "create_time", desc: bool = True,
146
  id: str = None, name: str = None) -> List[Chat]:
147
  res = self.get("/chats",{"page": page, "page_size": page_size, "orderby": orderby, "desc": desc, "id": id, "name": name})
148
  res = res.json()
@@ -154,12 +154,12 @@ class RAGFlow:
154
  raise Exception(res["message"])
155
 
156
 
157
- def retrieve(self, dataset_ids, document_ids=None, question="", page=1, page_size=1024, similarity_threshold=0.2, vector_similarity_weight=0.3, top_k=1024, rerank_id:str=None, keyword:bool=False, ):
158
  if document_ids is None:
159
  document_ids = []
160
  data_json ={
161
- "offset": page,
162
- "limit": page_size,
163
  "similarity_threshold": similarity_threshold,
164
  "vector_similarity_weight": vector_similarity_weight,
165
  "top_k": top_k,
 
76
  return _list[0]
77
  raise Exception("Dataset %s not found" % name)
78
 
79
+ def list_datasets(self, page: int = 1, page_size: int = 30, orderby: str = "create_time", desc: bool = True,
80
  id: str = None, name: str = None) -> \
81
  List[DataSet]:
82
  res = self.get("/datasets",
 
142
  if res.get("code") != 0:
143
  raise Exception(res["message"])
144
 
145
+ def list_chats(self, page: int = 1, page_size: int = 30, orderby: str = "create_time", desc: bool = True,
146
  id: str = None, name: str = None) -> List[Chat]:
147
  res = self.get("/chats",{"page": page, "page_size": page_size, "orderby": orderby, "desc": desc, "id": id, "name": name})
148
  res = res.json()
 
154
  raise Exception(res["message"])
155
 
156
 
157
+ def retrieve(self, dataset_ids, document_ids=None, question="", page=1, page_size=30, similarity_threshold=0.2, vector_similarity_weight=0.3, top_k=1024, rerank_id:str=None, keyword:bool=False, ):
158
  if document_ids is None:
159
  document_ids = []
160
  data_json ={
161
+ "page": page,
162
+ "page_size": page_size,
163
  "similarity_threshold": similarity_threshold,
164
  "vector_similarity_weight": vector_similarity_weight,
165
  "top_k": top_k,
sdk/python/test/t_document.py CHANGED
@@ -45,7 +45,7 @@ def test_list_documents_in_dataset_with_success(get_api_key_fixture):
45
  blob = b"Sample document content for test."
46
  document_infos = [{"displayed_name": "test.txt","blob":blob}]
47
  ds.upload_documents(document_infos)
48
- ds.list_documents(keywords="test", page=0, page_size=12)
49
 
50
 
51
 
 
45
  blob = b"Sample document content for test."
46
  document_infos = [{"displayed_name": "test.txt","blob":blob}]
47
  ds.upload_documents(document_infos)
48
+ ds.list_documents(keywords="test", page=1, page_size=12)
49
 
50
 
51