Feat: Implement belief collector
[
- Currently implements belief collection from text-based mock agent.
- The beliefs communicated by this agent look like this:
{
"type": "belief_extraction_text",
"beliefs": [
{"user_said": [["hello"],["Can you help me?"],["stop talking to me"],["No"],["Pepper do a dance"]]}
]
}
* have yet to add tests (but we want to merge into Dev. asap)
]
[ref]: N25B-206
This commit is contained in:
31
src/control_backend/agents/mock_agents/belief_text_mock.py
Normal file
31
src/control_backend/agents/mock_agents/belief_text_mock.py
Normal file
@@ -0,0 +1,31 @@
|
||||
import json
|
||||
from spade.agent import Agent
|
||||
from spade.behaviour import OneShotBehaviour
|
||||
from spade.message import Message
|
||||
from control_backend.core.config import settings
|
||||
|
||||
class BeliefTextAgent(Agent):
|
||||
class SendOnceBehaviourBlfText(OneShotBehaviour):
|
||||
async def run(self):
|
||||
to_jid = f"{settings.agent_settings.belief_collector_agent_name}@{settings.agent_settings.host}"
|
||||
|
||||
# Send multiple beliefs in one JSON payload
|
||||
payload = {
|
||||
"type": "belief_extraction_text",
|
||||
"beliefs": [
|
||||
{"user_said": [["hello"],["Can you help me?"],["stop talking to me"],["No"],["Pepper do a dance"]]}
|
||||
]
|
||||
}
|
||||
|
||||
msg = Message(to=to_jid)
|
||||
msg.body = json.dumps(payload)
|
||||
await self.send(msg)
|
||||
print(f"Beliefs sent to {to_jid}!")
|
||||
|
||||
self.exit_code = "Job Finished!"
|
||||
await self.agent.stop()
|
||||
|
||||
async def setup(self):
|
||||
print("BeliefTextAgent started")
|
||||
self.b = self.SendOnceBehaviourBlfText()
|
||||
self.add_behaviour(self.b)
|
||||
Reference in New Issue
Block a user