quantalogic 0.2.3__tar.gz → 0.2.5__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.
- {quantalogic-0.2.3 → quantalogic-0.2.5}/PKG-INFO +1 -1
- {quantalogic-0.2.3 → quantalogic-0.2.5}/pyproject.toml +1 -1
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/agent.py +11 -8
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/version.py +1 -1
- {quantalogic-0.2.3 → quantalogic-0.2.5}/LICENSE +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/README.md +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/__init__.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/agent_config.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/coding_agent.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/event_emitter.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/generative_model.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/interactive_text_editor.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/main.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/memory.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/model_names.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/print_event.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/prompts.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/server/__init__.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/server/agent_server.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/server/models.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/server/routes.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/server/state.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/server/static/js/event_visualizer.js +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/server/static/js/quantalogic.js +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/server/templates/index.html +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tool_manager.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/__init__.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/agent_tool.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/download_http_file_tool.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/edit_whole_content_tool.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/elixir_tool.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/execute_bash_command_tool.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/input_question_tool.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/language_handlers/__init__.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/language_handlers/c_handler.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/language_handlers/cpp_handler.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/language_handlers/go_handler.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/language_handlers/java_handler.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/language_handlers/javascript_handler.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/language_handlers/python_handler.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/language_handlers/rust_handler.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/language_handlers/scala_handler.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/language_handlers/typescript_handler.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/list_directory_tool.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/llm_tool.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/markitdown_tool.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/nodejs_tool.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/python_tool.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/read_file_block_tool.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/read_file_tool.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/replace_in_file_tool.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/ripgrep_tool.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/search_definition_names.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/task_complete_tool.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/tool.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/unified_diff_tool.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/write_file_tool.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/utils/__init__.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/utils/ask_user_validation.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/utils/download_http_file.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/utils/get_coding_environment.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/utils/get_environment.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/utils/get_quantalogic_rules_content.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/utils/git_ls.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/utils/read_file.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/utils/read_http_text_content.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/xml_parser.py +0 -0
- {quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/xml_tool_parser.py +0 -0
@@ -21,12 +21,6 @@ from quantalogic.utils.ask_user_validation import console_ask_for_user_validatio
|
|
21
21
|
from quantalogic.xml_parser import ToleranceXMLParser
|
22
22
|
from quantalogic.xml_tool_parser import ToolParser
|
23
23
|
|
24
|
-
# Configure logger based on environment variable
|
25
|
-
log_level = os.getenv("LOG_LEVEL", "ERROR")
|
26
|
-
logger.remove()
|
27
|
-
logger.add(sys.stderr, level=log_level)
|
28
|
-
|
29
|
-
|
30
24
|
# Maximum ratio occupancy of the occupied memory
|
31
25
|
MAX_OCCUPANCY = 90.0
|
32
26
|
|
@@ -81,7 +75,7 @@ class Agent(BaseModel):
|
|
81
75
|
|
82
76
|
def __init__(
|
83
77
|
self,
|
84
|
-
model_name: str = "
|
78
|
+
model_name: str = "",
|
85
79
|
memory: AgentMemory = AgentMemory(),
|
86
80
|
tools: list[Tool] = [TaskCompleteTool()],
|
87
81
|
ask_for_user_validation: Callable[[str], bool] = console_ask_for_user_validation,
|
@@ -91,17 +85,21 @@ class Agent(BaseModel):
|
|
91
85
|
):
|
92
86
|
"""Initialize the agent with model, memory, tools, and configurations."""
|
93
87
|
try:
|
88
|
+
logger.debug("Initializing agent...")
|
94
89
|
# Add TaskCompleteTool to the tools list if not already present
|
95
90
|
if TaskCompleteTool() not in tools:
|
96
91
|
tools.append(TaskCompleteTool())
|
97
92
|
|
98
93
|
tool_manager = ToolManager(tools={tool.name: tool for tool in tools})
|
99
94
|
environment = get_environment()
|
95
|
+
logger.debug(f"Environment details: {environment}")
|
100
96
|
tools_markdown = tool_manager.to_markdown()
|
97
|
+
logger.debug(f"Tools Markdown: {tools_markdown}")
|
101
98
|
|
102
99
|
system_prompt_text = system_prompt(
|
103
100
|
tools=tools_markdown, environment=environment, expertise=specific_expertise
|
104
101
|
)
|
102
|
+
logger.debug(f"System prompt: {system_prompt_text}")
|
105
103
|
|
106
104
|
config = AgentConfig(
|
107
105
|
environment_details=environment,
|
@@ -109,6 +107,7 @@ class Agent(BaseModel):
|
|
109
107
|
system_prompt=system_prompt_text,
|
110
108
|
)
|
111
109
|
|
110
|
+
logger.debug("Base class init started ...")
|
112
111
|
super().__init__(
|
113
112
|
model=GenerativeModel(model=model_name),
|
114
113
|
memory=memory,
|
@@ -119,7 +118,7 @@ class Agent(BaseModel):
|
|
119
118
|
task_to_solve=task_to_solve,
|
120
119
|
specific_expertise=specific_expertise,
|
121
120
|
)
|
122
|
-
logger.
|
121
|
+
logger.debug("Agent initialized successfully.")
|
123
122
|
except Exception as e:
|
124
123
|
logger.error(f"Failed to initialize agent: {str(e)}")
|
125
124
|
raise
|
@@ -135,6 +134,7 @@ class Agent(BaseModel):
|
|
135
134
|
Returns:
|
136
135
|
str: The final response after task completion.
|
137
136
|
"""
|
137
|
+
logger.debug(f"Solving task... {task}")
|
138
138
|
self._reset_session(task_to_solve=task, max_iterations=max_iterations)
|
139
139
|
|
140
140
|
# Add system prompt to memory
|
@@ -215,10 +215,13 @@ class Agent(BaseModel):
|
|
215
215
|
# Emit event: Task Solve End
|
216
216
|
self._emit_event("task_solve_end")
|
217
217
|
|
218
|
+
logger.debug(f"Task solved: {answer}")
|
219
|
+
|
218
220
|
return answer
|
219
221
|
|
220
222
|
def _reset_session(self, task_to_solve: str = "", max_iterations: int = 30):
|
221
223
|
"""Reset the agent's session."""
|
224
|
+
logger.debug("Resetting session...")
|
222
225
|
self.task_to_solve = task_to_solve
|
223
226
|
self.memory.reset()
|
224
227
|
self.variable_store.reset()
|
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
|
{quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/language_handlers/javascript_handler.py
RENAMED
File without changes
|
{quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/language_handlers/python_handler.py
RENAMED
File without changes
|
File without changes
|
{quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/language_handlers/scala_handler.py
RENAMED
File without changes
|
{quantalogic-0.2.3 → quantalogic-0.2.5}/quantalogic/tools/language_handlers/typescript_handler.py
RENAMED
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
|