pycoze 0.1.196__py3-none-any.whl → 0.1.198__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.
- pycoze/automation/browser/edge_driver_manager.py +1 -1
- pycoze/bot/bot.py +16 -6
- {pycoze-0.1.196.dist-info → pycoze-0.1.198.dist-info}/METADATA +1 -1
- {pycoze-0.1.196.dist-info → pycoze-0.1.198.dist-info}/RECORD +7 -7
- {pycoze-0.1.196.dist-info → pycoze-0.1.198.dist-info}/LICENSE +0 -0
- {pycoze-0.1.196.dist-info → pycoze-0.1.198.dist-info}/WHEEL +0 -0
- {pycoze-0.1.196.dist-info → pycoze-0.1.198.dist-info}/top_level.txt +0 -0
@@ -9,7 +9,7 @@ from selenium import webdriver
|
|
9
9
|
def is_network_available():
|
10
10
|
try:
|
11
11
|
# Attempt to access the download URL for Edge Chromium driver to check network connection
|
12
|
-
response = requests.get("https://msedgedriver.azureedge.net/", timeout=
|
12
|
+
response = requests.get("https://msedgedriver.azureedge.net/", timeout=3)
|
13
13
|
return response.status_code == 200
|
14
14
|
except requests.ConnectionError:
|
15
15
|
return False
|
pycoze/bot/bot.py
CHANGED
@@ -6,6 +6,7 @@ import threading
|
|
6
6
|
import queue
|
7
7
|
import time
|
8
8
|
import asyncio
|
9
|
+
import multiprocessing
|
9
10
|
|
10
11
|
|
11
12
|
class PeekableQueue(queue.Queue):
|
@@ -15,6 +16,14 @@ class PeekableQueue(queue.Queue):
|
|
15
16
|
except queue.Empty:
|
16
17
|
return None
|
17
18
|
|
19
|
+
|
20
|
+
def run_agent_chat(bot_setting_file, history, should_exit):
|
21
|
+
loop = asyncio.new_event_loop()
|
22
|
+
asyncio.set_event_loop(loop)
|
23
|
+
loop.run_until_complete(agent_chat(bot_setting_file, history, should_exit))
|
24
|
+
loop.close()
|
25
|
+
|
26
|
+
|
18
27
|
def chat(bot_setting_file: str):
|
19
28
|
history = []
|
20
29
|
input_queue = PeekableQueue()
|
@@ -42,13 +51,13 @@ def chat(bot_setting_file: str):
|
|
42
51
|
history.append(HumanMessage(message["content"]))
|
43
52
|
clear_chat_data()
|
44
53
|
|
45
|
-
#
|
46
|
-
should_exit =
|
47
|
-
|
48
|
-
|
54
|
+
# 创建进程退出标志
|
55
|
+
should_exit = multiprocessing.Event()
|
56
|
+
agent_chat_process = multiprocessing.Process(target=run_agent_chat, args=(bot_setting_file, history, should_exit)) # 需要是独立进程,不然无法创建新进程
|
57
|
+
agent_chat_process.start()
|
49
58
|
|
50
59
|
next_input_text = ""
|
51
|
-
while
|
60
|
+
while agent_chat_process.is_alive():
|
52
61
|
if not input_queue.empty():
|
53
62
|
next_input_text = input_queue.peek()
|
54
63
|
if next_input_text == INTERRUPT_MESSAGE:
|
@@ -56,6 +65,7 @@ def chat(bot_setting_file: str):
|
|
56
65
|
should_exit.set() # 设置退出标志
|
57
66
|
break
|
58
67
|
time.sleep(0.1) # 每隔 0.1 秒检查一次
|
68
|
+
time.sleep(0.1) # 每隔 0.1 秒检查一次
|
59
69
|
if next_input_text != INTERRUPT_MESSAGE:
|
60
70
|
history.append(AIMessage(content=CHAT_DATA["output"]))
|
61
71
|
except json.JSONDecodeError:
|
@@ -72,6 +82,6 @@ def chat(bot_setting_file: str):
|
|
72
82
|
def get_chat_response(bot_setting_file: str, input_text: str):
|
73
83
|
history = [HumanMessage(input_text)]
|
74
84
|
clear_chat_data()
|
75
|
-
should_exit =
|
85
|
+
should_exit = multiprocessing.Event()
|
76
86
|
asyncio.run(agent_chat(bot_setting_file, history, should_exit))
|
77
87
|
return CHAT_DATA["output"]
|
@@ -3,10 +3,10 @@ pycoze/ai/__init__.py,sha256=odM2lgYSnApxw4AzLV_5AyaxL5_MLfydOSB1VmLGFyA,75
|
|
3
3
|
pycoze/ai/vram_reserve.py,sha256=brgXP42yj3yaZRgW8pfgc4Jg9EivAhcbp5W4igVHcow,4256
|
4
4
|
pycoze/automation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
5
5
|
pycoze/automation/browser/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
6
|
-
pycoze/automation/browser/edge_driver_manager.py,sha256=
|
6
|
+
pycoze/automation/browser/edge_driver_manager.py,sha256=gpgseunph5owZH6EskSYthuhey2SU3UP204gY0yIcuI,3022
|
7
7
|
pycoze/bot/__init__.py,sha256=6HHMxDQVOyZM9dtSjQm9tjGnhj4h7CixD0JOvEwTi48,41
|
8
8
|
pycoze/bot/agent_chat.py,sha256=hr0jGTd-lvLSe4vCcvaN2rKhB7BMBcVBtI1FpVa6ngs,3016
|
9
|
-
pycoze/bot/bot.py,sha256=
|
9
|
+
pycoze/bot/bot.py,sha256=vRFLa3ABIqWHaWeuUhsTWzdas0SGpCRoe95D9C9IJ8c,3435
|
10
10
|
pycoze/bot/agent/__init__.py,sha256=3wE8_FFQS8j2BY-g9Cr-onV0POEvDRZaw_NCzpqrNus,265
|
11
11
|
pycoze/bot/agent/agent.py,sha256=7dyAsHSVnBmFUK9GR_BumkjSgrvQA0KLj0e3aDN_JU4,3592
|
12
12
|
pycoze/bot/agent/assistant.py,sha256=3iLxnRvf_ia0cP-FHK5Fv4ylltlnzPq1KscRCFYqjkc,1147
|
@@ -28,8 +28,8 @@ pycoze/utils/__init__.py,sha256=Gi5EnrWZGMD2JRejgV4c_VLCXyvA2wwBFI_niDF5MUE,110
|
|
28
28
|
pycoze/utils/arg.py,sha256=GtfGbMTMdaK75Fwh6MpUe1pCA5X6Ep4LFG7a72YrzjI,525
|
29
29
|
pycoze/utils/env.py,sha256=W04lhvTHhAAC6EldP6kk2xrctqtu8K6kl1vDLZDNeh8,561
|
30
30
|
pycoze/utils/text_or_file.py,sha256=gpxZVWt2DW6YiEg_MnMuwg36VNf3TX383QD_1oZNB0Y,551
|
31
|
-
pycoze-0.1.
|
32
|
-
pycoze-0.1.
|
33
|
-
pycoze-0.1.
|
34
|
-
pycoze-0.1.
|
35
|
-
pycoze-0.1.
|
31
|
+
pycoze-0.1.198.dist-info/LICENSE,sha256=QStd_Qsd0-kAam_-sOesCIp_uKrGWeoKwt9M49NVkNU,1090
|
32
|
+
pycoze-0.1.198.dist-info/METADATA,sha256=SKG3vhboHl-tWEMD9GAE57F47Lw-_NcjvVMCdVard0s,726
|
33
|
+
pycoze-0.1.198.dist-info/WHEEL,sha256=bFJAMchF8aTQGUgMZzHJyDDMPTO3ToJ7x23SLJa1SVo,92
|
34
|
+
pycoze-0.1.198.dist-info/top_level.txt,sha256=76dPeDhKvOCleL3ZC5gl1-y4vdS1tT_U1hxWVAn7sFo,7
|
35
|
+
pycoze-0.1.198.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|