From a43e5111dbf5a111a6adf639cdbb8b3e8f578267 Mon Sep 17 00:00:00 2001 From: Storm Date: Tue, 28 Oct 2025 13:28:42 +0100 Subject: [PATCH] fix: quick first fix in preparation of merge ref: N25B-208 --- .../bdi/behaviours/text_belief_extractor.py | 19 +++++++++++++++++-- src/control_backend/agents/bdi/test_agent.py | 3 +-- src/control_backend/main.py | 6 +++--- 3 files changed, 21 insertions(+), 7 deletions(-) diff --git a/src/control_backend/agents/bdi/behaviours/text_belief_extractor.py b/src/control_backend/agents/bdi/behaviours/text_belief_extractor.py index c73a42e..89df3ca 100644 --- a/src/control_backend/agents/bdi/behaviours/text_belief_extractor.py +++ b/src/control_backend/agents/bdi/behaviours/text_belief_extractor.py @@ -43,7 +43,7 @@ class BeliefFromText(CyclicBehaviour): # TODO: Change to Transcriber agent name once implemented case settings.agent_settings.test_agent_name: self.logger.info("Received text from transcriber.") - await self._process_transcription(msg.body) + await self._process_transcription_demo(msg.body) case _: self.logger.info("Received message from other agent.") pass @@ -73,4 +73,19 @@ class BeliefFromText(CyclicBehaviour): self.logger.info("Sent beliefs to BDI.") except: #loading failed so the response is in wrong format, throw warning (let LLM respond to ask again?) - self.logger.warning("Received LLM response in incorrect format.") \ No newline at end of file + self.logger.warning("Received LLM response in incorrect format.") + + async def _process_transcription_demo(self, txt: str): + """ + Demo version to process the transcription input to beliefs. For the demo only the belief 'user_said' is relevant so + this function simply makes a dict with key: "user_said", value: txt and passes this to the Belief Collector agent. + """ + belief = {"user_said": [[txt]]} + payload = json.dumps(belief) + # TODO: Change to belief collector + belief_msg = Message(to=settings.agent_settings.bdi_core_agent_name + '@' + settings.agent_settings.host, body=payload) + belief_msg.thread = "beliefs" + + await self.send(belief_msg) + self.logger.info("Sent beliefs to Belief Collector.") + \ No newline at end of file diff --git a/src/control_backend/agents/bdi/test_agent.py b/src/control_backend/agents/bdi/test_agent.py index eea2065..2fd7485 100644 --- a/src/control_backend/agents/bdi/test_agent.py +++ b/src/control_backend/agents/bdi/test_agent.py @@ -2,8 +2,7 @@ import spade from spade.agent import Agent from spade.behaviour import OneShotBehaviour from spade.message import Message -from spade.template import Template -from control_backend.core.config import AgentSettings, settings +from control_backend.core.config import settings class SenderAgent(Agent): class InformBehav(OneShotBehaviour): diff --git a/src/control_backend/main.py b/src/control_backend/main.py index 10b4081..513f747 100644 --- a/src/control_backend/main.py +++ b/src/control_backend/main.py @@ -34,11 +34,11 @@ async def lifespan(app: FastAPI): logger.info("Internal publishing socket bound to %s", internal_comm_socket) # Initiate agents - bdi_core = BDICoreAgent(settings.agent_settings.bdi_core_agent_name + '@' + settings.agent_settings.host, "pohpu7-huqsyH-qutduk", "src/control_backend/agents/bdi/rules.asl") + bdi_core = BDICoreAgent(settings.agent_settings.bdi_core_agent_name + '@' + settings.agent_settings.host, "placeholder", "src/control_backend/agents/bdi/rules.asl") await bdi_core.start() - text_belief_extractor = TBeliefExtractor(settings.agent_settings.text_belief_extractor_agent_name + '@' + settings.agent_settings.host, "pohpu7-huqsyH-qutduk") + text_belief_extractor = TBeliefExtractor(settings.agent_settings.belief_collector_agent_name + '@' + settings.agent_settings.host, "placehodler") await text_belief_extractor.start() - test_agent = SenderAgent(settings.agent_settings.test_agent_name + '@' + settings.agent_settings.host, "pohpu7-huqsyH-qutduk") + test_agent = SenderAgent(settings.agent_settings.test_agent_name + '@' + settings.agent_settings.host, "placeholder") await test_agent.start() yield