aient 1.0.59__py3-none-any.whl → 1.0.61__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- aient/core/response.py +2 -3
- aient/models/base.py +1 -0
- aient/models/chatgpt.py +5 -11
- aient/plugins/config.py +2 -1
- {aient-1.0.59.dist-info → aient-1.0.61.dist-info}/METADATA +1 -1
- {aient-1.0.59.dist-info → aient-1.0.61.dist-info}/RECORD +9 -9
- {aient-1.0.59.dist-info → aient-1.0.61.dist-info}/WHEEL +0 -0
- {aient-1.0.59.dist-info → aient-1.0.61.dist-info}/licenses/LICENSE +0 -0
- {aient-1.0.59.dist-info → aient-1.0.61.dist-info}/top_level.txt +0 -0
aient/core/response.py
CHANGED
@@ -191,7 +191,7 @@ async def fetch_gpt_response_stream(client, url, headers, payload):
|
|
191
191
|
while "\n" in buffer:
|
192
192
|
line, buffer = buffer.split("\n", 1)
|
193
193
|
# logger.info("line: %s", repr(line))
|
194
|
-
if line and
|
194
|
+
if line and not line.startswith(": ") and (result:=line.lstrip("data: ").strip()):
|
195
195
|
if result.strip() == "[DONE]":
|
196
196
|
break
|
197
197
|
line = json.loads(result)
|
@@ -298,8 +298,7 @@ async def fetch_azure_response_stream(client, url, headers, payload):
|
|
298
298
|
while "\n" in buffer:
|
299
299
|
line, buffer = buffer.split("\n", 1)
|
300
300
|
# logger.info("line: %s", repr(line))
|
301
|
-
if line and line
|
302
|
-
result = line.lstrip("data: ")
|
301
|
+
if line and not line.startswith(": ") and (result:=line.lstrip("data: ").strip()):
|
303
302
|
if result.strip() == "[DONE]":
|
304
303
|
break
|
305
304
|
line = json.loads(result)
|
aient/models/base.py
CHANGED
aient/models/chatgpt.py
CHANGED
@@ -207,6 +207,7 @@ class chatgpt(BaseLLM):
|
|
207
207
|
history_len = history_len - 1
|
208
208
|
|
209
209
|
if total_tokens:
|
210
|
+
self.current_tokens[convo_id] = total_tokens
|
210
211
|
self.tokens_usage[convo_id] += total_tokens
|
211
212
|
|
212
213
|
def truncate_conversation(self, convo_id: str = "default") -> None:
|
@@ -215,25 +216,17 @@ class chatgpt(BaseLLM):
|
|
215
216
|
"""
|
216
217
|
while True:
|
217
218
|
if (
|
218
|
-
self.
|
219
|
+
self.current_tokens[convo_id] > self.truncate_limit
|
219
220
|
and len(self.conversation[convo_id]) > 1
|
220
221
|
):
|
221
222
|
# Don't remove the first message
|
222
223
|
mess = self.conversation[convo_id].pop(1)
|
224
|
+
string_mess = json.dumps(mess, ensure_ascii=False)
|
225
|
+
self.current_tokens[convo_id] -= len(string_mess) / 4
|
223
226
|
print("Truncate message:", mess)
|
224
227
|
else:
|
225
228
|
break
|
226
229
|
|
227
|
-
def extract_values(self, obj):
|
228
|
-
if isinstance(obj, dict):
|
229
|
-
for value in obj.values():
|
230
|
-
yield from self.extract_values(value)
|
231
|
-
elif isinstance(obj, list):
|
232
|
-
for item in obj:
|
233
|
-
yield from self.extract_values(item)
|
234
|
-
else:
|
235
|
-
yield obj
|
236
|
-
|
237
230
|
async def get_post_body(
|
238
231
|
self,
|
239
232
|
prompt: str,
|
@@ -789,6 +782,7 @@ class chatgpt(BaseLLM):
|
|
789
782
|
{"role": "system", "content": self.system_prompt},
|
790
783
|
]
|
791
784
|
self.tokens_usage[convo_id] = 0
|
785
|
+
self.current_tokens[convo_id] = 0
|
792
786
|
|
793
787
|
def save(self, file: str, *keys: str) -> None:
|
794
788
|
"""
|
aient/plugins/config.py
CHANGED
@@ -8,6 +8,7 @@ from ..utils.prompt import search_key_word_prompt, arxiv_doc_user_prompt
|
|
8
8
|
|
9
9
|
async def get_tools_result_async(function_call_name, function_full_response, function_call_max_tokens, engine, robot, api_key, api_url, use_plugins, model, add_message, convo_id, language):
|
10
10
|
function_response = ""
|
11
|
+
function_to_call = None
|
11
12
|
if function_call_name in registry.tools:
|
12
13
|
function_to_call = registry.tools[function_call_name]
|
13
14
|
if function_call_name == "get_search_results":
|
@@ -41,7 +42,7 @@ async def get_tools_result_async(function_call_name, function_full_response, fun
|
|
41
42
|
function_response = "无法找到相关信息,停止使用 tools"
|
42
43
|
# user_prompt = f"You need to response the following question: {prompt}. Search results is provided inside <Search_results></Search_results> XML tags. Your task is to think about the question step by step and then answer the above question in {config.language} based on the Search results provided. Please response in {config.language} and adopt a style that is logical, in-depth, and detailed. Note: In order to make the answer appear highly professional, you should be an expert in textual analysis, aiming to make the answer precise and comprehensive. Directly response markdown format, without using markdown code blocks"
|
43
44
|
# self.add_to_conversation(user_prompt, "user", convo_id=convo_id)
|
44
|
-
|
45
|
+
elif function_to_call:
|
45
46
|
prompt = json.loads(function_full_response)
|
46
47
|
if inspect.iscoroutinefunction(function_to_call):
|
47
48
|
function_response = await function_to_call(**prompt)
|
@@ -4,15 +4,15 @@ aient/core/__init__.py,sha256=NxjebTlku35S4Dzr16rdSqSTWUvvwEeACe8KvHJnjPg,34
|
|
4
4
|
aient/core/log_config.py,sha256=kz2_yJv1p-o3lUQOwA3qh-LSc3wMHv13iCQclw44W9c,274
|
5
5
|
aient/core/models.py,sha256=_1wYZg_n9kb2A3C8xCboyqleH2iHc9scwOvtx9DPeok,7582
|
6
6
|
aient/core/request.py,sha256=oavFyF5P0BL-85cse_lhyfP3UErFzeSdj6kTaSWzQrg,49690
|
7
|
-
aient/core/response.py,sha256=
|
7
|
+
aient/core/response.py,sha256=6Fq-EIL7ua1zeT6GMc1fgQeRs_MCP6UST_pL0tM3f3I,27879
|
8
8
|
aient/core/utils.py,sha256=DFpFU8Y-8lzgQlhaDUnao8HmviGoh3-oN8jZR3Dha7E,26150
|
9
9
|
aient/core/test/test_base_api.py,sha256=CjfFzMG26r8C4xCPoVkKb3Ac6pp9gy5NUCbZJHoSSsM,393
|
10
10
|
aient/core/test/test_image.py,sha256=_T4peNGdXKBHHxyQNx12u-NTyFE8TlYI6NvvagsG2LE,319
|
11
11
|
aient/core/test/test_payload.py,sha256=8jBiJY1uidm1jzL-EiK0s6UGmW9XkdsuuKFGrwFhFkw,2755
|
12
12
|
aient/models/__init__.py,sha256=ouNDNvoBBpIFrLsk09Q_sq23HR0GbLAKfGLIFmfEuXE,219
|
13
13
|
aient/models/audio.py,sha256=kRd-8-WXzv4vwvsTGwnstK-WR8--vr9CdfCZzu8y9LA,1934
|
14
|
-
aient/models/base.py,sha256=
|
15
|
-
aient/models/chatgpt.py,sha256=
|
14
|
+
aient/models/base.py,sha256=vRCDEwabEm0u0RU4J62T2t271xg7YGCPjE3s9HzhtV8,6860
|
15
|
+
aient/models/chatgpt.py,sha256=gOLBHWimbg2mbt9EjDXr5Za60Jt0ICqe-Hah95taupc,42217
|
16
16
|
aient/models/claude.py,sha256=thK9P8qkaaoUN3OOJ9Shw4KDs-pAGKPoX4FOPGFXva8,28597
|
17
17
|
aient/models/duckduckgo.py,sha256=1l7vYCs9SG5SWPCbcl7q6pCcB5AUF_r-a4l9frz3Ogo,8115
|
18
18
|
aient/models/gemini.py,sha256=chGLc-8G_DAOxr10HPoOhvVFW1RvMgHd6mt--VyAW98,14730
|
@@ -20,7 +20,7 @@ aient/models/groq.py,sha256=2JCB0QE1htOprJHI5fZ11R2RtOhsHlsTjbmFyzc8oSM,10084
|
|
20
20
|
aient/models/vertex.py,sha256=qVD5l1Q538xXUPulxG4nmDjXE1VoV4yuAkTCpIeJVw0,16795
|
21
21
|
aient/plugins/__init__.py,sha256=KrCM6kFD1NB96hfhwUZIG8vJcdZVnfpACMew5YOWxSo,956
|
22
22
|
aient/plugins/arXiv.py,sha256=yHjb6PS3GUWazpOYRMKMzghKJlxnZ5TX8z9F6UtUVow,1461
|
23
|
-
aient/plugins/config.py,sha256=
|
23
|
+
aient/plugins/config.py,sha256=PVb50KF5lDuf2rFucWygPnQvkRoYBf5h3RaK0f06CsU,7573
|
24
24
|
aient/plugins/excute_command.py,sha256=3jh0o3K33GfcHvNywCTvhU5axN5CDi20ZPer4SwWZmI,943
|
25
25
|
aient/plugins/get_time.py,sha256=Ih5XIW5SDAIhrZ9W4Qe5Hs1k4ieKPUc_LAd6ySNyqZk,654
|
26
26
|
aient/plugins/image.py,sha256=ZElCIaZznE06TN9xW3DrSukS7U3A5_cjk1Jge4NzPxw,2072
|
@@ -35,8 +35,8 @@ aient/prompt/agent.py,sha256=h39WOoafv0_lh2coBCiG9k-VWa3Yi9HRZV0hnvsc4gs,23598
|
|
35
35
|
aient/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
36
36
|
aient/utils/prompt.py,sha256=UcSzKkFE4-h_1b6NofI6xgk3GoleqALRKY8VBaXLjmI,11311
|
37
37
|
aient/utils/scripts.py,sha256=n0jR5eXCBIK12W4bIx-xU1FVl1hZ4zDC7hq_BWQHYJU,27537
|
38
|
-
aient-1.0.
|
39
|
-
aient-1.0.
|
40
|
-
aient-1.0.
|
41
|
-
aient-1.0.
|
42
|
-
aient-1.0.
|
38
|
+
aient-1.0.61.dist-info/licenses/LICENSE,sha256=XNdbcWldt0yaNXXWB_Bakoqnxb3OVhUft4MgMA_71ds,1051
|
39
|
+
aient-1.0.61.dist-info/METADATA,sha256=5L-K2f2wjrHeRsEp6t4MItbtvHUk2pwdZhoDosqVM3w,4973
|
40
|
+
aient-1.0.61.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
|
41
|
+
aient-1.0.61.dist-info/top_level.txt,sha256=3oXzrP5sAVvyyqabpeq8A2_vfMtY554r4bVE-OHBrZk,6
|
42
|
+
aient-1.0.61.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|