jarvis-ai-assistant 0.1.19__tar.gz → 0.1.22__tar.gz
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.
Potentially problematic release.
This version of jarvis-ai-assistant might be problematic. Click here for more details.
- {jarvis_ai_assistant-0.1.19/src/jarvis_ai_assistant.egg-info → jarvis_ai_assistant-0.1.22}/PKG-INFO +1 -1
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/pyproject.toml +1 -1
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/setup.py +1 -1
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/__init__.py +1 -1
- jarvis_ai_assistant-0.1.22/src/jarvis/__pycache__/__init__.cpython-313.pyc +0 -0
- jarvis_ai_assistant-0.1.22/src/jarvis/__pycache__/agent.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/agent.py +20 -3
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/tools/__pycache__/base.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/tools/__pycache__/generator.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/tools/base.py +1 -1
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/tools/generator.py +1 -1
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22/src/jarvis_ai_assistant.egg-info}/PKG-INFO +1 -1
- jarvis_ai_assistant-0.1.19/src/jarvis/__pycache__/__init__.cpython-313.pyc +0 -0
- jarvis_ai_assistant-0.1.19/src/jarvis/__pycache__/agent.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/LICENSE +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/MANIFEST.in +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/README.md +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/setup.cfg +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/__pycache__/main.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/__pycache__/models.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/__pycache__/tools.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/__pycache__/utils.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/__pycache__/zte_llm.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/main.py +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/models/__init__.py +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/models/__pycache__/__init__.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/models/__pycache__/base.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/models/__pycache__/kimi.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/models/base.py +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/models/kimi.py +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/tools/__init__.py +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/tools/__pycache__/__init__.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/tools/__pycache__/bing_search.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/tools/__pycache__/calculator.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/tools/__pycache__/calculator_tool.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/tools/__pycache__/file_ops.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/tools/__pycache__/python_script.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/tools/__pycache__/rag.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/tools/__pycache__/search.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/tools/__pycache__/shell.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/tools/__pycache__/sub_agent.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/tools/__pycache__/user_confirmation.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/tools/__pycache__/user_input.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/tools/__pycache__/user_interaction.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/tools/__pycache__/webpage.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/tools/file_ops.py +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/tools/shell.py +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis/utils.py +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis_ai_assistant.egg-info/SOURCES.txt +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis_ai_assistant.egg-info/dependency_links.txt +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis_ai_assistant.egg-info/entry_points.txt +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis_ai_assistant.egg-info/requires.txt +0 -0
- {jarvis_ai_assistant-0.1.19 → jarvis_ai_assistant-0.1.22}/src/jarvis_ai_assistant.egg-info/top_level.txt +0 -0
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "jarvis-ai-assistant"
|
|
7
|
-
version = "0.1.
|
|
7
|
+
version = "0.1.22"
|
|
8
8
|
description = "Jarvis: An AI assistant that uses tools to interact with the system"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
authors = [{ name = "Your Name", email = "your.email@example.com" }]
|
|
@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
|
|
|
2
2
|
|
|
3
3
|
setup(
|
|
4
4
|
name="jarvis-ai-assistant",
|
|
5
|
-
version="0.1.
|
|
5
|
+
version="0.1.22",
|
|
6
6
|
author="skyfire",
|
|
7
7
|
author_email="skyfireitdiy@hotmail.com",
|
|
8
8
|
description="An AI assistant that uses various tools to interact with the system",
|
|
Binary file
|
|
@@ -11,7 +11,7 @@ import os
|
|
|
11
11
|
from datetime import datetime
|
|
12
12
|
|
|
13
13
|
class Agent:
|
|
14
|
-
def __init__(self, model: BaseModel, tool_registry: ToolRegistry, name: str = "Jarvis"):
|
|
14
|
+
def __init__(self, model: BaseModel, tool_registry: ToolRegistry, name: str = "Jarvis", is_sub_agent: bool = False):
|
|
15
15
|
"""Initialize Agent with a model, optional tool registry and name
|
|
16
16
|
|
|
17
17
|
Args:
|
|
@@ -23,6 +23,7 @@ class Agent:
|
|
|
23
23
|
self.model = model
|
|
24
24
|
self.tool_registry = tool_registry or ToolRegistry(model)
|
|
25
25
|
self.name = name
|
|
26
|
+
self.is_sub_agent = is_sub_agent
|
|
26
27
|
self.prompt = ""
|
|
27
28
|
|
|
28
29
|
|
|
@@ -77,7 +78,7 @@ class Agent:
|
|
|
77
78
|
except Exception as e:
|
|
78
79
|
raise Exception(f"{self.name}: 模型调用失败: {str(e)}")
|
|
79
80
|
|
|
80
|
-
def run(self, user_input: str, file_list: Optional[List[str]] = None, keep_history: bool = False):
|
|
81
|
+
def run(self, user_input: str, file_list: Optional[List[str]] = None, keep_history: bool = False) -> str:
|
|
81
82
|
"""处理用户输入并返回响应,返回任务总结报告
|
|
82
83
|
|
|
83
84
|
Args:
|
|
@@ -203,7 +204,23 @@ arguments:
|
|
|
203
204
|
|
|
204
205
|
if not user_input:
|
|
205
206
|
PrettyOutput.section("任务完成", OutputType.SUCCESS)
|
|
206
|
-
|
|
207
|
+
if self.is_sub_agent:
|
|
208
|
+
# 生成任务总结
|
|
209
|
+
summary_prompt = f"""请对以上任务执行情况生成一个简洁的总结报告,包括:
|
|
210
|
+
|
|
211
|
+
1. 任务目标: xxxx
|
|
212
|
+
2. 执行结果: 成功/失败
|
|
213
|
+
3. 关键信息: 提取执行过程中的重要信息
|
|
214
|
+
4. 重要发现: 任何值得注意的发现
|
|
215
|
+
5. 后续建议: 如果有的话
|
|
216
|
+
|
|
217
|
+
请用简洁的要点形式描述,突出重要信息。
|
|
218
|
+
"""
|
|
219
|
+
self.prompt = summary_prompt
|
|
220
|
+
summary = self.model.chat(self.prompt)
|
|
221
|
+
return summary
|
|
222
|
+
else:
|
|
223
|
+
return "Task completed"
|
|
207
224
|
|
|
208
225
|
except Exception as e:
|
|
209
226
|
PrettyOutput.print(str(e), OutputType.ERROR)
|
|
Binary file
|
|
Binary file
|
|
@@ -115,7 +115,7 @@ class ToolRegistry:
|
|
|
115
115
|
parameters=tool_instance.parameters,
|
|
116
116
|
func=tool_instance.execute
|
|
117
117
|
)
|
|
118
|
-
self.output_handler.print(f"已加载工具: {tool_instance.name}", OutputType.INFO)
|
|
118
|
+
self.output_handler.print(f"已加载工具: {tool_instance.name}: {tool_instance.description}", OutputType.INFO)
|
|
119
119
|
tool_found = True
|
|
120
120
|
|
|
121
121
|
if not tool_found:
|
|
Binary file
|
|
Binary file
|
|
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
|
|
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
|