pycoze 0.1.362__py3-none-any.whl → 0.1.364__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/bot/chat.py CHANGED
@@ -7,6 +7,7 @@ import asyncio
7
7
  from pycoze import utils
8
8
  import tempfile
9
9
  import re
10
+ import datetime
10
11
 
11
12
  def eclipse_tool_result(text):
12
13
  # 使用正则表达式匹配 [Tool Result Begin] 和 [Tool Result End] 之间的内容
@@ -71,10 +72,15 @@ async def run_with_interrupt_check(
71
72
 
72
73
 
73
74
  def chat(bot_setting_file: str):
75
+ current_time_str = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
76
+ chat_history_folder = os.path.join(os.path.dirname(bot_setting_file), "chat_history")
77
+ os.makedirs(chat_history_folder, exist_ok=True)
78
+ chat_history_file = os.path.join(chat_history_folder, current_time_str + ".txt")
79
+
74
80
  with open(bot_setting_file, encoding="utf-8") as f:
75
81
  bot_setting = json.load(f)
76
82
  abilities = get_abilities(bot_setting)
77
- remember_tool_results = bot_setting["remember_tool_results"]
83
+ continuouslyRememberToolResults = bot_setting["continuouslyRememberToolResults"]
78
84
 
79
85
  cwd = tempfile.mkdtemp()
80
86
  system_prompt, has_any_tool = get_system_prompt(abilities, bot_setting)
@@ -116,8 +122,14 @@ def chat(bot_setting_file: str):
116
122
  )
117
123
  )
118
124
  output("assistant", CHAT_DATA["info"])
119
- if not remember_tool_results:
120
- conversation_history = [eclipse_tool_result(msg) for msg in conversation_history]
125
+ if not continuouslyRememberToolResults:
126
+ conversation_history = [{"role": msg["role"], "content": eclipse_tool_result(msg["content"])} for msg in conversation_history]
127
+ try:
128
+ with open(chat_history_file, "a", encoding="utf-8") as f:
129
+ f.write(json.dumps(conversation_history, ensure_ascii=False) + "\n")
130
+ except Exception as e:
131
+ print(f"Error writing chat history to file: {e}")
132
+
121
133
 
122
134
 
123
135
  def get_chat_response(bot_setting_file: str, user_input: str):
pycoze/bot/chat_base.py CHANGED
@@ -159,7 +159,7 @@ async def handle_user_inputs(
159
159
  ):
160
160
  no_exit_if_incomplete = bot_setting["systemAbility"]["no_exit_if_incomplete"]
161
161
  programmer_mode = bot_setting["systemAbility"]["programmer_mode"]
162
- show_tool_results = bot_setting["show_tool_results"]
162
+ showToolResult = bot_setting["showToolResult"]
163
163
 
164
164
  start_new_stream = {
165
165
  "value": False
@@ -239,7 +239,7 @@ async def handle_user_inputs(
239
239
  + "\n[Tool Result End]\n"
240
240
  )
241
241
  lang = "json" if is_json_dumps else "text"
242
- if show_tool_results:
242
+ if showToolResult:
243
243
  info("assistant", f"\n```{lang}\n" + result + "\n```\n\n")
244
244
  conversation_history.append(
245
245
  {"role": "assistant", "content": assistant_content}
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: pycoze
3
- Version: 0.1.362
3
+ Version: 0.1.364
4
4
  Summary: Package for pycoze only!
5
5
  Author: Yuan Jie Xiong
6
6
  Author-email: aiqqqqqqq@qq.com
@@ -12,8 +12,8 @@ pycoze/api/lib/view.py,sha256=_PIpTfeuTPPlMDKshMGsqFQYMq7ZiO4Hg5XwHwDoU60,7357
12
12
  pycoze/api/lib/web.py,sha256=GWgtiTJOolKOX2drXcwuyqTcbo5FQVxa1NuBGcNyjyc,223
13
13
  pycoze/api/lib/window.py,sha256=bTkQCzQZ7i3pYXB70bUSTBNJ9C4TW_X3yMae1VkquGk,1944
14
14
  pycoze/bot/__init__.py,sha256=rL3Q-ycczRpSFfKn84fg3QBl5k22WpyeIU5qOEjEby8,79
15
- pycoze/bot/chat.py,sha256=u1pk411ztzUrY2xIWc67WyPXYTrEFDN-ciij0AqdP24,4334
16
- pycoze/bot/chat_base.py,sha256=myh9QrGJIkbFwfV1mLxQ0a-q8uwg3UmpdiT8XXsMIJ0,9750
15
+ pycoze/bot/chat.py,sha256=KyUtEdRzEsSMybMA_vLmE59Nga68edzZzcEpU2P9U5U,5004
16
+ pycoze/bot/chat_base.py,sha256=KbXDUI-JKPsljHTVP7M7ktcpu3yuTEnIa6xEhlAlPOA,9741
17
17
  pycoze/bot/lib.py,sha256=smigeWuhl8esHE-Y5l_9bpjJkEJ5OqrxTyPcO8JIubM,7224
18
18
  pycoze/bot/message.py,sha256=udnIi-h4QgGzkbr_5VcAsVGjoLp9wXJSfBCeuOz7_Bk,802
19
19
  pycoze/bot/prompt.md,sha256=OBxwUY6yiwEmusnUHhwixWYByrWX3BpwfxG_Gfas8UM,15783
@@ -33,8 +33,8 @@ pycoze/utils/arg.py,sha256=jop1tBfe5hYkHW1NSpCeaZBEznkgguBscj_7M2dWfrs,503
33
33
  pycoze/utils/env.py,sha256=5pWlXfM1F5ZU9hhv1rHlDEanjEW5wf0nbyez9bNRqqA,559
34
34
  pycoze/utils/socket.py,sha256=bZbFFRH4mfThzRqt55BAAGQ6eICx_ja4x8UGGrUdAm8,2428
35
35
  pycoze/utils/text_or_file.py,sha256=gpxZVWt2DW6YiEg_MnMuwg36VNf3TX383QD_1oZNB0Y,551
36
- pycoze-0.1.362.dist-info/LICENSE,sha256=QStd_Qsd0-kAam_-sOesCIp_uKrGWeoKwt9M49NVkNU,1090
37
- pycoze-0.1.362.dist-info/METADATA,sha256=VdVK0aX_rZ-_jwXJPNBcsyq8j9c3D9Dyn8tchxJ8LJ0,854
38
- pycoze-0.1.362.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
39
- pycoze-0.1.362.dist-info/top_level.txt,sha256=76dPeDhKvOCleL3ZC5gl1-y4vdS1tT_U1hxWVAn7sFo,7
40
- pycoze-0.1.362.dist-info/RECORD,,
36
+ pycoze-0.1.364.dist-info/LICENSE,sha256=QStd_Qsd0-kAam_-sOesCIp_uKrGWeoKwt9M49NVkNU,1090
37
+ pycoze-0.1.364.dist-info/METADATA,sha256=Kxw7a8wpW9OhIAIKoKhYltSfzwL2NAO5ol8Cke8tS1g,854
38
+ pycoze-0.1.364.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
39
+ pycoze-0.1.364.dist-info/top_level.txt,sha256=76dPeDhKvOCleL3ZC5gl1-y4vdS1tT_U1hxWVAn7sFo,7
40
+ pycoze-0.1.364.dist-info/RECORD,,