New web interface, move llm engine to separate process
This commit is contained in:
@@ -8,7 +8,6 @@ from sia.web_io_buffer import WebIOBuffer
|
||||
from sia.working_memory import WorkingMemory
|
||||
from sia.system_metrics import SystemMetrics
|
||||
from sia.llm_engine import LlmEngine
|
||||
from sia.xml_validator import XMLValidator
|
||||
from sia.response_parser import ResponseParser
|
||||
from sia.base_agent import BaseAgent
|
||||
from sia.command import Command
|
||||
@@ -57,7 +56,6 @@ class BaseAgentTest(unittest.TestCase):
|
||||
self.mock_llm = Mock(spec=LlmEngine)
|
||||
self.mock_llm.token_count.return_value = 100
|
||||
self.mock_llm.token_limit.return_value = 1000
|
||||
self.mock_validator = Mock(spec=XMLValidator)
|
||||
self.io_buffer = WebIOBuffer()
|
||||
self.working_memory = WorkingMemory()
|
||||
self.work_dir = Path("/tmp") # Use a temp directory for tests
|
||||
@@ -79,7 +77,6 @@ class BaseAgentTest(unittest.TestCase):
|
||||
action_schema="test schema",
|
||||
working_memory=self.working_memory,
|
||||
metrics=self.mock_metrics,
|
||||
validator=self.mock_validator,
|
||||
parser=self.parser
|
||||
)
|
||||
|
||||
@@ -100,7 +97,6 @@ class BaseAgentTest(unittest.TestCase):
|
||||
"""Test agent initialization and component setup."""
|
||||
self.assertEqual(self.agent._working_memory, self.working_memory)
|
||||
self.assertEqual(self.agent._metrics, self.mock_metrics)
|
||||
self.assertEqual(self.agent._validator, self.mock_validator)
|
||||
self.assertEqual(self.agent._parser, self.parser)
|
||||
self.assertEqual(self.agent._action_schema, "test schema")
|
||||
|
||||
@@ -114,20 +110,19 @@ class BaseAgentTest(unittest.TestCase):
|
||||
context = self.agent._compile_context(self.mock_llm)
|
||||
|
||||
# Parse context and verify structure
|
||||
root = ET.fromstring(context)
|
||||
self.assertEqual(root.tag, "context")
|
||||
self.assertEqual(context.tag, "context")
|
||||
|
||||
# Check metrics
|
||||
self.assertEqual(root.get("memory_used"), "1000")
|
||||
self.assertEqual(root.get("memory_total"), "2000")
|
||||
self.assertEqual(root.get("disk_used"), "5000")
|
||||
self.assertEqual(root.get("disk_total"), "10000")
|
||||
self.assertEqual(context.get("memory_used"), "1000")
|
||||
self.assertEqual(context.get("memory_total"), "2000")
|
||||
self.assertEqual(context.get("disk_used"), "5000")
|
||||
self.assertEqual(context.get("disk_total"), "10000")
|
||||
|
||||
# Check context size
|
||||
self.assertEqual(root.get("context"), "10.0%")
|
||||
self.assertEqual(context.get("context"), "10.0%")
|
||||
|
||||
# Check no memory entries
|
||||
self.assertEqual(len(list(root)), 0)
|
||||
self.assertEqual(len(list(context)), 0)
|
||||
|
||||
def test_compile_context_with_entries(self):
|
||||
"""Test context compilation with a single entry."""
|
||||
@@ -135,13 +130,12 @@ class BaseAgentTest(unittest.TestCase):
|
||||
self.agent._working_memory.add_entry(entry)
|
||||
|
||||
context = self.agent._compile_context(self.mock_llm)
|
||||
root = ET.fromstring(context)
|
||||
|
||||
# Check context size reflects one entry
|
||||
self.assertEqual(root.get("context"), "10.0%")
|
||||
self.assertEqual(context.get("context"), "10.0%")
|
||||
|
||||
# Verify entry content
|
||||
reasoning_elem = root.find("reasoning")
|
||||
reasoning_elem = context.find("reasoning")
|
||||
self.assertIsNotNone(reasoning_elem)
|
||||
self.assertEqual(reasoning_elem.get("id"), "test-id")
|
||||
self.assertEqual(reasoning_elem.text.strip(), "test reasoning")
|
||||
@@ -157,13 +151,12 @@ class BaseAgentTest(unittest.TestCase):
|
||||
self.agent._working_memory.add_entry(entry)
|
||||
|
||||
context = self.agent._compile_context(self.mock_llm)
|
||||
root = ET.fromstring(context)
|
||||
|
||||
# Check context size reflects three entries
|
||||
self.assertEqual(root.get("context"), "10.0%")
|
||||
self.assertEqual(context.get("context"), "10.0%")
|
||||
|
||||
# Verify entry order maintained
|
||||
reasoning_elems = root.findall("reasoning")
|
||||
reasoning_elems = context.findall("reasoning")
|
||||
self.assertEqual(len(reasoning_elems), 3)
|
||||
for i, elem in enumerate(reasoning_elems):
|
||||
self.assertEqual(elem.get("id"), f"id-{i}")
|
||||
|
||||
Reference in New Issue
Block a user