pycoze 0.1.152__tar.gz → 0.1.154__tar.gz
Sign up to get free protection for your applications and to get access to all the features.
- {pycoze-0.1.152 → pycoze-0.1.154}/PKG-INFO +1 -1
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/bot/agent_chat.py +3 -2
- pycoze-0.1.154/pycoze/bot/bot.py +30 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze.egg-info/PKG-INFO +1 -1
- {pycoze-0.1.152 → pycoze-0.1.154}/setup.py +1 -1
- pycoze-0.1.152/pycoze/bot/bot.py +0 -40
- {pycoze-0.1.152 → pycoze-0.1.154}/LICENSE +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/README.md +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/__init__.py +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/ai/__init__.py +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/ai/vram_reserve.py +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/bot/__init__.py +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/bot/agent/__init__.py +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/bot/agent/agent.py +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/bot/agent/agent_types/__init__.py +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/bot/agent/agent_types/const.py +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/bot/agent/agent_types/openai_func_call_agent.py +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/bot/agent/assistant.py +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/bot/agent/chat.py +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/reference/__init__.py +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/reference/bot.py +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/reference/lib.py +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/reference/tool.py +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/ui/__init__.py +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/ui/base.py +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/ui/color.py +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/ui/typ.py +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/ui/ui_def.py +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/utils/__init__.py +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/utils/arg.py +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze/utils/text_or_file.py +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze.egg-info/SOURCES.txt +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze.egg-info/dependency_links.txt +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/pycoze.egg-info/top_level.txt +0 -0
- {pycoze-0.1.152 → pycoze-0.1.154}/setup.cfg +0 -0
@@ -32,7 +32,7 @@ def load_abilities(bot_setting_file: str):
|
|
32
32
|
return abilities
|
33
33
|
|
34
34
|
|
35
|
-
def agent_chat(bot_setting_file, history):
|
35
|
+
def agent_chat(bot_setting_file, history, result_queue):
|
36
36
|
role_setting = load_role_setting(bot_setting_file)
|
37
37
|
abilities = load_abilities(bot_setting_file)
|
38
38
|
|
@@ -75,4 +75,5 @@ def agent_chat(bot_setting_file, history):
|
|
75
75
|
assistant_message=prompt,
|
76
76
|
tool_compatibility_mode=cfg["toolCompatibilityMode"],
|
77
77
|
)
|
78
|
-
|
78
|
+
result = asyncio.run(run_agent(agent, history, cfg["toolCompatibilityMode"]))
|
79
|
+
result_queue.put(result_queue)
|
@@ -0,0 +1,30 @@
|
|
1
|
+
from langchain_core.messages import HumanMessage
|
2
|
+
from .agent import INPUT_MESSAGE, output
|
3
|
+
from .agent_chat import agent_chat
|
4
|
+
import json
|
5
|
+
import queue
|
6
|
+
import threading
|
7
|
+
|
8
|
+
|
9
|
+
def chat(bot_setting_file: str):
|
10
|
+
history = []
|
11
|
+
while True:
|
12
|
+
input_text = input()
|
13
|
+
if not input_text.startswith(INPUT_MESSAGE):
|
14
|
+
raise ValueError("Invalid message")
|
15
|
+
message = json.loads(input_text[len(INPUT_MESSAGE) :])
|
16
|
+
history.append(HumanMessage(message["content"]))
|
17
|
+
result_queue = queue.Queue()
|
18
|
+
agent_chat_thread = threading.Thread(target=agent_chat, args=(bot_setting_file, history, result_queue))
|
19
|
+
agent_chat_thread.start()
|
20
|
+
agent_chat_thread.join()
|
21
|
+
result = result_queue.get()
|
22
|
+
history.append(output("assistant", result))
|
23
|
+
|
24
|
+
|
25
|
+
|
26
|
+
def get_chat_response(bot_setting_file: str, input_text: str):
|
27
|
+
history = [HumanMessage(input_text)]
|
28
|
+
result_queue = queue.Queue()
|
29
|
+
result = agent_chat(bot_setting_file, history, result_queue)
|
30
|
+
return result
|
pycoze-0.1.152/pycoze/bot/bot.py
DELETED
@@ -1,40 +0,0 @@
|
|
1
|
-
from langchain_core.messages import HumanMessage
|
2
|
-
from .agent import INPUT_MESSAGE, output
|
3
|
-
from .agent_chat import agent_chat
|
4
|
-
import json
|
5
|
-
import threading
|
6
|
-
|
7
|
-
|
8
|
-
def chat(bot_setting_file: str):
|
9
|
-
history = []
|
10
|
-
stop_event = threading.Event()
|
11
|
-
|
12
|
-
def user_input_listener():
|
13
|
-
while not stop_event.is_set():
|
14
|
-
input_text = input()
|
15
|
-
if input_text:
|
16
|
-
stop_event.set()
|
17
|
-
if not input_text.startswith(INPUT_MESSAGE):
|
18
|
-
raise ValueError("Invalid message")
|
19
|
-
message = json.loads(input_text[len(INPUT_MESSAGE):])
|
20
|
-
history.append(HumanMessage(message["content"]))
|
21
|
-
# 中断当前的机器人输出
|
22
|
-
print("User interrupted the bot.")
|
23
|
-
# 重新开始对话
|
24
|
-
chat(bot_setting_file)
|
25
|
-
|
26
|
-
input_thread = threading.Thread(target=user_input_listener)
|
27
|
-
input_thread.start()
|
28
|
-
|
29
|
-
while not stop_event.is_set():
|
30
|
-
result = agent_chat(bot_setting_file, history)
|
31
|
-
history.append(output("assistant", result))
|
32
|
-
print(result) # 输出机器人回复
|
33
|
-
|
34
|
-
input_thread.join()
|
35
|
-
|
36
|
-
|
37
|
-
def get_chat_response(bot_setting_file: str, input_text: str):
|
38
|
-
history = [HumanMessage(input_text)]
|
39
|
-
result = agent_chat(bot_setting_file, history)
|
40
|
-
return result
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|