mirror of
https://github.com/infiniflow/ragflow.git
synced 2026-01-27 05:36:33 +08:00
Update RAGFlow CLI (#12816)
### What problem does this PR solve? Improve performance slightly. ### Type of change - [x] Refactoring - [x] Performance Improvement Signed-off-by: Jin Hai <haijin.chn@gmail.com>
This commit is contained in:
@ -16,6 +16,7 @@
|
||||
|
||||
import time
|
||||
import json
|
||||
import typing
|
||||
from typing import Any, Dict, Optional
|
||||
|
||||
import requests
|
||||
@ -87,43 +88,60 @@ class HttpClient:
|
||||
url = self.build_url(path, use_api_base=use_api_base)
|
||||
merged_headers = self._headers(auth_kind, headers)
|
||||
# timeout: Tuple[float, float] = (self.connect_timeout, self.read_timeout)
|
||||
# session = requests.Session()
|
||||
session = requests.Session()
|
||||
# adapter = HTTPAdapter(pool_connections=100, pool_maxsize=100)
|
||||
# session.mount("http://", adapter)
|
||||
http_function = typing.Any
|
||||
match method:
|
||||
case "GET":
|
||||
http_function = session.get
|
||||
case "POST":
|
||||
http_function = session.post
|
||||
case "PUT":
|
||||
http_function = session.put
|
||||
case "DELETE":
|
||||
http_function = session.delete
|
||||
case "PATCH":
|
||||
http_function = session.patch
|
||||
case _:
|
||||
raise ValueError(f"Invalid HTTP method: {method}")
|
||||
|
||||
if iterations > 1:
|
||||
response_list = []
|
||||
total_duration = 0.0
|
||||
for _ in range(iterations):
|
||||
start_time = time.perf_counter()
|
||||
response = http_function(url, headers=merged_headers, json=json_body, data=data, stream=stream)
|
||||
# response = session.get(url, headers=merged_headers, json=json_body, data=data, stream=stream)
|
||||
response = requests.request(
|
||||
method=method,
|
||||
url=url,
|
||||
headers=merged_headers,
|
||||
json=json_body,
|
||||
data=data,
|
||||
files=files,
|
||||
params=params,
|
||||
stream=stream,
|
||||
verify=self.verify_ssl,
|
||||
)
|
||||
# response = requests.request(
|
||||
# method=method,
|
||||
# url=url,
|
||||
# headers=merged_headers,
|
||||
# json=json_body,
|
||||
# data=data,
|
||||
# files=files,
|
||||
# params=params,
|
||||
# stream=stream,
|
||||
# verify=self.verify_ssl,
|
||||
# )
|
||||
end_time = time.perf_counter()
|
||||
total_duration += end_time - start_time
|
||||
response_list.append(response)
|
||||
return {"duration": total_duration, "response_list": response_list}
|
||||
else:
|
||||
return http_function(url, headers=merged_headers, json=json_body, data=data, stream=stream)
|
||||
# return session.get(url, headers=merged_headers, json=json_body, data=data, stream=stream)
|
||||
return requests.request(
|
||||
method=method,
|
||||
url=url,
|
||||
headers=merged_headers,
|
||||
json=json_body,
|
||||
data=data,
|
||||
files=files,
|
||||
params=params,
|
||||
stream=stream,
|
||||
verify=self.verify_ssl,
|
||||
)
|
||||
# return requests.request(
|
||||
# method=method,
|
||||
# url=url,
|
||||
# headers=merged_headers,
|
||||
# json=json_body,
|
||||
# data=data,
|
||||
# files=files,
|
||||
# params=params,
|
||||
# stream=stream,
|
||||
# verify=self.verify_ssl,
|
||||
# )
|
||||
|
||||
def request_json(
|
||||
self,
|
||||
|
||||
Reference in New Issue
Block a user